テキストと画像がハイライトテキスト(U)ツールでハイライト表示されたpdfファイルがあります。強調表示されたすべてのコンテンツを別々のイメージとして自動的に抽出してフォルダに保存する方法はありますか?私は読みやすいテキストがほしくない。私はちょうどイメージとしてすべての強調表示されたコンテンツが欲しい。ありがとうpdfのハイライトされた内容を画像として自動的に抽出する
答えて
各テキストを別々のハイライトまたはすべてのハイライトとして個別のペインに表示しますか?
PDFライブラリを使用してすべてのアノテーションオブジェクトとそのプロパティを繰り返して、ハイライト注釈を使用しているものを確認する必要があります。ハイライトアノテーションを見つけたら、アノテーションの位置とサイズ(バウンディングボックス)を抽出できます。
アノテーションバウンディングボックスのリストを取得したら、PDFファイルをPNG/JPEG/TIFFなどのイメージフォーマットにレンダリングして、必要な注釈テキストのレンダリングされたイメージを抽出/クリップできるようにする必要があります。あなたは
http://www.quickpdflibrary.com(私はQuickPDFのために相談する)または http://www.itextpdf.com
含めてこれを行うことができ、さまざまなPDFライブラリがここにありますGDI +またはlibtiffの
のようなものを使用することができ、クイックPDFライブラリに基づいてC#関数でありますそれはあなたが必要とするものです。
private void ExtractAnnots_Click(object sender, EventArgs e)
{
int dpi = 300;
Rectangle r;
List<Rectangle> annotList = new List<Rectangle>();
QP.LoadFromFile("samplefile.pdf", "");
for (int p = 1; p <= QP.PageCount(); p++)
{
QP.SelectPage(p); // Select the current page.
QP.SetOrigin(1); // Set origin to top left.
annotList.Clear();
for (int i = 1; i <= QP.AnnotationCount(); i++)
{
if (QP.GetAnnotStrProperty(i, 101) == "Highlight")
{
r = new Rectangle((int)(QP.GetAnnotDblProperty(i, 105) * dpi/72.0), // x
(int)(QP.GetAnnotDblProperty(i, 106) * dpi/72.0), // y
(int)(QP.GetAnnotDblProperty(i, 107) * dpi/72.0), // w
(int)(QP.GetAnnotDblProperty(i, 108) * dpi/72.0)); // h
annotList.Add(r); // Add the bounding box to the annotation list for this page.
string s = String.Format("page={0}: x={1} y={2} w={3} h={4}\n", p, r.X, r.Y, r.Width, r.Height);
OutputTxt.AppendText(s);
}
}
// Now we have a list of annotations for the current page.
// Delete the annotations from the PDF in memory so we don't render them.
for (int i = QP.AnnotationCount(); i >= 0; i--)
QP.DeleteAnnotation(i);
QP.RenderPageToFile(dpi, p, 0, "page.bmp"); // 300 dpi, 0=bmp
Bitmap bmp = Image.FromFile("page.bmp") as Bitmap;
for (int i=0;i<annotList.Count;i++)
{
Bitmap cropped = bmp.Clone(annotList[i], bmp.PixelFormat);
string filename = String.Format("annot_p{0}_{1}.bmp", p, i+1);
cropped.Save(filename);
}
bmp.Dispose();
}
QP.RemoveDocument(QP.SelectedDocument());
}
こんにちはAndrew、コードを教えてくれますか?私はquickpdflibraryかitextpdfのどちらかと一緒に行きたいです。 – thesensemakers
ここで私はサンプルファイルを添付しています。http://www.sendspace.com/file/hejhkp – thesensemakers
Quick Post Libraryを使ってC#でうまくいくいくつかのコードで元の投稿を更新しました。 –
- 1. pdfとしてpdfから画像を抽出する
- 2. PDFから画像を抽出する
- 3. zipファイル自体がTFSにチェックインされたときに、zipファイルの内容を抽出してチェックインする
- 4. pdfを使用して画像を抽出する
- 5. Androidでitextを使用してpdfに埋め込まれた画像内のテキストを抽出する
- 6. 画像内のパターンを抽出する
- 7. 抽出されたファイルを自動ハイパーリンク
- 8. 画像の高さに合った反応的な内容
- 9. ディレクトリの内容が変更されたときにbashスクリプトを自動的に呼び出す方法
- 10. pdfファイルからすべての画像を抽出
- 11. 自動的に生成され、pdfを表示しました
- 12. データベースが変更された場合、内容を自動的に更新する
- 13. 抽出したビデオフレームを画像として保存する
- 14. yii2グリッドビューフィルタのテキストフィールドの内容が自動的に選択されました
- 15. HorizontalScrollView内の各画像ビューに対する動的チェックボックスと、チェックされた画像ビューを削除する
- 16. S3リンクされると画像が自動的にダウンロードされます
- 17. pdfファイルからすべての画像とテキストを抽出する
- 18. scrapyを使用して動的に読み込まれた画像のsrcを抽出する方法
- 19. スキャンされたPDFファイル(Java)から画像を作成して抽出する方法
- 20. zipから抽出したときに壊れた画像
- 21. asp.netのpdfから画像を抽出する
- 22. 新しいタプルがDBに追加されたときに内容を自動的に更新する
- 23. 自分の画像からPCDファイルを抽出するには?
- 24. PDFを自動的に生成してサーバーに自動的にアップロードする
- 25. 画像を選択して自動的にアップロードする
- 26. BeautifulSoupを使用して画像のキャプションと画像のURLを抽出する
- 27. pythonでPDFから画像を抽出中にエラーが発生しました
- 28. SVG画像の幅と高さが自動的に表示されます
- 29. pdfファイルからベクトル画像を抽出する
- 30. PDFSharpでPDFからFlateDecoded画像を抽出する方法
強調表示された各コンテンツを別々の画像として欲しいです。 – thesensemakers