我正在尝试使用C#中的GDI来绘制Code 128条形码。我有.ttf字体,它应该作为矢量图形(而不是光栅)工作:
var bmp = new Bitmap(900, 100);
var g = Graphics.FromImage(bmp);
g.Clear(Color.White);
g.SmoothingMode = SmoothingMode.None;
g.InterpolationMode = InterpolationMode.HighQualityBicubic;
g.PixelOffsetMode = PixelOffsetMode.HighQuality;
g.DrawString(value, new Font("Code 128", 72), Brushes.Black, 0, 50);
g.DrawPath(new Pen(Brushes.Black, (float) 1.0), new GraphicsPath());
g.Flush();结果图像很宽,我想将其缩放到0.5 (仅x轴)。但是当我将X缩放到450时,- image变得不清晰。我注意到这个图像(当它还是900的时候)有点模糊:

我想如果图像看起来像这样,我的问题就解决了:

如何以这种方式绘制字符串?
发布于 2017-01-17 00:11:38
文本的平滑效果由TextRenderingHint属性控制。只需在呈现字符串之前设置此属性:
g.TextRenderingHint = TextRenderingHint.SingleBitPerPixel;https://stackoverflow.com/questions/41676450
复制相似问题