GetTables

GetTables(PageTableAreaOptions)

ドキュメントからテーブルを抽出します。

public IEnumerable<PageTableArea> GetTables(PageTableAreaOptions options)
パラメータ タイプ 説明
options PageTableAreaOptions テーブル抽出のオプション。

戻り値

のコレクションPageTableAreaオブジェクト; ヌルテーブル抽出がサポートされていない場合.

次の例は、ドキュメント全体からテーブルを抽出する方法を示しています:

// Parser クラスのインスタンスを作成します
using (Parser parser = new Parser(filePath))
{
    // ドキュメントがテーブル抽出をサポートしているかどうかを確認します
    if (!parser.Features.Tables)
    {
        Console.WriteLine("Document isn't supports tables extraction.");
        return;
    }
    // テーブルのレイアウトを作成します
    TemplateTableLayout layout = new TemplateTableLayout(
        new double[] { 50, 95, 275, 415, 485, 545 },
        new double[] { 325, 340, 365, 395 });
    // テーブル抽出のオプションを作成します
    PageTableAreaOptions options = new PageTableAreaOptions(layout);
    // ドキュメントからテーブルを抽出します
    IEnumerable<PageTableArea> tables = parser.GetTables(options);
    // テーブルを繰り返します
    foreach (PageTableArea t in tables)
    {
        // 行を繰り返す
        for (int row = 0; row < t.RowCount; row++)
        {
            // 列を繰り返します
            for (int column = 0; column < t.ColumnCount; column++)
            {
                // 表のセルを取得
                PageTableAreaCell cell = t[row, column];
                if (cell != null)
                {
                    // テーブル セルのテキストを出力します
                    Console.Write(cell.Text);
                    Console.Write(" | ");
                }
            }
            Console.WriteLine();
        }
        Console.WriteLine();
    }
}

関連項目


GetTables(int, PageTableAreaOptions)

ドキュメント ページからテーブルを抽出します。

public IEnumerable<PageTableArea> GetTables(int pageIndex, PageTableAreaOptions options)
パラメータ タイプ 説明
pageIndex Int32 ゼロベースのページ インデックス。
options PageTableAreaOptions テーブル抽出のオプション。

戻り値

のコレクションPageTableAreaオブジェクト; ヌルテーブル抽出がサポートされていない場合.

次の例は、ドキュメント ページからテーブルを抽出する方法を示しています:

// Parser クラスのインスタンスを作成します
using (Parser parser = new Parser(filePath))
{
    // ドキュメントがテーブル抽出をサポートしているかどうかを確認します
    if (!parser.Features.Tables)
    {
        Console.WriteLine("Document isn't supports tables extraction.");
        return;
    }
    // テーブルのレイアウトを作成します
    TemplateTableLayout layout = new TemplateTableLayout(
        new double[] { 50, 95, 275, 415, 485, 545 },
        new double[] { 325, 340, 365, 395 });
    // テーブル抽出のオプションを作成します
    PageTableAreaOptions options = new PageTableAreaOptions(layout);
    // ドキュメント情報を取得する
    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));
        // ドキュメント ページからテーブルを抽出します
        IEnumerable<PageTableArea> tables = parser.GetTables(pageIndex, options);
        // テーブルを繰り返します
        foreach (PageTableArea t in tables)
        {
            // 行を繰り返す
            for (int row = 0; row < t.RowCount; row++)
            {
                // 列を繰り返します
                for (int column = 0; column < t.ColumnCount; column++)
                {
                    // 表のセルを取得
                    PageTableAreaCell cell = t[row, column];
                    if (cell != null)
                    {
                        // テーブル セルのテキストを出力します
                        Console.Write(cell.Text);
                        Console.Write(" | ");
                    }
                }
                Console.WriteLine();
            }
            Console.WriteLine();
        }
    }
}

関連項目