在C#PrintDocument GDI+中打印SVG图片文件



我编写了一个打印小标签的工具。这是我的问题:

使用e.Graphics.DrawString(...)-,标签上的每个打印文本看起来都很好

e.Graphics.DrawImage(...)打印的图片看起来很糟糕。像版权标志这样的小部件是不可读的。

DPI设置为300(打印机的最大值)。

我从Corel Draw获得了矢量/SVG格式的图片——如果我打印Corel Draw文件,它看起来很棒!

如何使用C#(.NET 3.5或4.0)打印SVG文件或类似文件?

问候

我以前使用过SVG#,它运行得很好。该项目是旧的,所以在编译到您的.net 3.5/4.0项目中之前,可能需要进行一些小的调整。

一旦你编译了它,你可以尝试下面的片段

//Create a window that matches the desired output bitmap
SvgWindow window = new SvgWindow(width, height);
window.Src = svgSource;
//Create a GDI renderer for SVG, and use white background
GdiRenderer gdirender = new GdiRenderer(window, Color.White);
Bitmap bitmap = gdirender.Render();

它应该生成一个位图对象,您可以使用该对象对打印需求进行编码。

最新更新