2

既存のPDFがあり、PDFからテキストを抽出しています。ここに私がすでに持っているコードがあります

using iTextSharp.text.pdf;
using iTextSharp.text.pdf.parser;
using System.IO;

public string ReadPdfFile(string fileName)
{
    StringBuilder text = new StringBuilder();

    if (File.Exists(fileName))
    {
        PdfReader pdfReader = new PdfReader(fileName);

        for (int page = 1; page <= pdfReader.NumberOfPages; page++)
        {
            ITextExtractionStrategy strategy = new SimpleTextExtractionStrategy();
            string currentText = PdfTextExtractor.GetTextFromPage(pdfReader, page, strategy);

            currentText = Encoding.UTF8.GetString(ASCIIEncoding.Convert(Encoding.Default, Encoding.UTF8, Encoding.Default.GetBytes(currentText)));
            text.Append(currentText);
        }
        pdfReader.Close();
    }
    return text.ToString();
}

PDFページの寸法を取得したいと思います。この情報を含むラッパー クラスを作成できるように、ディメンションが必要です。次に、クラスは四角形が範囲外かどうかを判断できます。

4

3 に答える 3

10

PDFページの寸法を取得したいと思います。

PdfReaderクラスはそれらを取得するためのメソッドを提供します:

PdfReader pdfReader = new PdfReader(fileName);

Rectangle mediabox = pdfReader.GetPageSize(pageNr);
Rectangle cropbox = pdfReader.GetCropBox(pageNr);

実際に必要なディメンションに応じて、それらのいずれかを使用します。

于 2013-09-19T07:31:15.753 に答える
1

これを使用するのはどうですか:-

PdfReader reader = new PdfReader(m);
PdfImportedPage page = writer.GetImportedPage(pdfReader, i);
// size information
page.PageSize.Width;
page.PageSize.Height;
于 2013-09-18T18:50:13.257 に答える