GetTextAreas

GetTextAreas()

从文档中提取文本区域。

public IEnumerable<PageTextArea> GetTextAreas()

返回值

的集合PageTextArea对象; 无效的如果不支持文本区域提取。

评论

了解更多:

例子

以下示例显示如何从整个文档中提取所有文本区域:

// 创建解析器类的实例
using(Parser parser = new Parser(filePath))
{
    // 提取文本区域
    IEnumerable<PageTextArea> areas = parser.GetTextAreas();
    // 检查是否支持文本区域提取
    if(areas == null)
    {
        Console.WriteLine("Page text areas extraction isn't supported");
        return;
    }
 
    // 遍历页面文本区域
    foreach(PageTextArea a in areas)
    {
        // 打印页面索引、矩形和文本区域值:
        Console.WriteLine(string.Format("Page: {0}, R: {1}, Text: {2}", a.Page.Index, a.Rectangle, a.Text));
    }
}

也可以看看


GetTextAreas(PageTextAreaOptions)

使用自定义选项(正则表达式、匹配大小写等)从文档中提取文本区域。

public IEnumerable<PageTextArea> GetTextAreas(PageTextAreaOptions options)
范围 类型 描述
options PageTextAreaOptions 文本区域提取的选项。

返回值

的集合PageTextArea对象; 无效的如果不支持文本区域提取。

评论

了解更多:

例子

以下示例显示如何仅从左上角提取带有数字的文本区域:

// 创建解析器类的实例
using(Parser parser = new Parser(filePath))
{
    // 创建用于文本区域提取的选项
    PageTextAreaOptions options = new PageTextAreaOptions("[0-9]+", new Rectangle(new Point(0, 0), new Size(300, 100)));

    // 从页面的左上角提取仅包含数字的文本区域:
    IEnumerable<PageTextArea> areas = parser.GetTextAreas(options);
    // 检查是否支持文本区域提取
    if(areas == null)
    {
        Console.WriteLine("Page text areas extraction isn't supported");
        return;
    }
 
    // 遍历页面文本区域
    foreach(PageTextArea a in areas)
    {
        // 打印页面索引、矩形和文本区域值:
        Console.WriteLine(string.Format("Page: {0}, R: {1}, Text: {2}", a.Page.Index, a.Rectangle, a.Text));
    }
}

也可以看看


GetTextAreas(int)

从文档页面中提取文本区域。

public IEnumerable<PageTextArea> GetTextAreas(int pageIndex)
范围 类型 描述
pageIndex Int32 从零开始的页面索引。

返回值

的集合PageTextArea对象; 无效的如果不支持文本区域提取。

评论

了解更多:

例子

要从文档页面中提取文本区域,使用以下方法:

// 创建解析器类的实例
using(Parser parser = new Parser(filePath))
{
    // 检查文档是否支持文本区域提取
    if(!parser.Features.TextAreas)
    {
        Console.WriteLine("Document isn't supports text areas extraction.");
        return;
    }

    // 获取文档信息
    IDocumentInfo documentInfo = parser.GetDocumentInfo();
    // 检查文档是否有页面
    if(documentInfo.PageCount == 0)
    {
        Console.WriteLine("Document hasn't pages.");
        return;
    }
 
    // 遍历页面
    for(int pageIndex = 0; pageIndex<documentInfo.PageCount; pageIndex++)
    {
        // 打印页码 
        Console.WriteLine(string.Format("Page {0}/{1}", pageIndex + 1, documentInfo.PageCount));
 
        // 遍历页面文本区域
        // 我们忽略空值检查,因为我们之前已经检查过文本区域提取功能支持
        foreach(PageTextArea a in parser.GetTextAreas(pageIndex))
        {
            // 打印矩形和文本区域值:
            Console.WriteLine(string.Format("R: {0}, Text: {1}", a.Rectangle, a.Text));
        }
    }
}

也可以看看


GetTextAreas(int, PageTextAreaOptions)

使用自定义选项(正则表达式、匹配大小写等)从文档页面中提取文本区域。

public IEnumerable<PageTextArea> GetTextAreas(int pageIndex, PageTextAreaOptions options)
范围 类型 描述
pageIndex Int32 从零开始的页面索引。
options PageTextAreaOptions 文本区域提取的选项。

返回值

的集合PageTextArea对象; 无效的如果不支持文本区域提取。

评论

了解更多:

也可以看看