2012-07-10 25 views
1

我編寫了一個工具,它打印小標籤。 Here's我的問題:印刷SVG-PictureFiles在C#中PrintDocument的GDI +

在標籤上打印的每頁文字看起來罰款e.Graphics.DrawString(...) -

圖片印有e.Graphics.DrawImage(...)看起來很糟糕。像Copyright-Sign這樣的小零件是不可讀的。

DPI被設置爲300(打印機的最大的)。

我從Corel的繪製矢量/ SVG格式的有那些照片 - 如果我打印Corel繪圖文件,它看起來太棒了!

如何打印SVG檔案或C#(.NET 3.5或4.0)相似?

問候

回答

0

我用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(); 

應該生成,您可以使用編碼爲您的打印需要一個位圖對象。

+0

感謝 - 我安裝了它。但現在如何使用?哪些dll我必須導入加載和打印gdi中的SVG文件? – MariusK 2012-07-10 09:09:19

+0

請參閱示例代碼的更新答案,希望這有助於。 – 2012-07-10 13:42:01

+0

一些測試,打印完畢後,我們決定使用EMF格式的。所以我們只需要使用'Metafile'-.NET-Class。但是你的代碼示例對於未來的項目肯定有幫助。謝謝! :-) – MariusK 2012-07-10 16:14:38