delphi 如何从字体文件中获取字体名称?  
官方Delphi 学习QQ群: 682628230(三千人)
频道

delphi 如何从字体文件中获取字体名称?


program Project2;


{$APPTYPE CONSOLE}


{$R *.res}


uses

  Windows,

  SysUtils;



function GetFontResourceInfo(lpszFilename: PChar; var cbBuffer: DWORD; lpBuffer: PChar; dwQueryType: DWORD): DWORD; stdcall; external 'gdi32.dll' name 'GetFontResourceInfoW';


procedure ListFonts;

const

  QFR_DESCRIPTION  =1;

var

  FileRec : TSearchRec;

  cbBuffer : DWORD;

  lpBuffer: array[0..MAX_PATH-1] of Char;

begin

  if FindFirst('C:\Windows\Fonts\*.ttf', faNormal, FileRec) = 0 then

  try //delphiw.com

    repeat

      cbBuffer:=SizeOf(lpBuffer);

      GetFontResourceInfo(PWideChar('C:\Windows\Fonts\'+FileRec.Name), cbBuffer, lpBuffer, QFR_DESCRIPTION);

      Writeln(Format('%s - %s',[FileRec.Name ,lpBuffer]));

    until FindNext(FileRec) <> 0;

  finally

    FindClose(FileRec);

  end;

end;



begin

  try

   ListFonts;

  except

    on E: Exception do

      Writeln(E.ClassName, ': ', E.Message);

  end;

  Readln;

end.



推荐分享
图文皆来源于网络,内容仅做公益性分享,版权归原作者所有,如有侵权请告知删除!
 

Copyright © 2014 DelphiW.com 开发 源码 文档 技巧 All Rights Reserved
晋ICP备14006235号-8 晋公网安备 14108102000087号

执行时间: 0.048415184020996 seconds