Apache-FOP - 减少嵌入到PDF中的图像大小

时间:2013-04-03 11:56:16

标签: jpeg image-resizing xsl-fo apache-fop

我有很多JPG图像应该嵌入到生成的PDF中。它们具有相当大的分辨率,每个大约5-10MB。我想将它们嵌入到PDF中作为预览,我正在使用适合规模的XSL-FO属性。 PDF中显示的图像正确调整大小,但生成的PDF的大小非常大,基本上是所有图像大小的总和。我很好奇在生成PDF之前,如何在不单独预处理图像的情况下减少PDF尺寸的最佳方法(可能的方法)是什么? (如果PDF大小与PDF中显示的一样小,那么PDF大小大约是所有图像大小的总和)

非常感谢!

2 个答案:

答案 0 :(得分:1)

您有两种选择:

  1. 后处理PDF。您可以在Acrobat中打开它并使用它保存 '减小文件大小'选项。

  2. 使用另一个FO格式化程序。例如Antennahouse格式化器可以 下采样图像。

答案 1 :(得分:-1)

我正在使用Apache FOP 1.1。 根据我的理解,您的要求是,您希望减小图像尺寸。

<fo:external-graphic 
     src="url('image path')" 
     content-height="2cm" 
     height="2cm"  
     content-width="2cm" 
     scaling="non-uniform" >
</fo:external-graphic>

这里重要的部分是缩放属性。 它可以有三个价值  1.uniform - 默认情况下,如果您没有指定  2.非均匀 - 它将根据内容宽度和内容高度得到。  3.inherit

对于您的要求,您应该将缩放定义为非均匀。这意味着它不会保持图像的纵横比。 谢谢

你可以参考 http://www.schemacentral.com/sc/fo11/e-fo_external-graphic.html

相关问题