判断TrueType字体

function IsTrueTypeFont(FontName : string) : boolean;
const
  PITCH_MASK: byte = $0F;  
var
  TxMetric: TTextMetric;
  TempCanvas : TCanvas;
  PitchTest : byte;
begin
  TempCanvas := TCanvas.Create;
  TempCanvas.Handle := CreateCompatibleDC(0));
  TempCanvas.Font.Name := FontName;
  GetTextMetrics(TempCanvas.Handle, TxMetric);
     PitchTest := TxMetric.tmPitchAndFamily and PITCH_MASK;
  Result := ((PitchTest and TMPF_TRUETYPE) <> 0));
  TempCanvas.free;
end;
/////////////////////////////////////
var

pitch:    Byte 
  MyCanvas: TCanvas; 
  TextMet:  TTextMetric;

begin 
Result:=False; 
MyCanvas:= TCanvas.Create; 
Try 
   MyCanvas.Handle:= CreateCompatibleDC (0); 
   MyCanvas.Font.Name:=FontName; 
   GetTextMetrics (MyCanvas.Handle, TextMet); 
   Pitch := TextMet.tmPitchAndFamyly and $07; 
   Result:= ((Pitch and TMPF_TRUETYPE)<>0);

finally 
   MyCanvas.Free; 
end;

end;

时间: 2024-08-17 10:39:12

判断TrueType字体的相关文章

Office PPT保持提示无法保存Gill Sans 等非TrueType字体

升级office到最新版了 我有一天在做PPT,保存文件后提示保存:无法保存Gill Sans 等非TrueType字体 我知道PPT可以替换字体.于是使用替换字体功能,但是提示非TrueType不能替换.怎么办?? 找了很多办法无效,一直好多天都是每次保存提示这个对话框. 不过终于还是解决了.下面我来说一下是如何替换这些字体的. 对于一些提示无法保存的非TrueType字体,可以上网搜索对应的字体,下载安装后就不会出现这种字体保存提示了 对于Gill Sans这个字体处理有点麻烦,下载的字体好

OpenType字体与TrueType字体的区别

TrueType采用几何学中二次B样条曲线及直线来描述字体的外形轮廓,其特点是:TrueType既可以作打印字体,又可以用作屏幕显示:由于它是由指令对字形进行描述,因此它与分辨率无关,输出时总是按照打印机的分辨率输出.无论放大或缩小,字符总是光滑的,不会有锯齿出现.但相对PostScript字体来说,其质量要差一些.特别是在文字太小时,就表现得不是很清楚. OpenType也叫Type 2字体,是由Microsoft和Adobe公司开发的另外一种字体格式.它也是一种轮廓字体,比TrueType更

判断是否有TrueType字体

function IsTrueTypeAvailable : bool;var {$IFDEF WIN32}  rs : TRasterizerStatus; {$ELSE}  rs : TRasterizer_Status; {$ENDIF}begin  result := false;  if not GetRasterizerCaps(rs, sizeof(rs)) then exit;  if rs.WFlags and TT_AVAILABLE <> TT_AVAILABLE the

wpf使用truetype字体ttf

查了半天都是语焉不详,这篇算是稍微详细点的:http://www.cnblogs.com/junhengml/p/6878933.html 要先查找到字体的字库名称,才能使用: <Window.Resources> <Style TargetType="TextBlock"> <Setter Property="Width" Value="46"/> <Setter Property="Heig

iOS上用FTGL显示定制Truetype字体碰到的问题

没想到这个问题搞了快2个月时间:当然跟我只是断断续续地工作有关. FTGL是freetype的opengl实现.我接触FTGL最初只是为了练习OpenGL,写几个简单的游戏app.开始试了试FTGL觉得挺简单好用,不需要太熟悉OpenGL底层的东西,于是决定在自己的一个app中正式加入用FTGL显示艺术True type字体的功能,预计应该很快能完成吧. 开始进展很顺利,似乎即将大工告成,结果最后突然发现一个问题:艺术字体(中文)显示若干段落以后,突然渲染不正常,总是显示一些混乱的字符:排除了应

js 条件判断放大字体

<html> <head> <meta charset="utf-8" /> <title></title> <script type="text/javascript"> window.onload=function(){ var btn1=document.getElementById('btn1'); var btn2=document.getElementById('btn2'); va

TrueType, OpenType, PCL和PostScript字体版本nterleaved 2 of 5 Barcode Font Advantage Package

Interleaved 2 of 5 Barcode Font Advantage Package包含了TrueType, OpenType, PCL和PostScript字体版本. 提供了超过30个的字体工具,宏和插件. 在6个不同的字体格式中包含了24种不同的ITF条形码字体版本 具体功能: 包含了TrueType, OpenType, PCL和PostScript字体版本. 提供了超过30个的字体工具,宏和插件. 在6个不同的字体格式中包含了24种不同的ITF条形码字体版本. 提供了标准版

字体【truetype postscript opentype】

字体构成非常复杂,不过大体可以分解成轮廓格式(TT/PS).封装格式(SFNT/Type 1).编码方式(Unicode/CID) TrueTypeTrue Type既可以作打印字体,又可以用作屏幕显示.由于它是由指令对字形进行描述,因此它与分辨率无关,输出时总是按照打印机的分辨率输出.无论放大或缩小,字符总是光滑的,不会有锯齿出现.TrueType 由路径构成的,在windows编程中大量使用. PostScript是一种编程语言,最适用于打印图像和文字(无论是在纸.胶片或非物质的CRT都可)

RF1001: 各浏览器对 &#39;@font-face&#39; 规则支持的字体格式不同,IE 支持 EOT 字体,Firefox Safari Opera 支持 TrueType 等字体

http://w3help.org/zh-cn/causes/RF1001 http://blog.csdn.net/agileclipse/article/details/12450949 http://www.zhaozi.cn/html/fonts/  字体网 作者:陆远 标准参考 根据 CSS3 草案中的描述,'@font-face' 规则允许使用链接到需要时自动激活的字体.这使得用户可以使用在线的字体,而不仅仅拘泥于使用用户端系统内的字体.一套对字体的描述定义了字体资源的位置,可以是本