CAD日記

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

ソフト開発

PDFアレコレで画面の拡大・縮小・移動ができるようにした

投稿日:

PDFアレコレをバージョンアップ。約4か月ぶり。
Ver3.05 2021/6/20
・PDFの描画位置を左右上下にセンタリングするようにした(以前は左上)。
・Ctrl+マウスホイール上下操作によって、PDF描画を拡大縮小できるようにした。ただし、移動との兼ね合いで一部描画領域が欠けることあり(不具合なのでいずれ直す)。拡大率をステータス領域に表示するようにした。
・Ctrl+マウスホイールドラッグ操作によって、PDF描画を移動できるようにした。
・捺印ボタンを押した際、画面の拡大/縮小/移動の結果を元に戻すようにした(捺印位置の計算がまだできていないため)。
詳細はコチラ。

念願の描画系処理を実装したが、まだ中途半端な状態。これまではPDFの中身を描画できるといっても、ウインドウ領域の中にいっぱいいっぱいで表示するだけで、任意の拡大・縮小ができていなかった。捺印するのに、画面を拡大して狙いの場所をはっきりさせるために実現したわけだが、肝心の捺印ポジションの計算がまだできていないから、捺印ボタン押下時に描画状態を強制リセットするという仕様。いやはや中途半端なり。

画面の拡大縮小移動は、pictureBoxやPDFiumの機能でサクっと実現できないかと調査したが結局できず。仕方なく、マウスイベントを取って、PDFiumのRenderする領域を可変として、pictureBoxの位置を変更した。いろいろやってみてわかったけど、この手の画面制御はこんな感じで泥臭くやるしかない。C#だから、C++と比べたら何をやるにも簡単ではあるが、今回の画面操作はけっこうてこずった。

近々、この中途半端なところを解消しつつ、コマンドラインから捺印できるようにしましょうかね。

-ソフト開発

執筆者:


comment

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

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

関連記事

no image

C#勉強中

Cから入ってC++になり、C#をやることになりました。時代はWebアプリケーションということなので。同じCという文字がついているので、まぁ同じようなもんでしょ、と楽観的観測でいたのですが...。初めて …

no image

ベクタープロレジ大賞

Vectorがやってる、もっとも人気のあったダウンロードソフトを決める賞です。 Vectorと言えば、フリーウェアやシェアウェアをダウンロードできるところで一番有名なところです。窓の杜というところもあ …

PDFアレコレをVer3としてリニューアルしたのは、GUI操作をちゃんできるようにしたかったからだ

PDFアレコレをVer3としてリニューアル。 Ver3.00 2020/5/24 ・起動画面をプレビュー画面(PDFの描画画面)に変更して、起動画面からすべての操作(画像変換・ページ編集・テキスト抽出 …

データ暗号化レポート

【様々な暗号化方式】 共通鍵暗号方式と公開鍵暗号化方式の2種類がある。両者を組み合わせてハイブリット方式を用いる場合もある。 共通鍵は、暗号化と復号化で同じ鍵を使う。アルゴリズムがシンプルで素早く実行 …

Teigha改めODAでDWGをDXFに変換するプログラムをつくってみよう!【Part.2】

Part.1ではあれこれと前提の話を書いたわけだが、今回は実際にVCのプロジェクトを作る準備をしてみよう。 1.ODAモジュールのダウンロード 2019 Update 2のKernelとDrawing …