题
我在弄清楚如何使用ITEXT添加外部图像(由URL引用)时遇到了麻烦。这是可能的吗?
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对此有所支持,但是我对该功能非常谨慎:您的客户或用户可能无法看到引用的内容。
不隶属于 StackOverflow