请教吕雪松斑竹 ( 积分: 0 )

  • 主题发起人 主题发起人 delphibbs_yjh
  • 开始时间 开始时间
D

delphibbs_yjh

Unregistered / Unconfirmed
GUEST, unregistred user!
看到你很多关于ttf的回答.....
我想请教一下
1、用delphi怎么读取、保存ttf文件中的字符
2、象数学中的求和公式符号(∑)我能否到ttf中去读取,如果没有我能否扩充进去,然后读取

谢谢。。。。。。

银子可以到(问上面的问题主要是为了解决这个问题)http://www.delphibbs.com/delphibbs/dispq.asp?lid=3013340去拿
如果不够到http://www.delphibbs.com/delphibbs/dispq.asp?lid=2999490去拿
 
看到你很多关于ttf的回答.....
我想请教一下
1、用delphi怎么读取、保存ttf文件中的字符
2、象数学中的求和公式符号(∑)我能否到ttf中去读取,如果没有我能否扩充进去,然后读取

谢谢。。。。。。

银子可以到(问上面的问题主要是为了解决这个问题)http://www.delphibbs.com/delphibbs/dispq.asp?lid=3013340去拿
如果不够到http://www.delphibbs.com/delphibbs/dispq.asp?lid=2999490去拿
 
现在我用font creator5.0来编辑ttf文件......
但不知道怎么用delphi读ttf中定义的某个字符,要求读出来的字符通过鼠标拖动,可以无限放大、旋转(类似word绘图中插入的自选图形一样)

 
如果你仅仅是把TTF拿来显示,那么你只要通过建立一个LogFont的结构,再调用CreateFontIndirect函数,把width和height设得无限大,就可以实现你要的无限放大显示的功能。

不过如果你是想把TTF中的矢量信息读出来,再编辑其中的结点,那就比较复杂了。一种办法是你要去理解TTF文件的格式,另一种方式是在网上去搜索有没有可用的现成代码。
 
字符通过鼠标拖动,可以放大、旋转(类似word绘图中插入的自选图形一样)

把字符取到容器中后,操作的是不是图形对象
 
只要你不需要编辑TTF字符本身,那么你都可以通过LogFont来实现字体的任意缩放和旋转,注:escapement参数是用来控制字体的角度的。
 
你有资料吗
给我mail一份
sea_2001forever@sina.com
 
像你回答的http://www.delphibbs.com/delphibbs/dispq.asp?lid=292160
只能显示字库类型的字体,不能取出字库中的某个字体
像要显示(∑)的话,是不是在程序里面要写进去呢

我打开TTF文件看到里面的字体(图形)有一定的编号的
如果按照编号一个一个可以取出里面的字体(图形)就好了
(TTF中可能存放了自己设计的一些图形)
 
你可以这样来理解TTF字体:实际上每个TTF字体是由一些线段、多边形、贝塞尔曲线构成的一个矢量图形,由于是矢量的,所以它可以支持平滑的无级的缩放。但在一般的应用中,你是没必要去了解和操作它的矢量图形本身,因为TTF是按照ASCII码编号的,你可以通过一定的编号去访问它,那么Windows的GDI就会根据你设定的字库名称和这个编号,自动去取出这些矢量图形,把它“画”在DC上,就是Canvas上。

如你指定LOGFONT结构的
LONG lfHeight = 100
LONG lfWidth = 200
LONG lfEscapement = 900
...
TCHAR lfFaceName[LF_FACESIZE] = 'Windings';

再写TextOut(1,1,'a');
那么GDI就会去访问 'a' 的ASCII码对应的 'windings' 字库的TTF矢量图形,再根据你指定的高度,宽度和角度,把它画在DC上。

OK,这样解释可以了吧。你没必要去操作TTF里面的图形本身,如果你非要把它的矢量信息读出来,那你就去读吧。
 
你能否提供微软发布的TureType字体规格书
我在网上找了老半天,没找着
sea_2001forever@sina.com
 
http://www.microsoft.com/typography/SpecificationsOverview.mspx
 
http://www.microsoft.com/typography/otspec/TTCH01.htm
 
清楚了
谢谢
请去拿分
 
接受答案了.
 
后退
顶部