我正在创建带有一些文本的图像,并使用TextureBrush
沿一条线重复绘制文本。它在屏幕上工作正常。当我要打印它时,它看起来非常糟糕。我试图将图像创建得更大(相对于dpi差异),并将其分辨率设置为Graphics
对象的分辨率(对于打印,它的分辨率更高。 )。照原样打印图像看起来不错。.但是TextureBrush
效果不好。
我将附加所有打印件-试图将其打印到PDF打印机-与真实打印机的结果相同-所以在那里没有问题。
在更改任何内容之前先尝试
使用graphics.DrawImage(...)
绘制图像(图像包含我画过的字母'A')
打印TextureBrush
这时很明显我有分辨率问题,所以我以更大的分辨率和更好的分辨率(作为打印机dpi)创建了我的图像
使用graphics.DrawImage(...)
看上去很完美-尺寸精确,质量高。 graphics.DrawImage(...)
绘制图片时要考虑其大小和分辨率。
现在,我已经在textureBrush
中使用了这张照片。结果看起来像这样
它更大,因为图像本身更大-但是为什么它不考虑像graphics.DrawImage(...)
这样的分辨率。
无论如何,我决定继续使用TextureBrush.ScaleTransform(...)
并按比例缩小图像-结果看起来像这样
这是我到目前为止达到的最好水平。.我认为主要问题是TextureBrush
,它不考虑图像的分辨率。
我真的更愿意坚持使用TextureBrush
的方式(而不是通过剪切和重复的方式逐个绘制图像),因为这是非常复杂的代码和复杂的绘制
帮助任何人吗?