C#绘图的一个诡异问题
在用Graphics绘图时,本地测试(Win7)无误的程序丢到服务器环境(Win08)上跑,绘出来的图上的文字边缘会变得异常蛋疼,如图:
百思不得骑姐其解 凸-_-凸。
然后咨询了资深夜内业内人士DCD,其曰win08跟win7的在外观上的区别,没准是ClearType在Win7默认是开的而Win08是关的。
so,开启ClearType,果然有效!
这不算完。
如果每次都要去改系统的ClearType设置,别说未来可能会有的管运维的小弟,自己在睡一觉醒来的明天早晨肯定也不记得去改这个参数。所以,Google一下。
Graphics certDrawer = Graphics.FromImage(certImage);
certDrawer.TextRenderingHint = TextRenderingHint.ClearTypeGridFit;
certDrawer.PageUnit = GraphicsUnit.Pixel;
在绘图的画板上,加上第二句话,就可以无视系统是否设置ClearType了。
哦擦那!
搞定,下一功能。