将SVG插入PDF的质量差的图像

时间:2016-09-12 12:59:55

标签: c# svg

我正在尝试生成包含一些文字,徽标和条形码的PDF。除了徽标的质量外,一切都很好。

为了提供一个例子我使用这个SVG

使用svg.Net生成徽标,如下所示:

SvgDocument svgDoc = SvgDocument.Open<SvgDocument>(@"C:\temp\SVG\dojo.svg");
svgDoc.Width = 130;
svgDoc.Height = 30;
var bmp = svgDoc.Draw();

然后将其绘制到PrintDocument,如下所示:

Graphics.DrawImageUnscaled(bmp, logoLeft, logoTop);

最终被发送到PDF打印机驱动程序之前。最终结果是100%缩放的模糊外观

Generated PDF

放大PDF并且徽标分辨率非常低

Zoomed in Logo

如何提高最终输出的质量?

1 个答案:

答案 0 :(得分:2)

我通过省略创建中间PNG的过程来实现这一点,我无法很好地显示它。

使用svg.net的不同方法并直接写入图形对象。

步骤

Graphics.DrawImageUnscaled(bmp, logoLeft, logoTop);

已被替换为

svgDoc.X = logoLeft;
svgDoc.Y = logoTop;
svgDoc.Draw(Graphics);