我正在使用PrintDocument打印PDF,我注意到图形的质量非常差(见图片)。因此,我尝试将图形对象的平滑模式设置为抗锯齿,但是在调试中单步执行时,平滑模式永远不会从无更改。我对图形对象很陌生,所以我想知道是否有人知道为什么我无法设置平滑模式?或者为什么平滑模式默认为无?
图像:
使用我的应用生成
使用 Adobe Acrobat 生成
法典:
printDocument = new PrintDocument();
printDocument.PrintPage += OnPrintPage;
private void OnPrintPage(object sender, PrintPageEventArgs e)
{
e.Graphics.SmoothingMode = SmoothingMode.AntiAlias; //<-- Doesn't do anything
// Print document
}
您必须
首先放置平滑模式:
e.Graphics.SmoothingMode = SmoothingMode.AntiAlias;
e.Graphics.DrawString/DrawImage
您之后使用图形执行操作。我在直接加载PDF时遇到了同样的问题。
我目前的解决方案是加载PDF文件,将其转换为TIFF并在打印预览中显示TIFF帧,这是我的情况。