问题描述
我想使用itext 7调整pdf文件中图像的大小。但是,当我迭代所有XObjects时,无法获得背景图像。 我的实现代码如下。
def getAllImages(xObjects: PdfDictionary):ListBuffer[PdfName] = {
var list=ListBuffer[PdfName]()
xObjects.entrySet().forEach(obj=>if(obj.getValue.isstream) {
val stream=xObjects.getAsstream(obj.getKey)
val subtype=stream.get(PdfName.Subtype)
if(subtype.toString.equals("/Image")){
list += obj.getKey
}else if(subtype.toString.equals("/Form")){
getAllImages(obj.getValue.asInstanceOf[PdfDictionary])
}
})
list
}
def removeWaterMarker(pdf: File,pdfnew: File,bfimgs: Array[BufferedImage]): Unit = {
val pdfDoc: PdfDocument = new PdfDocument(new PdfReader(pdf),new PdfWriter(pdfnew))
for( i<- 1 to pdfDoc.getNumberOfPages){
val page=pdfDoc.getPage(i)
val pageDict: PdfDictionary = page.getPdfObject
val resources: PdfDictionary = pageDict.getAsDictionary(PdfName.Resources)
val xObjects: PdfDictionary = resources.getAsDictionary(PdfName.XObject)
val images=getAllImages(xObjects)
resize(images)
}
有什么问题吗?如何使用itext 7迭代pdf文件中的所有图像?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)