CAD日記

AutoCAD,DXF,DWG,SXFなどCADのことから、仮想通貨や投資関係、PC関係、プログラミング、国内海外旅行情報など何でもござれ。@caddiary

ソフト開発

PDFアレコレはiTextSharp7も組み込むことにする

投稿日:

PDFiumViewerを使ってPDFアレコレという名のフリーソフトを作ってみたわけだが、PDFiumViewerの限界が見えてきた。

PDFiumで何ができるって、大きくとらえるとPDFファイルのロード(Load)・セーブ(Save)・テキスト抽出(GetPdfText)・描画(Render)・ページ削除(DeletePage)といったところ。描画した結果としてImageを取得できるからJpegやBmpに変換できるところが注目したポイントだった。ページ削除ができるんならば、ページごとの処理としての回転(RotatePage)もできるだろうと実装しはじめてはまった。

RotatePageは実質使えない。実行直後にPdfDocumentに反映しないから、わざわざMemoryStreamに保存してからLoadしなければならなかったことをクリアしたら、今度は
Rotate90による1回目の処理は動くが2回目が動かなかった。第2引数の角度指定は、現在の角度から相対的に回転するものだと勘違いしていたことが原因。Rotate0/Rotate90/Rotate180/Rotate270という4つのパラメータの中にRotate0があることから、絶対的な角度を指定するものだと気付いた。であれば、現在の角度を把握できないと、時計回りに90度回転させるなんてことができない。PdfDocumentでそんなプロパティがあるかと探すも存在せず。MemoryStreamの処理も複雑怪奇になってきて、こりゃいかんとやめることにした。PDFiumで使えるのは描画(画像変換含む)とテキスト抽出だけ。

PDFのページ削除/回転/追加/分解なんてところは、iTextSharpでやるのがよい。iTextSharpはライセンスが厳しいということを聞いていたので軽く調べた。バージョン4はゆるいからよく商用利用されているが、開発がストップしていてこの先しぼむばかりだから却下。バージョン5以降はAGPLv3なる相当キビシいライセンスが適用される。ようするに、ソース公開を要求されたら公開する義務を負うということ。ソースの入手先や手段を書いておけばいいらしい。おいらの場合、フリーソフトでやっているものだからソース公開しても何も問題はない。逆にソースを共有する誰かがいれば、協調して進化していけるという可能性が広がる。バージョン5は2017年に開発がストップして、今はバージョン7になっている。ということで、使うのはバージョン7とする。PDFimu同様、VisualStudioのNuGetで取得できる。

PDFiumとiTextShapを組み込んだ版としてPDFアレコレをバージョン2にするつもり。PDFの描画してわかりやすいようにした上で、画像変換/テキスト出力/もろもろページ処理をしてみようじゃないか。そうすると、有料版Acrobatの機能に近づいて、人気が出ると予想。ページ処理については、フリーソフトとして人気が高いpdf_asの機能を参考にする。

おもしろくなってきたぞ。会社でやらされているクソアプリケーション開発なんてテキトーに受け流しておいて、趣味としてプログラミングをやるってわけだ。本当はやりたいことが仕事になればいいんだけど、現実はそうならないからねぇ。

-ソフト開発

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

関連記事

PDFiumでPDFを描画してみたけど、こんなに簡単にできちゃっていいのかよ!

PDFiumで画像化とテキスト抽出が容易にできることは前回まででわかっていたので、今回は描画に取り組んでみた。

no image

VC6デバッグ

ここ数年抱えていた問題が一つ解決したので、ここに記しておこう。 VC6でデバッグしていると、たまに戻ってこないことがあったのさ。 別の言い方をすると、固まる、凍る、フリーズ、ハングアップ。 マウスは動 …

no image

尻有

知る人ぞ知るアングラ系サイト。 尻有とか、どーもとか。 定期的にチェックして、マイソフトがクラックされてないかどうか チェックしてるんよ。 復活してましたね、どーもが。 入り口が、なかなか見つからなか …

no image

家で仕事

そもそも家でパソコンを買ったのは、仕事をするためだ。 う~ん、仕事とも言えるけど仕事とも言えない感じがする。 ドスパラのPrime、22万円なり。 結構な投資だったけど、後悔はしてない。 今、そのNe …

no image

PDFiumでPDFを描画したりなんだりできるんだとさ

まずはこちらのネットニュースをご覧あれ。2014年に書かれたものでおもしろいことが書いてある。