【问题标题】:Create PDF file with default "zoom to page level" (pdfbox)创建具有默认“缩放到页面级别”的 PDF 文件 (pdfbox)
【发布时间】:2016-06-07 18:44:27
【问题描述】:

我使用 pdfbox 2.0 创建了一个 PDF 文件。当我在 Adob​​e 阅读器(Windows)中打开这个 pdf 文件时,默认情况下它以缩放 fit width 打开。

我需要用默认zoom to page level打开的pdf文件。

我的尝试:
将缩放级别设置为 100。

PDPageXYZDestination dest = new PDPageXYZDestination();    
dest.setPage(pagea);    
dest.setZoom(1);    
dest.setTop(new Float(PDRectangle.A4.getHeight()).intValue());    
PDActionGoTo action = new PDActionGoTo();    
action.setDestination(dest);    
document.getDocumentCatalog().setOpenAction(action); 

【问题讨论】:

  • PDPageFitDestination dest = new PDPageFitDestination(); 这将有助于将整个页面放在窗口中。我不确定 PDF 规范是否支持“缩放到页面级别”,我什至不明白它的含义。显然它显示了一整页和更多内容。
  • @TilmanHausherr 在“缩放到页面级别”pdf 页面根据 Windows 分辨率管理缩放。一次显示一整页...
  • 那么请尝试我评论中的代码行,并判断它是否满足您的需求......它替换了您代码的前 4 行。
  • 它正在工作...谢谢...

标签: java pdf pdf-generation pdfbox


【解决方案1】:

使用 PDPageFitDestination 而不是 PDPageXYZDestination - 所以你的代码现在看起来像这样:

PDPageFitDestination dest = new PDPageFitDestination();
PDActionGoTo action = new PDActionGoTo();    
action.setDestination(dest);    
document.getDocumentCatalog().setOpenAction(action);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-12-15
    • 2018-10-31
    • 1970-01-01
    • 2013-05-14
    • 2019-06-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多