zoukankan      html  css  js  c++  java
  • FontFamily 和Font 的区别

    GDI+ 将字样相同但字形不同的字体分组为字体系列。例如,下面是同一个字样(Arial),不同的字形 :

    -------------------------------------------------------- 

    Arial Regular 常规

    Arial Bold 粗体

    Arial Italic 斜体

    Arial Bold Italic 粗斜体

    -------------------------------------------------

    GDI+ 使用四种字形形成字体系列:常规、粗体、倾斜和粗斜体。像 narrow 和 rounded 之类的形容词不被视为字形;而是作为字体系列名的一部分。如下,Arial,Arial Black,Arial Narrow 是三个不同的字样:

    --------------------------------------------------------

    Arial 

    Arial Black

    Arial Narrow

    ------------------------------------------------- 

    GDI+中,字样+字形+字号+单位构成了“字体”,在使用 GDI+ 绘制文本之前,您需要构造一个 FontFamily 对象(指定字样)和一个 Font (“字体”)对象。FontFamily 对象指定字样(例如 Arial,宋体,),而 Font 对象指定字号、字形和单位。

    字样如下图这样:

    字形如下图这样:

    示例

    下面的示例构造一个字号为 48,以像素为单位、字形为“粗斜体”、字样为“宋体”的字体。在下面的代码中,传递给 Font 构造函数的第一个参数是 FontFamily 对象。第二个参数指定字体的大小,第三个参数确定字形,其单位由第四个参数确定(可以指定以像素,点...为单位)。

    Pixel 为 GraphicsUnit 枚举的一个成员,Regular 是 FontStyle 枚举的一个成员。

    uses

     GDIPAPI,GDIPOBJ;

    procedure TForm1.FormPaint(Sender: TObject);

    var

     g:TGPGraphics;

     font:TGPFont;

     fontfamily:TGPFontFamily;

     sb:TGPSolidBrush;

    begin

     g:=TGPGraphics.Create(Canvas.Handle);

     fontfamily:=TGPFontFamily.Create('宋体');  //建立“字样”对象

     font:=TGPFont.Create(fontfamily,16,FontStyleBoldItalic,UnitPixel); //建立“字体”对象

     sb:=TGPSolidBrush.Create(aclRed);

     g.DrawString('巅枫',-1,font,MakePoint(20.0,10.0),sb);

     sb.free;

     font.free;

     fontfamily.free;

     g.free;

    end;

  • 相关阅读:
    论文总结
    尝试为有限元模拟加入场的控制
    关于maya动力学系统的一些总结
    实现了与maya场交互的能力
    selenium 3.0鼠标事件 (java代码)
    selenium 常用浏览器操作API
    selenium 3.0与2.0 打开火狐浏览器的区别
    testng+IEDriverServer+yum+tomcat下载软件包
    yum,httpd,php环境搭建方法
    PHP文件环境搭建—EcShop环境搭建
  • 原文地址:https://www.cnblogs.com/blogpro/p/11426618.html
Copyright © 2011-2022 走看看