FontRepository

FontRepository class

执行字体搜索。在系统安装的字体和标准 Pdf 字体中搜索。 还提供打开自定义字体的功能。

public sealed class FontRepository

构造函数

姓名 描述
FontRepository() 默认构造函数。

特性

姓名 描述
static Sources { get; } 获取字体源集合。
static Substitutions { get; } 获取字体替换策略集合。

方法

姓名 描述
static FindFont(string) 搜索并返回具有指定字体名称的字体。
static FindFont(string, bool) 搜索并返回具有指定字体名称的字体,忽略或遵守区分大小写。
static FindFont(string, FontStyles) 搜索并返回具有指定字体名称和字体样式的字体。
static FindFont(string, FontStyles, bool) 搜索并返回具有指定字体名称和字体样式的字体 忽略或尊重大小写敏感性。
static LoadFonts() 加载系统安装的字体和标准的 Pdf 字体。此方法旨在加快字体加载过程。 默认情况下,首次请求任何字体时都会加载字体。使用此方法会在任何 Pdf 文档打开之前立即加载系统和标准 Pdf fonts 。
static OpenFont(string) 使用指定的字体文件路径打开字体。
static OpenFont(Stream, FontTypes) 使用指定的字体流打开字体。
static OpenFont(string, string) 使用指定的字体文件路径和度量文件路径打开字体。
static ReloadFonts() 重新加载属性指定的所有字体Sources

例子

该示例演示如何查找字体并替换第一页文本的字体。

// 查找字体
Font font = FontRepository.FindFont("Arial");

// 打开文档
Document doc = new Document(@"D:\Tests\input.pdf");

// 创建 TextFragmentAbsorber 对象以查找所有“hello world”文本出现
TextFragmentAbsorber absorber = new TextFragmentAbsorber("hello world");

// 接受第一页的吸收器
doc.Pages[1].Accept(absorber);

// 更改第一个文本出现的字体
absorber.TextFragments[1].TextState.Font = font;

// 保存文档
doc.Save(@"D:\Tests\output.pdf"); 

也可以看看