支持字体格式的字体类| java的API
com.aspose.font课程的层次结构
旨在支持不同格式字体的[com.aspose.font]类的类别的层次结构非常简单。
类 font是单个基类和任何类,它支持从font继承的某些字体格式。此类收集的所有格式的字体都有共同的信息。此信息包括字体样式,字体名称,PostScript字体名称,字体族,字体指标,字体的字形数量,编码等。
类 font是一个抽象类,因此无法直接创建com.aspose.font.font.font.
类型的对象的实例。
该类别的静态方法返回了正义对象上的引用,该方法负载字体加载,该字体加载,超载方法家族
open()。
至于一种或另一种字体格式信息的特定信息,用于提供此类信息是从基本com.aspose.font.font
的负责对象。
唯一针对字体格式的数据,基本font类包含的数据是
fonttype枚举的值。
接下来的类继承自 com.aspose.font.Font 并用于处理特定的字体格式: TtfFont、 Type1Font、 CffFont。
字体格式,fonttype值与com.aspose.font.font对象类型之间的相互关系
下表显示了格式之间的一致性,由com.aspose.font支持,与 fonttype枚举相对应的相对应的值,以及用于操纵这些格式的类别。
字体格式 | FontType 值 | com.aspose.font 对象类型 |
---|---|---|
TrueType | TTF | TtfFont |
Type 1 | Type 1 | Type1Font |
Compact Font Format (CFF ) | CFF | CffFont |
字体文件格式,fonttype值和com.aspose.font.font对象类型之间的相互关系
fonttype枚举的上述字体的格式比这些字体的文件格式更宽。
例如,TrueType
格式涵盖了以下可通过 com.aspose.font 加载的文件格式:ttf
、ttc
、eot
、woff
、woff2
。因此,扩展名为 .ttf
、.ttc
、.eot
、.woff
、.woff2
的字体的共同特点是它们都与 TrueType
字体系列相关。
这就是为什么,如果在表中替换为列“字体格式”为“字体文件格式”,我们将获得字体文件格式之间的下一个关系表,拟合它们 fonttype值,以及旨在与com.aspose.font中的相应字体格式一起使用的对象。
字体文件格式 | FontType 值 | com.aspose.font 对象类型 |
---|---|---|
ttf , ttc , eot , woff , woff2 | TTF | TtfFont |
pfa , pfb | Type 1 | Type1Font |
afm , pfm | Type 1 | Type1MetricFont |
binary data of Compact Font Format type | CFF | CffFont |
com.aspose.font.font类的功能
功能是由 font类别定义的,可以将类别分为几个领域。
由字体类实施的接口定义的功能
字体接口列表的最重要接口列表是 ifont接口。它为 iglyphaccessor和 ifontsaver接口提供了属性 由 font类实现 如果接口。
接口 Ifont定义com.aspose.font支持的所有字体格式常见的属性。 以下是每个属性的描述。
操纵字体格式的属性
- 字符串 fontname - 字体的名称。
- MultinanguageString FontNames - 字体的名称不同语言。
- MultinanguageString PostscriptNames - 字体的Postscript名称,用不同的语言。- string fontfamily - 字体系列的名称。要获取有关字体家庭的更多详细信息,请参见 font familycharpter。
- fonttype fonttype - 字体格式的类型,由fonttype枚举表示。
- fontstyle fontstyle - fontstyle*类的字体样式值。了解有关 Font Styles的更多信息。
- 字符串 样式 - 字体样式的名称,类似于属性 fontstyle,以其原始字符串形式表示,由字体数据提供。
- fontdefinition fontdefinition - 描述格式和源源加载字体的对象。转到 如何加载字体,您可以在其中详细学习如何使用此对象。
- int numglyphs - 获取字体的字形数量。
- ifOntmetrics 指标 - 在Ifontmetrics接口上获取引用,该接口提供了与常见字体指标相关的功能。
- ifOntEncoding 编码 - 在IfOntEncoding接口上获取一个提供编码功能的接口。
- iglyphaccessor glyphaccessor - 在iglyphaccessor接口上获取一个参考,该界面提供功能以检索指定的Glyph标识符和字形。
- ifontsaver fontsaver - 使用IfontSaver接口提供字体保存功能。
另外, ifont接口定义方法 convert(),该方法用于将字体转换为另一种格式。 目前,有来自Aspose.font支持的任何格式的可用转换。表(48)在表中表示。
参见 Font Converter 有关如何使用aspose.font转换字体的更多信息。
字体加载
字体加载功能不受实现的接口涵盖,并且该功能由静态方法的家族 open()表示。 如何加载字体吗?文章中描述了传递到这些方法的参数。
字体保存
类 font实现接口 ifontsaver,该界面声明了字体保存操作的功能。 要保存字体,请使用超载方法之一 save(),然后传递字体文件名或流式写入字体。
在某些情况下,有必要将字体保存到另一种格式中。例如,许多网页更喜欢使用“ Woff”格式的字体工作,如果您想将字体放置在此页面上,则必须将字体保存到woff
格式中。
方法
savetoformat()是为这种情况设计的。
从com.aspose.font.font类继承的类
cfffont和type1font类
这些类可与“紧凑字体格式”和Adobe’类型1`字体格式的字体一起使用。 这些类覆盖了 *字体 *类的某些属性和方法,将其调整为实际字体格式。
ttffont类
该类旨在支持TrueType
格式的字体。
可以通过调用静态方法
font.open()来获得对这种类型的对象的引用,并传递ttf
作为
fonttype枚举的值。方法*font.open()*返回基础上的参考
font类型,因此所获得的参考必须归为ttffont
对象类型。
从 TrueType
格式规范中可知,字体数据以不同的表形式表示。
目前,Aspose.Font 库支持以下表:
head
、cmap
、glyf
、loca
、hhea
、hmtx
、maxp
、OS/2
、name
、post
、kern
、cvt
、fpgm
、prep
。
*计划在不久的将来实施TrueType
标准指定的其他表的支持。
支持aspose.font中的TrueType
表
ttftablebase实现。
每个支持一些表的类都具有与相应的表名称相关的名称。
根据下一个规则来实现班级的命名:
每个类的名称具有前缀ttf
,此前缀后缀后面是表的名称,然后“表”一词结束了类的名称。
例如,表head
由
ttfheadtable的类支持,表hhea
由class
ttfhheatable等班级支持。
所有支持 TrueType
表的类的引用都由
TtfTableRepository 类型的对象收集。
ttffontclass在
ttftableRepository对象作为属性
ttftables上给出了引用,因此,通过使用语法可以访问任何trueType
表
其中font
是ttffont
类型的引用。
对opentype
字体功能的支持由属性[cfffont]表示(66)。此属性返回
font对象上的参考
从CFF
表中加载,其中包含“紧凑型字体格式”字体表示。
属性 Issymbolic用于检测字体是由非字符字符,图形或两者兼有的象征性专门字体。
访问字体字形
类
ttffont提供了访问字体字形的扩展功能。除了通过接口[iglyphaccessor]定义的方法(70),
ttffont提供了两种超载方法,其中包括
getGlyphById(),它们需要整数或字符串形式的字形标识符。
使用这些方法比使用 iglyphaccessor接口使用方法 *getGlyphById()*更快。 另外,ttffont类提供一组超载方法 getGlyphComponentsByid()。这些方法旨在与复合字形配合使用。
复合字形是一个引用字体中一个或多个其他字形的字形。例如,角色ä(Unicode U+00C4)的字形可以由特征A(作为基础字形)的字形和透明型标记字形组成。
方法 *getGlyphcomponentsById()*乘以复合字形的标识符,并返回glyphs的列表,转移的复合glyph是指。