【问题标题】:Java printing existing pdf with right scalingJava以正确的比例打印现有的pdf
【发布时间】:2016-02-24 10:55:10
【问题描述】:

我正在尝试打印现有的 PDF。

我已经试过了:java pdfbox printerjob wrong scaling / page format

PDFBox 不适合我,因为我无法正确缩放我的 PDF。 Scaling.SHRINK_TO_FIT 几乎可以工作,但它缺少大约 5 毫米,我无法添加它们,因为 paper.setImageableArea 正在重置它。

我还尝试使用new Paper(); 有自己的边距而不使用setSize,因为我无法获得 DIN A4 纸的尺寸。边距的问题是,如果我得到正确的顶部和左侧尺寸,然后尝试设置高度和宽度,那么它会破坏顶部和左侧位置。

现在我正在寻找一种没有 PDFBox 的免费且简单的解决方案来打印 pdf 文件而不损失质量和缩放。

【问题讨论】:

  • 您是否尝试将其发送到打印机:Desktop.getDesktop().print(...)?
  • 不,但我现在尝试了:Desktop.getDesktop().print(new File(pdfName));,我得到了这个异常:java.io.IOException: Failed to print C:\Users\test.test\PDF.pdf. Error message: Der angegebenen Datei ist keine Anwendung zugeordnet.。它是德文的,翻译过来是:提供的文件没有分配给应用程序
  • 您至少需要安装一个PDF阅读器应用程序。
  • 我有 Acrobad Reader DC,但我使用 Firefox 进行查看和打印。

标签: java pdf printing scaling


【解决方案1】:

这有点傻,但这里已经是解决方案了:https://stackoverflow.com/a/35483083/4888475

我的打印页面与 Acrobat 软件的打印页面相同,而不是 Firefox。

【讨论】:

    猜你喜欢
    • 2015-08-04
    • 2020-02-20
    • 2017-10-28
    • 2018-11-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-10
    相关资源
    最近更新 更多