Pdf文件添加水印覆盖问题


#1

你好,我采用为pdf添加textStamp的方式添加文字水印,但是如果调用setBackground(true)方法设置为背景的话,会被内容遮挡住从而看不到水印,反之如果不调用此方法,水印又会覆盖原内容,请问有没有什么方法解决此问题呢?比如设置透明度之类的?


#2

@Obey

感谢您与支持人员联系。

您可以使用setOpacity方法设置TextStamp的透明度,其中值可以是0到1。

我们希望这会有所帮助。 如果您需要任何进一步的帮助,请随时与我们联系。


#3

感谢解答!现在还有另外一个问题请教一下,不同内容的PDF(比如横版的PPT导出的PDF和文档生成的PDF)显示高度明明不同,但是通过page.getHeight()方法获取出来的高度却是相同,这将影响铺满水印效果,请问是何原因呢?或者请问是否有铺满水印的示例呢?


#4

@Obey

您可以使用以下代码获取页面尺寸:

Document document = new Document(dataDir + "YOUR_LOGO.pdf");
PdfFileInfo info = new PdfFileInfo(document);
System.out.println("Width: " + info.getPageWidth(document.getPages().get_Item(1).getNumber()));
System.out.println("Height: " + info.getPageHeight(document.getPages().get_Item(1).getNumber()));
//OR
System.out.println("Height: " + info.getPageHeight(1));

#5

非常感谢答疑!还有一个新的问题请教一下,通过page.addStamp()的方式给PDF文件添加水印,但是将PDF转换为html后,水印消失大概是什么原因呢?


#6

@Obey

您能否与我们分享您的示例PDF文档,您将面临上述问题。我们将在我们的环境中测试场景并相应地解决它。


#7

十分感谢帮助。我用官方的示例可以成功,应该是原转换工具版本较低导致。


#8

@Obey

感谢您的反馈。

我们很高兴知道您的问题已得到解决。 如果您需要任何进一步的帮助,请随时创建一个单独的主题。