我无法弄清楚如何使用 iText 将外部图像(由 URL 引用)添加到 PDF。这种事情可能吗?
7.1.5 中的 PDF 规范表示您应该能够使用 URL 规范通过 URL 引用 PDF。这是我到目前为止所得到的:
PdfFileSpecification pdfSpec =
PdfFileSpecification.url(writer, "http://www.someurl.com/test.jpg");
StringBufferInputStream sbis = new StringBufferInputStream("");
PdfStream dict = new PdfStream(sbis, writer);
dict.put(PdfName.FILTER, PdfName.DCTDECODE)
dict.put(PdfName.TYPE, PdfName.XOBJECT);
dict.put(PdfName.SUBTYPE, PdfName.IMAGE);
dict.put(PdfName.WIDTH, new PdfNumber(100));
dict.put(PdfName.HEIGHT, new PdfNumber(100));
dict.put(PdfName.BITSPERCOMPONENT, new PdfNumber(8));
dict.put(PdfName.LENGTH, new PdfNumber(0));
dict.put(PdfName.F, pdfSpec);
PdfIndirectObject img = writer.addToBody(dict);
我知道我仍然需要确保添加颜色空间之类的东西,但我现在主要关心的是实际上将此图像放入文档正文中。我不知道如何做到这一点...似乎我无法获得对 PdfPage 或资源字典或任何内容的引用。使用 iText 可以吗?
附带说明一下,如果当视图尝试加载图像时我会收到安全警告,那么这个练习就没用了。有谁知道情况是否如此?
PDF 规范中描述了外部内容,但几乎没有 PDF 处理器真正支持它们。到目前为止,Acrobat 9 已支持它,但我对此功能非常谨慎:您的客户或用户可能无法看到引用的内容。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)