掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
画像ファイル保存時にサイズを小さくするには? (ID:123431)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
魔界の仮面弁士さん、ありがとうございます。 ImageはImageコントロールです。 当初は画像の表示のみだったので、 表示させたい画像の縦横比を計算して、 画面の表示範囲内いっぱいに拡大/縮小表示させていました。 ところが、途中で仕様が変更になり、画像に取消線や文字(赤色)を 追加できるようにして欲しいとの要望がありました。 自分なりに調べたところ、 Imageコントロールでは画像の描画はできないとあったので Imageコントロールと同時に PictureBoxコントロールを非表示で配置し(AutoSizeはTrue)、 Imageコントロールで発生したイベント(MouseDown/Up)で座標を取得し、 そこからImageコントロール表示時に割出した拡大/縮小率を使用して PictureBoxコントロールに.Lineや.Printを使って描画後、 別File名で保存し、再度Imageコントロールに表示しています。 別File名で保存するのは『一つ前(後)の動作に戻る(進む)』の 機能を持たせるための仮保存です。 描画した画像は保存ボタンでデータベースに登録します。 一番最初の画像もデータベースから読み込んでいます。 そこで仮保存した時のデータが大きくなってしまうのです。 >・・・・・のようにしておいてください。(提示した URL 先の内容も、仮修正しておきました) この通り修正したら出来ました。ありがとうございます。 もう一つ問題があるのですが、同じ所なので別のスレを立てずに追加で質問させていただきます。 上記に<PictureBoxコントロールに.Lineや.Printを使って描画>とありますが、 ここは選択方式で普通の線か楕円かを選らんで描画するというプログラムにしています。 文字や線だと問題ないのですが、楕円を描画する時に、Ellipseを 使用すると、どうしても正しい位置に描画されません。 たぶん、TwipsとPixelsの問題だと思うのですが、 ImageコントロールMouseDown/Upイベントで取得する座標がTwipsで、 EllipseではPixelsで判断しているからではないかと考えています。 そこで、MouseDown/Upイベントで取得した座標をPixelsに変換して Ellipseを実行したいのですが、変換の仕方がよくわかりません。 (自分が考えている問題やこのやり方が正しいのかも分かっていないのですが) 説明不足や誤字が多くて申し訳ありませんでした。 続けての質問で恐縮ですが、宜しくお願いします。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.