我在弄清楚如何使用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对此有所支持,但是我对该功能非常谨慎:您的客户或用户可能无法看到引用的内容。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top