CAD日記

主にAutoCADのことについて書いているけど、近頃は投資系ネタに注力している。自動売買、仮想通貨、PC関係、プログラミングなど。@caddiary

ソフト開発

本質的にPDFに捺印できるようにしたPDFアレコレを公開

投稿日:

先週に引き続き今週もPDFアレコレをバージョンアップ。変更点は以下の通り。

Ver2.02 2020/3/21
・捺印時に画面でクリックしたところに配置できるようにした。(Ver2.01は固定値)
詳細はコチラ。

上でも触れたように、PDFに捺印できるんだったら画面で位置を指定できなきゃ意味がない。課題は画面でクリックした位置を取得して、どうやってPDFの座標系に落とし込むかってことだった。簡単に言うと、クリックした点を画面のX方向とY方向に対して比率で持っておいて、いざPDFに配置するときにその比率分で座標計算するだけでよかった。PDFが90度や270度で回転している場合に、PDFの高さと幅が逆になるってことに気付くのにずいぶん時間がかかってしまった。このあたりは、言葉では伝えられないのでコードで表そう。

マウスクリックしたときの処理で、XY方向の比率を保持して捺印実行部を呼び出している。

捺印実行部の処理。PDFの回転と画面クリック時の比率を考慮。画面中央に捺印イメージがあるので、捺印用PDFの用紙サイズの高さと幅を半分引いている。

PDFiumの描画エンジンとiTextSharpのPDF編集が組み合わさると、こんなにアレコレできるんだということの一つをはっきり形にできた。でも、まだ課題はある。捺印用PDFが4MBとデカイから、捺印した結果のPDFがデカくなるし、メモリーだってやけに消費してしまう。Web任印というサイトで作ったPDFだからしょうがないんだけど、もっとサイズが小さくならんかね。たぶんハンコ用の文字フォントを埋め込まずにアウトライン化しているためだと思う。たかだか2文字や3文字のために4MBはデカイよな。透過ありの画像またはフォントのベクトル情報で配置できれば、格段にスリム化できるはず。おもしろくなってきたじゃないか。

-ソフト開発

執筆者:


comment

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

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

関連記事

no image

簡単インストーラ

インストーラと言えば、Install Shield です。最新バージョンは11.0で価格は44万1千円。高いんです。高機能版(Premier Edition)で、多国語(全33ヶ国語)対応という代物だ …

no image

イテレータ(Iterator)

あるコンポーネントで初めて出会いました。コンポーネントがバージョンアップされたときに、オブジェクト指向的な作りに一新されて、いろいろ変わったのですが中でもイテレータという訳の分からないものに遭遇して、 …

no image

テキストファイルの最大行数

【2018/12/24追記】以下の記事も参考になるかな。 扱えるテキストファイルの最大行数は1億行 バカでかいテキストファイルを作る必要があって、結果約2GBにもなった。 CADから出力するんだけど、 …

no image

いたちごっこ2

恐るべしクラッカー。万全と思われた対策も空しく、2回目のクラックが行われたところから話は始まります。 ●2度目のクラック 開発者は、某シリアル系クラックサイトで2度目の衝撃の遭遇しました。クラック結果 …

no image

PMサーバー版リリース

ペーパーモデル化ツールサーバー版の宣伝。 詳しくは、kensetsu21のこちらのサイト(PDF)をご覧あれ。 クライアントは、サーバー上の共有フォルダにファイルを ドラッグ&ドロップするだけ。 サー …