Gdi+属性设置

一个项目中要进行字体锯齿消除,所以使用了gdi+,过程中花了好长时间才找到gdi+的一些属性设置接口,mark于此。

 首先是可以使用的代码:

1 用GDI+写字到界面实现当字符串长度大于rect的长度时,自动节断字符串,并在后边以“...“补充

 sf.SetTrimming( StringTrimmingEllipsisCharacter );调用即可,类似gdi接口中nType |= DT_MODIFYSTRING | DT_END_ELLIPSIS;的效果。

2 设置只显示单行属性

sf.SetFormatFlags( StringFormatFlagsNoWrap );,类似gdi中的nType |= DT_SINGLELINE;

3 消锯齿

graph.SetTextRenderingHint(TextRenderingHint(TextRenderingHintAntiAlias));

4 替代数字接口

StringDigitSubstitute;不知道这个接口有什么用,表现是可以将一个字符串中的数字用一些 不知道什么的东西 进行替换。

5 对齐方式:StringAlignment,左中右。

遗留问题:

gdi中用DC绘制时指定字体高假如为20, 使用gdi+绘制时同样有字体,如果设置成20则画出来的字大小不同,gdi中的dc默认使用的是MM_TEXT,按道理gdi+的字体设置只要设置成UnitPixel即可。都表示一个逻辑单位代表一个像素点。不过还是不正确,不知道为啥。 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值