【发布时间】:2016-06-08 04:20:04
【问题描述】:
我正在使用 iText 和 Java 来创建 PDF 文件。我试图在左边放置一个段落,并在右边浮动一个图像(例如,彼此相邻)。使用下面的代码确实会插入图片,但也会让整个页面的文字模糊(其他页面都可以)。
// add image
Image img = Image.getInstance(imgPath);
img.setAlignment(Image.RIGHT | Image.TEXTWRAP);
img.scaleToFit(1000, 72f); // 1" height
//img.setSpacingBefore(0f); // does not have any effect
document.add(img);
// add text
Paragraph par = new Paragraph("some text here", styleBody);
par.setSpacingBefore(20f);
document.add(par);
如果我删除代码的图像部分,文本看起来很干净。这是我第一次尝试在文本旁边添加图像。一定是在做一些明显错误的事情。知道是什么原因造成的吗?
【问题讨论】:
-
我没有投反对票,但如果我不得不猜测,我会说这是因为您描述的问题无法重现。我从未见过这种行为。我不知道您使用的是哪个版本的 iText。我不知道您使用的是哪个 PDF 查看器。也许问题是特定于一个特定的观众。使用 Adobe Reader 时也会出现这种情况吗?也许这是一个查看器设置(类似于“降级打印”)。在当前状态下,您的问题无法回答。也许反对票是为了告诉你(但解释反对票的评论会很好)。
-
谢谢@BrunoLowagie。我正在使用 Adobe Acrobat X Pro。我唯一改变的是注释掉上面代码的
//add image部分。当被注释掉时,页面看起来很好,当它出现时,页面上的所有文本都是模糊的。但是,如果我将 PDF 打印在纸上,打印出来的文本就可以了。从您的回复来看,至少显示的代码并不明显,所以这会有所帮助。我会看看我是否可以通过其他方式找到解决方法。 -
提供一个SSCCE,以便其他人可以复制它。给我们一个没有任何外部依赖的独立示例(iText 除外)并共享图像。 (它是否有可能是 WMF 文件?)只有当我们能够重现该示例的问题时,我们才能开始寻找罪魁祸首。现在,我们没有什么可处理的了。我们有数千个示例,我们在其中添加了未显示您描述的行为的图像。我们目前可以给您的唯一有效答案是“它对我们有用。”
-
明白,我认为这是我正在做的事情,而不是框架。该图像是一个 png 文件。