我正在使用 PDFBox 库并创建 A4(8.5x11 英寸)页面尺寸。现在我有 2500x3300 尺寸的图像,我想将其写入 PDF 中。但pdf大小实际上是612 x 792,如何将300 DPI图像写入PDF?
如果我调整图像大小以适合 2500x3300 -> 612x792,则会降低质量。应该有一些方法可以将图像写入具有 300 DPI 的 pdf。
我正在使用 PDFBox,如果我遗漏了上述说明中的任何内容,请告诉我
更新的问题:
让我以其他方式解释这个问题,我想向用户提供自定义设置,以提供将图像绘制为 PDF 的图像的 DPI。我知道 PDFBox 可以将图像写入 PDF,但没有可用的 DPI 设置,我可以使用它来将图像写入 PDF(相对于 DPI)。目前我正在使用 PDFBox 并使用 PDPageContentStream.drawImage(img, , );但没有 DPI 参数可用于在 PDF 上写入图像。请告诉我使用 DPI 参数将图像绘制为 pdf 的方法。
谢谢
最佳答案
如果该过程不对图像进行下采样(像素数不变),那么您不会损失质量。如果 PDF 中图像的物理尺寸发生变化,分辨率可能会发生变化,但这不会降低质量;它只是看起来更小或更大。
如果您希望分辨率保持不变,则 PDF 中图像的物理尺寸如下:
图像宽度 = 2500/300 英寸 = 600 点; 图像高度 = 3300/300 英寸 = 792 点
你的A4纸:
页面宽度 = 8.5 英寸 = 612 点; 页面高度 = 11 英寸 = 792 点
这实际上是一个很好的选择。
添加 0、6 或 12 点的水平平移,以将图像水平向左、居中或右对齐。
---更新
将光栅图像转换为 PDF 时(或者更好:创建带有图像的 PDF 页面时),不应将 DPI 视为设置。 DPI 由光栅图像的像素行数和列数以及 PDF 页面上该图像的物理宽度和高度得出。如果您不触摸图像(我认为这是因为您不想降低质量),那么您必须选择物理宽度和高度,以便最终的 DPI 符合要求。 DPI = #像素/英寸。
关于image - 将图像 (300 DPI) 写入 PDF,而不损失质量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25284374/