java - PDF 中的可滚动图像

标签 java pdf velocity

寻找技巧/工具来实现这一目标(使用 PDF/Velocity 模板/Java):

我有一张尺寸较大 (4000 x 2000) 的图像,并且该图像在 PDF 中显然无法查看。我可以修改图像的大小以适合 PDF。

但是我想做的是查看PDF中图像的实际大小。我希望能够从左向右滚动图像。

如何在不破坏PDF设置的容器大小的情况下保持图像的真实大小?

最佳答案

这并不是一个基本的 PDF 功能,但假设用户拥有能够运行脚本的 PDF 查看器,则可以使用 PDF 中的一些嵌入脚本来实现。

现在,PDF 不应该用作可以滚动的动态文档。打印后在纸上效果如何?如果您想要可滚动的文档,那么您应该坚持使用 HTML。我强烈建议您不要尝试这样做。

但是,如果您仍然想走这条路,那么这里有一些建议:

  1. 正如我所说,您可以使用嵌入式 JavaScript 来完成此操作,但这取决于您生成 PDF 的方式:FOP、iText、另一个 PDF 编写器库,或者只是简单的 println 连接,因为很少有库支持嵌入 JavaScript。
  2. 您可以使图像适合页面,但保持其原始分辨率,这样您最终会得到一个用户可以放大和滚动的高分辨率页面。这样,您将滚动留给 PDF 查看器本身,您只需让用户知道图像具有更高的分辨率并且应该被放大。坦率地说,4000 像素并没有那么大,甚至不足以跟上当今标准打印机 DPI。

关于java - PDF 中的可滚动图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11973479/

相关文章:

java - 为什么当我们向输入字段输入内容时,PhantomJS 只输入最后一个字母?

java - 在 Java 中寻找 "chained map"实现

python - 如何使用 python-pdfkit 中的 from_string 生成带有非 ascii 字符的 PDF

java - 使用Intent打开本地PDF文件

java - 如何将字符串转换为整数以用于 Velocity 中的循环?

java - 如何模糊图像

java - 带有 EJB : No persistence provider 的 JPA

pdf - 如何在 iReport 中嵌入和显示 SVG 图像

java - 如何在使用 itextpdf 将 html 转换为 pdf 时使用 border-radius

java - 用于生成自定义 IntelliJ toString 方法的 Velocity 模板