C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

PDFライブラリーとして推奨されるのは?

[トピック内 6 記事 (1 - 6 表示)]  << 0 >>

■103215 / inTopicNo.1)  PDFライブラリーとして推奨されるのは?
  
□投稿者/ 初心者 (14回)-(2024/06/29(Sat) 17:13:07)

分類:[.NET 全般] 

皆さん宜しくお願い致します。
さて、件名について、希望していることは、
PDFファイル対し編集するソフトを作成したいのですが
1.しおりの作成(内部参照及び、外部参照)
2.ページの抽出
3.ページの書込
4.フリーソフト

開発言語は、Vb.net 環境はVS2022、Win10

以上の条件で、以下のライブラリーの候補が上がってきました。
しかし、前述の1.のしおり作成(特に外部参照)のサンプルが
見当たらず、サンプルが無いことには、私の力量では解決出来ません。

候補としては、以下の3つの何れか、また他のものでも構いませんが、
基本的な機能は何れも装備しているでしょうけど、トータルで環境の
整った推奨のライブラリを参考意見としてお聞かせ願えないでしょうか。
宜しくご教示願います。

1.Pdfpig
 読みあり、しおり参考コードなし 
2.PdfSharp
 読みあり、しおり参考コードなし
3.itextSparp4.1.6
 抽出、読み書きあり、しおり外部参照コードなし
引用返信 編集キー/
■103236 / inTopicNo.2)  Re[1]: PDFライブラリーとして推奨されるのは?
□投稿者/ ded (3回)-(2024/07/09(Tue) 08:59:03)
No103215 (初心者 さん) に返信
> 4.フリーソフト
ここに違反していますが、
https://www.infotek.co.jp/pdflib/pdflib/pdflib-cookbook/interactive/nested_bookmarks.html

引用返信 編集キー/
■103241 / inTopicNo.3)  Re[2]: PDFライブラリーとして推奨されるのは?
□投稿者/ 初心者 (16回)-(2024/07/09(Tue) 13:58:32)
No103236 (ded さん) に返信
> ■No103215 (初心者 さん) に返信
>>4.フリーソフト
> ここに違反していますが、
> https://www.infotek.co.jp/pdflib/pdflib/pdflib-cookbook/interactive/nested_bookmarks.html

フリーでないものを挙げたのかとちょっと焦りましたが、
指摘URLを確認してみますと、評価版としての利用は可で、市販のソフトでした。
Pigとlibの勘違いか、または他のものも違反しているとの懸念を指摘されたのかと思います。

ただ、「推奨は何がありましか」と問われても、責任は取れないですし、回答
しずらいのではと、最近感じています。自己解決しなければならない内容ではなかった
かと少し反省しています。
取り下げたい気のありますが、少し待って、特に他のご意見がなければ、自己解決と
考えています。
個人的には、PDFpigで進めようかと思っています。
引用返信 編集キー/
■103253 / inTopicNo.4)  Re[3]: PDFライブラリーとして推奨されるのは?
□投稿者/ Azulean (1302回)-(2024/07/11(Thu) 07:29:56)
No103241 (初心者 さん) に返信
> ただ、「推奨は何がありましか」と問われても、責任は取れないですし、回答
> しずらいのではと、最近感じています。自己解決しなければならない内容ではなかった
> かと少し反省しています。

私がこのスレッドをスルーしているのは、「推奨は何か」というより、「質問者さんにとって都合の良いライブラリは何か」と受け止められる内容だったからです。
「無料」で「サンプルが充実していて」、「ほぼ組み合わせるだけで作れる」と都合の良い言葉が見えるためです。


・サンプルがないからを理由にするのではなく、ドキュメントの記載を読み込みましょう。
 別スレッドで指定されているように「機能がない」可能性もあり得ます。

・該当しそうなメソッドなどが見つかれば、それをいろいろと調べ、試行錯誤しましょう。
 プログラマーは「サンプルを切り貼りする」のではなく、「調べ、検討し、自分の希望する動作を自ら実現する」ことです。

・自らの努力が難しい場合は、機能を有し、サポートの手厚い有償品を買う、あるいは得意な会社に委託しましょう。
 外部支払いを避けるなら自分の時間を使うことになるのは必然です。それを放棄するなら、その時間の分だけお金をかけて解決するのも手です。
 それが趣味であろうとも、あなた自身が何らかの「利」を得るための行動でしょうから。


意に沿わない、辛口コメントだったかもしれませんが、「初心者」という言葉で免罪符にせず、今後を見据えて努力をいただければと思います。
(賛同できないならスルーしていただいて結構です)
引用返信 編集キー/
■103256 / inTopicNo.5)  Re[4]: PDFライブラリーとして推奨されるのは?
□投稿者/ くま (30回)-(2024/07/12(Fri) 01:24:23)
VBAやVB6の頃はライブラリなんかなかったから、バイト配列で読み込んでPDF構造でクラス化して...
自作で作るしか無かったので便利な時代になったな...

初心者さんが作ろうと思っているソフトが
1.業務用
2.ソフト購入で配布目的
3.フリーソフトで配布目的
4.完全個人用で使用
によってすすめられる方法が違うと思います。
あと
5.不特定種類のPDFに対応する
6.特定の種類(Excelから、ブラウザから等限定)のPDFに関して動作するソフトを作成する
かによっても変わります。

[Pdfpig]ちょっと調べてみました。
ライセンスに関して
https://github.com/UglyToad/PdfPig/blob/master/LICENSE
ちゃんとルールがあるので細かく確認してください。

次に機能
https://www.nuget.org/packages/PdfPig/0.1.9-alpha-20240702-65c64

Advanced Document Extraction
この部分でPDFの内容を分析しながらコピーを作成する方法の記載があります。
> 1.Pdfpig
> 読みあり、しおり参考コードなし
なのでまず、
・抽出、読み書きあり
ができます。("AddText"がありますから…)

次に「しおり」についてですが、
a. PDF構文(構造体)の資料から日本語での「しおり」がPDF構文では何と表現されているか調べます。
https://www.pdf-tools.trustss.co.jp/Syntax/catalog.html#catalog_entry
・しおり (アウトライン、outlines)

b. 「しおり」は「outlines」とわかりましたので、「"Pdfpig" outlines」で検索

c. 検索結果から該当のページを開いて「outlines」で検索する
https://github.com/UglyToad/PdfPig

Bookmarks (0.0.10)
The bookmarks (outlines) of a document may be retrieved at the document level:

ここにサンプルの記載があります。
[Pdfpig]上では「Bookmarks」オブジェクトで参照できる模様

d. この後は、実際「しおり」が書かれているpdfを読み込んで確認してください。

[Pdfpig]自体が書き込み(出力)機能があって、「しおり」の読み込み機能があるなら普通なら
「しおり」の書き込み機能があってもおかしくはありません。

もし無いのであれば
(a) [Pdfpig]だけでなく別のライブラリも使用してみる。
(b) [Pdfpig]だけでなく別のコマンドラインで実行できるソフトも使用してみる。
(c) バイナリで「しおり」有無でどう変化するか確認
「しおり」だけ付ける処理を自作する。
(d) 完全自作でライブラリを作成する。

調べ方は書いておきますので、頑張ってみて下さい。

引用返信 編集キー/
■103260 / inTopicNo.6)  Re[5]: PDFライブラリーとして推奨されるのは?
□投稿者/ 初心者 (17回)-(2024/07/13(Sat) 10:39:52)
No103256 (くま さん) に返信
> VBAやVB6の頃はライブラリなんかなかったから、バイト配列で読み込んでPDF構造でクラス化して...
> 自作で作るしか無かったので便利な時代になったな...
>
> 初心者さんが作ろうと思っているソフトが
> 1.業務用
> 2.ソフト購入で配布目的
> 3.フリーソフトで配布目的
> 4.完全個人用で使用
> によってすすめられる方法が違うと思います。
> あと
> 5.不特定種類のPDFに対応する
> 6.特定の種類(Excelから、ブラウザから等限定)のPDFに関して動作するソフトを作成する
> かによっても変わります。
>
> [Pdfpig]ちょっと調べてみました。
> ライセンスに関して
> https://github.com/UglyToad/PdfPig/blob/master/LICENSE
> ちゃんとルールがあるので細かく確認してください。
>
> 次に機能
> https://www.nuget.org/packages/PdfPig/0.1.9-alpha-20240702-65c64
>
> Advanced Document Extraction
> この部分でPDFの内容を分析しながらコピーを作成する方法の記載があります。
>>1.Pdfpig
> > 読みあり、しおり参考コードなし
> なのでまず、
> ・抽出、読み書きあり
> ができます。("AddText"がありますから…)
>
> 次に「しおり」についてですが、
> a. PDF構文(構造体)の資料から日本語での「しおり」がPDF構文では何と表現されているか調べます。
> https://www.pdf-tools.trustss.co.jp/Syntax/catalog.html#catalog_entry
> ・しおり (アウトライン、outlines)
>
> b. 「しおり」は「outlines」とわかりましたので、「"Pdfpig" outlines」で検索
>
> c. 検索結果から該当のページを開いて「outlines」で検索する
> https://github.com/UglyToad/PdfPig
>
> Bookmarks (0.0.10)
> The bookmarks (outlines) of a document may be retrieved at the document level:
>
> ここにサンプルの記載があります。
> [Pdfpig]上では「Bookmarks」オブジェクトで参照できる模様
>
> d. この後は、実際「しおり」が書かれているpdfを読み込んで確認してください。
>
> [Pdfpig]自体が書き込み(出力)機能があって、「しおり」の読み込み機能があるなら普通なら
> 「しおり」の書き込み機能があってもおかしくはありません。
>
> もし無いのであれば
> (a) [Pdfpig]だけでなく別のライブラリも使用してみる。
> (b) [Pdfpig]だけでなく別のコマンドラインで実行できるソフトも使用してみる。
> (c) バイナリで「しおり」有無でどう変化するか確認
> 「しおり」だけ付ける処理を自作する。
> (d) 完全自作でライブラリを作成する。
>
> 調べ方は書いておきますので、頑張ってみて下さい。
>
Azuleanさん、コメントありがとうございます、今後の参考にし拝受します。
くまさん、条件によって対応が変わるということ、便利な環境になりましたが、地道な努力はおしまず
内容に沿って時間はかかりそうですが、トライします。
先に挙げた通り、一度解決済みとさせていただきます。

解決済み
引用返信 編集キー/

このトピックをツリーで一括表示


トピック内ページ移動 / << 0 >>

このトピックに書きこむ