GDI+中字体单位的实际意义

2 篇文章 0 订阅
GDI+ Font有构造函数Font::Font(FontFamily*,REAL,INT,Unit),Unit可取    
  UnitWorld = 0,

    UnitDisplay= 1,

    UnitPixel= 2,

    UnitPoint= 3,

    UnitInch= 4,

    UnitDocument= 5,

    UnitMillimeter= 6



    FontFamily fontFamily(_T("宋体"));

    Font font1(&fontFamily,13.0,FontStyleRegular,UnitPoint);

写下上述2行代码,我期待能有13号字体出现,的确,在客户区出现了13号字,但是打印预览的时候字变的非常小.原来打印时,程序先将会先根据屏幕DPI把字体由单位point转化为单位pixel,然后根据pixel1:1(假设没有根据DPI设置窗口视口映射)映射到打印预览界面,而不是直接在打印预览上面写13号字体。要想打印打印预览时也有13号字就要自己根据DPI纵向比例设置字体的大小(当前构造函数中的第二个参数)(通过纵向比例可以设置字体的高,高确定了之后因为字体的宽高比是固定的,所以宽也就确定了,GDI+中的字体没有宽度这个参数了),但是如果设置了映射模式为MM_ANISOTROPIC,字体的宽高比就没有意义了,因为字体的宽高会分别由映射模式里的横向纵向比例确定

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值