我无法弄清楚如何使用iText将外部图像(通过URL引用)添加到PDF。这种事情可能吗?使用iText将外部图像添加到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?
作为一个方面说明,如果我在视图尝试加载图像时遇到安全警告,则此练习是无用的。有谁知道这是否是这种情况?
另外 - 如果这种低级别操作在iText中不可行,是否还有另一个PDF库使得这更容易实现? – MikeQ 2009-12-03 16:05:00
根据您的评论,您真正想要做的是追踪用户何时打开文档。以下是如何添加代码以对URL进行主动调用的示例:http://stackoverflow.com/questions/8099927/tracking-code-into-a-pdf-or-postscript-file – CobaltBlue 2014-01-25 13:03:37