2016年6月5日日曜日

itextsharpを試してみる

PDFからテキストデータの抽出を試してみる。
ネット上の情報によると

 var filename = comboBox1.Text;
            var text = new StringBuilder();

            using (var pdfReader = new PdfReader(filename))
            {
                var strategy = new SimpleTextExtractionStrategy();            

                for (int pageNum = 1; pageNum <= pdfReader.NumberOfPages; pageNum++)
                {
                    // 1ページまるごとテキスト化      
                    var lines = PdfTextExtractor.GetTextFromPage(pdfReader, pageNum,strategy);
                    text.Append(pageNum.ToString()+"::::::::::::::::::::"+lines+"\r\n");
   
                }
 
            }
            textBox1.Text = text.ToString();

}

という具合になっているが、これで実行すると、どうしても、ページの内容が累積していってしまい。
なぜかよくわからないけれど、試しに、
PdfTextExtractor.GetTextFromPage(pdfReader, pageNum,strategy);のstrategyを削除して
PdfTextExtractor.GetTextFromPage(pdfReader, pageNum);としたら
うまくいった。ストラテジーは不要のようだ。

0 件のコメント:

コメントを投稿