我们使用iText从
Java生成PDF(部分基于本网站上的建议).然而,将像我们的标志的图像嵌入到像GIF这样的图像格式中,这使得它看起来有点奇怪,因为人们放大和缩小.
理想情况下,我们想以矢量格式嵌入图像,如EPS,SVG或PDF模板.网站声称EPS支持已经被删除,将PDF或PS嵌入PDF可能会导致错误,甚至没有提及SVG.
我们的代码直接使用Graphics2D API而不是iText,但如果实现了结果,我们愿意突破AWT模式并使用iText本身.如何才能做到这一点?
解决方法
根据
documentation iText支持以下图像格式:JPEG,GIF,PNG,TIFF,BMP,WMF和EPS.我不知道这可能是什么帮助,但我已经成功地使用
iTextSharp将矢量
WMF图像嵌入pdf文件中:
C#:
using System; using System.IO; using iTextSharp.text; using iTextSharp.text.pdf; public class Program { public static void Main() { Document document = new Document(); using (Stream outputPdfStream = new FileStream("output.pdf",FileMode.Create,FileAccess.Write,FileShare.None)) using (Stream imageStream = new FileStream("test.wmf",FileMode.Open,FileAccess.Read,FileShare.Read)) { PdfWriter.GetInstance(document,outputPdfStream); Image wmf = Image.GetInstance(imageStream); document.Open(); document.Add(wmf); document.Close(); } } }