GetFormattedText

GetFormattedText(FormattedTextOptions)

从文档中提取格式化文本。

public TextReader GetFormattedText(FormattedTextOptions options)
范围 类型 描述
options FormattedTextOptions 格式化文本提取选项。

返回值

的实例TextReader用提取的文本上课; 无效的如果不支持格式化文本提取。

评论

了解更多:

例子

以下示例显示如何将文档文本提取为 HTML 文本:

// 创建解析器类的实例
using (Parser parser = new Parser(filePath))
{
    // 将格式化的文本提取到阅读器中
    using (TextReader reader = parser.GetFormattedText(new FormattedTextOptions(FormattedTextMode.Html)))
    {
        // 打印文档中的格式化文本
        // 如果不支持格式化文本提取,则读取器为空
        Console.WriteLine(reader == null ? "Formatted text extraction isn't suppported" : reader.ReadToEnd());
    }
}

也可以看看


GetFormattedText(int, FormattedTextOptions)

从文档页面中提取格式化文本。

public TextReader GetFormattedText(int pageIndex, FormattedTextOptions options)
范围 类型 描述
pageIndex Int32 从零开始的页面索引。
options FormattedTextOptions 格式化文本提取选项。

返回值

的实例TextReader用提取的文本分类; 无效的如果不支持格式化文本页面提取。

评论

了解更多:

例子

以下示例显示如何将文档页面文本提取为 Markdown 文本:

// 创建解析器类的实例
using (Parser parser = new Parser(filePath))
{
    // 检查文档是否支持格式化文本提取
    if (!parser.Features.FormattedText)
    {
        Console.WriteLine("Document isn't supports formatted text extraction.");
        return;
    }
    
    // 获取文档信息
    IDocumentInfo documentInfo = parser.GetDocumentInfo();
    // 检查文档是否有页面
    if (documentInfo.PageCount == 0)
    {
        Console.WriteLine("Document hasn't pages.");
        return;
    }
    
    // 遍历页面
    for (int p = 0; p<documentInfo.PageCount; p++)
    {
        // 打印页码 
        Console.WriteLine(string.Format("Page {0}/{1}", p + 1, documentInfo.PageCount));
        // 将格式化的文本提取到阅读器中
        using (TextReader reader = parser.GetFormattedText(p, new FormattedTextOptions(FormattedTextMode.Markdown)))
        {
            // 打印文档中的格式化文本
            // 我们忽略空值检查,因为我们之前已经检查了格式化文本提取功能支持
            Console.WriteLine(reader.ReadToEnd());
        }
    }
}

也可以看看