当前位置: 首页 > 知识库问答 >
问题:

如何在Apache PDfBox中设置页面缩放选项

范彭亮
2023-03-14

在我的应用程序中,我使用ApachePDFBox来呈现PDF文件,并对其进行静默打印。

PDFBox可以很好地渲染PFD,但我面临着图片缩放的问题。在这里,我想在打印PDF之前设置页面缩放。

在acrobat reader的打印弹出窗口中,有四个用于打印PDF的选项。1.

在这里,我想将页面缩放设置为实际大小。我如何使用ApachePOI实现它??

共有1个答案

厉令
2023-03-14

我也有同样的问题,我觉得做这件简单的事太难了。尽管这并不理想,但我最终还是满足于以下几点——甚至不用PDFBox打印。

下面的代码将页面一次转换为一个图像,并使用java2d调整页面大小并打印出来。

PDDocument pdfdoc = PDDocument.load(pdfPane.pdfFile);
@SuppressWarnings("unchecked")
final List<PDPage> pdfPages = pdfdoc.getDocumentCatalog().getAllPages();

PrinterJob pjob = PrinterJob.getPrinterJob();
pjob.setJobName(pdfPane.pdfFile.getName());
pjob.setPrintable(new Printable()
{
  @Override
  public int print( Graphics g, PageFormat pf, int page ) throws PrinterException
  {
    if (page > pdfPages.size())
      return NO_SUCH_PAGE;
    try
    {
      g.drawImage(pdfPages.get(page).convertToImage()
                ,(int)pf.getImageableX()
                ,(int)pf.getImageableY()
                ,(int)pf.getImageableWidth()
                ,(int)pf.getImageableHeight()
                ,null);
    }
    catch (IOException e)
    {
      LoggerUtil.error(e);
    }
    return PAGE_EXISTS;
  }
});
pjob.print();
pdfdoc.close();
 类似资料:
  • 问题内容: IE浏览器忽略缩放设置不起作用,我的代码如下,为什么它不起作用?我收到了错误消息(selenium.common.exceptions.SessionNotCreatedException:消息:启动Internet Explorer时发生意外错误。浏览器缩放级别设置为125%。应将其设置为100%) 问题答案: 不 ,在使用 InternetExplorerDriver时, 您不应忽

  • 本文向大家介绍如何禁止手机端页面缩放?相关面试题,主要包含被问及如何禁止手机端页面缩放?时的应答技巧和注意事项,需要的朋友参考一下 document.documentElement.addEventListener('touchstart', function (event) { if (event.touches.length > 1) { event.preventDefault(); } }

  • 本文向大家介绍如何禁止web端的页面缩放?相关面试题,主要包含被问及如何禁止web端的页面缩放?时的应答技巧和注意事项,需要的朋友参考一下

  • 问题内容: 我正在尝试从SQS转移到RabbitMQ,以提供消息服务。我正在寻求建立稳定的高可用性排队服务。现在,我要使用集群。 在当前实现中 ,我有三台EC2机器,其中RabbitMQ的管理插件安装在AMI中,然后我明确地转到每台机器并添加 将HA属性设置为all并进行同步。在其上面的负载均衡器已分配了DNS。到目前为止,这件事有效。 预期的实现 :创建一个自动伸缩的集群环境,在该环境中,运行U

  • 嗨,我目前正试图在谷歌地图上显示多个点。除了缩放功能外,一切正常。我无法确定如何设置缩放以便显示所有点。如果点很近,代码显示得很好,但如果点很远,代码显示得不好。我到处搜索过,但找不到任何东西。 有什么帮助吗?

  • 我正在使用GWT2.5和GoogleMap Api3。 我有两种情况:1.我有地图的中心,上面有几个标记。2.任何一个县,上面有几个标记。 因此,地图应该适当缩放以适应标记。 有没有办法自动检测缩放级别?