各位大侠:
   标签控件(Label)的Font属性中有两个属性Height和Size,我设置时总是出现一个为正值,而另一个就会自动变为负值,负值是什么意思啊,为什么会出现一正一负,两者之间是什么关系啊?
   先谢谢了!

解决方案 »

  1.   

    Height和Size是成一定比例的,看看帮助啦Font.Height = -Font.Size * Font.PixelsPerInch / 72
      

  2.   

    为什么不去找下看 windows api 中所说 > 0 The font mapper transforms this value into device units and matches it against the cell height of the available fonts.
    0 The font mapper uses a default height value when it searches for a match.
    < 0 The font mapper transforms this value into device units and matches its absolute value against the character height of the available fonts.
     
    其中 0 是没用的, 
    正是可能用相近值
    负的用的是字体绝对值字体分 truetype 字体, 向量字体和 fixed 字体, 字体不是每种大小都是有的, 就是说有些大小是有点失真的, 而显示器是不敏感设备, 因此有以上控制, 现在 truetype 字体(大多)是每种大小都有的因此很少再有人提起这档子事了
      

  3.   

    另外说一下那个字体公式, 字体作作一种特别的资源, dpi 是不变的, 而不管显示他的设备
    font = 72dpi   固定
    显示器 = 96dpi 固定
    打印机 = 装机的箱上写的有因此上面公式是把字体 dpi 转到设备 dpi, delphi 所描述的是一种设备无关的 size, 又因此 height 不要在运行期直接指定, 开发时另外(因为你用的是显示器)