支持字体格式的字体类| api for .net

aspose.font类的层次结构

Aspose.font支持不同格式字体的类的层次结构非常简单。

font是单个基类和任何类,它支持从 font继承的某些字体格式。此类收集的所有格式的字体都有共同的信息。此信息包括字体样式,字体名称,PostScript字体名称,字体族,字体指标,字体的字形数量,编码等。

font是一个抽象类,因此无法直接创建`aspose.font.font’类型的对象的实例。

该类别的静态方法返回了正义对象上的引用,该方法负载字体加载,该字体加载,超载方法家族 open()(5)。

特定于字体格式的唯一数据(基 Font 类包含)是来自 FontType 枚举的值。

接下来的类继承自 Aspose.Font 并用于处理特定的字体格式: TtfFontType1FontCffFont

字体格式,fonttype值和aspose.font对象类型之间的相互关系

下表显示了格式之间的一致性,由Aspose.font支持,与 fonttype枚举的这些格式值相对应,以及用于操纵这些格式的类别。

Font FormatFontType valueAspose.Font object type
TrueTypeTTFTtfFont
Type 1Type 1Type1Font
Compact Font Format (CFF)CFFCffFont

字体文件格式,fonttype值和aspose.font对象类型之间的相互关系

fonttype枚举的上述字体的格式比这些字体的文件格式更宽。

例如,TrueType 格式涵盖了 Aspose.Font 可加载的以下文件格式:ttfttceotwoffwoff2。因此,扩展名为 .ttf.ttc.eot.woff.woff2 的字体的共同特点是它们都与 TrueType 字体系列相关。

这就是为什么,如果将表中的“字体格式”列替换为“字体文件格式”列,我们将获得下一个字体文件格式关系表,适合它们的 FontType 值,以及旨在与 Aspose.Font 中的相应字体格式一起使用的对象。

字体文件格式FontType 值Aspose.Font 对象类型
ttf, ttc, eot, woff, woff2TTFTtfFont
pfa, pfbType 1Type1Font
afm, pfmType 1Type1MetricFont
binary data of Compact Font Format typeCFFCffFont

aspose.font.font类的功能

功能是由 font类定义的,可以将类别分为几个领域。

由字体类实施的接口定义的功能

字体接口列表的最重要接口列表是 ifont接口。它为 iglyphaccessorifontsaver接口提供了属性 由 font类实现 ifont接口。

接口 ifont定义了Aspose.font支持的所有字体格式常见的属性。 以下是每个属性的描述。

操纵字体格式的属性

另外, ifont接口定义方法 convert(),该方法用于将字体转换为另一种格式。 目前,有来自Aspose.font支持的任何格式的可用转换。表(64)在表中表示。

请参阅 Font Converter 有关如何使用aspose.font转换字体的更多信息。

字体加载

字体加载功能不受实现的接口涵盖,并且此功能由静态方法的家族 open()表示。 如何加载字体吗?文章中描述了传递到这些方法的参数。

字体保存

font实现接口 ifontsaver,该界面声明了字体保存操作的功能。 要保存字体,请使用超载方法之一 save(),然后传递字体文件名或流式写入字体。

在某些情况下,有必要将字体保存到另一种格式中。例如,许多网页更喜欢使用“ Woff”格式的字体工作,如果您想将字体放置在此页面上,则必须将字体保存到woff格式中。 方法 savetoformat()是为这种情况设计的。

从base aspose.font.font类继承的类

cfffont和type1font类

这些类可与“紧凑字体格式”和Adobe’类型1`字体格式的字体一起使用。 这些类覆盖了 font类的某些属性和方法,将其调整为实际字体格式。

ttffont类

该类旨在支持TrueType格式的字体。 可以通过调用静态方法 font.open()来获得对这种类型的对象的引用,并传递ttf作为 fonttype枚举的值。方法 font.open()返回基础上的参考 font类型,因此所获得的参考必须归为ttffont对象类型。

TrueType 格式规范中可知,字体数据以不同的表形式表示。 目前,Aspose.Font 库支持以下表: headcmapglyflocahheahmtxmaxpOS/2namepostkerncvtfpgmprep

*计划在不久的将来实施TrueType标准指定的其他表的支持。 支持aspose.font中的TrueType表,由namespace [aspose.font.ttftables]的类实现。 每个支持一些表的类都具有与相应的表名称相关的名称。 根据下一个规则来实现班级的命名: 每个类的名称具有前缀ttf,此前缀后缀后面是表的名称,然后“表”一词结束了类的名称。

例如,表“ head”由 ttfheadtable支持,表hheattfhheatable等类支持。

在所有支持trueType表的类别上的引用均由类型 ttftablepository的对象收集。

TtfFont 类将 TtfTableRepository 对象的引用作为 TtfTables 属性,因此可以使用语法 font.TtfTables 访问任何 TrueType 表,其中 fontTtfFont 类型的引用。

OpenType 字体功能的支持由属性 CffFont 表示。此属性返回从 CFF 表加载的 Font 对象的引用,该对象包含 Compact Font Format font 表示形式。

属性 Issymbolic用于检测字体是否为符号 - 专用字体,该字体由非字母字符,图形或两者兼有。

访问字体字形

ttffont提供了访问字体字形的扩展功能。除了通过接口定义的方法 iglyphaccessor
ttffont提供了两种超载方法,其中包括 getGlyphById(),它们需要整数或字符串形式的字形标识符。

使用这些方法比使用 IGlyphAccessor 接口中的 GetGlyphById() 方法更快。 此外, TtfFont 类提供了一组重载方法 GetGlyphComponentsById()。这些方法专为处理复合字形而设计。

复合字形是一个引用字体中一个或多个其他字形的字形。例如,角色ä(Unicode U+00C4)的字形可以由特征A(作为基础字形)的字形和透明型标记字形组成。

方法 getGlyphcomponentsByid()取用复合雕文的标识符,然后返回glyphs的列表,转移的复合glyph涉及。

Have any questions about Aspose.Font?



Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.