お世話になります
VB6での画像のサイズ変更に関して教えていただけないでしょうか
機能としては、画像を読み込み、指定サイズ枠内のサイズで一旦フォームに表示して画像を確認
問題なければ、エクセルに保存なのですが
フォーム表示時にサイズを変更したにも関わらず、
エクセルに保存すると、元画像のサイズで保存されてしまいます。
表示と保存を同じtwip幅にするにはどのようにしたらよろしいでしょうか
******** 画像読み込み&リサイズ抜粋
Me.CDialog.CancelError = True
Me.CDialog.Flags = cdlOFNExplorer + cdlOFNLongNames + cdlOFNHideReadOnly + cdlOFNNoChangeDir + cdlOFNFileMustExist
Me.CDialog.Filter = strMessage(33) & "(*.jpg;*.bmp)|*.jpg;*.bmp"
Me.CDialog.Filename = ""
Me.CDialog.ShowOpen
Me.CDialog.Flags = 0
If Err Then
Err.Clear
On Error GoTo 0
Exit Sub
End If
If Trim(Me.CDialog.Filename) = "" Then
On Error GoTo 0
Exit Sub
End If
' 画像の比率を保って、画像をセットする
Me.PImage(Index).Stretch = False ' 一旦元の大きさで読み込み指定
Me.PImage(Index).Visible = False ' 一旦非表示にする
Me.PImage(Index).Picture = LoadPicture(Me.CDialog.Filename)
' 縦方向基準縮尺変更
If Me.PImage(Index).Height > Report_PImageHei Then
Me.PImage(Index).Stretch = True
HWTemp = Me.PImage(Index).Height
Me.PImage(Index).Height = Report_PImageHei
Me.PImage(Index).Width = Me.PImage(Index).Width * Me.PImage(Index).Height / HWTemp
End If
' 横方向基準縮尺変更
If Me.PImage(Index).Width > Report_PImageWid Then
HWTemp = Me.PImage(Index).Width
Me.PImage(Index).Stretch = True
Me.PImage(Index).Width = Report_PImageWid
Me.PImage(Index).Height = Me.PImage(Index).Height * Me.PImage(Index).Width / HWTemp
End If
********* エクセルへの出力抜粋(上記と別関数)
Clipboard.Clear
Clipboard.SetData Me.PImage(i).Picture
WB.ActiveSheet.Cells(YY1, XX1).Select
WB.ActiveSheet.Paste
pict = Selection.Name
Clipboard.Clear
No.1ベストアンサー
- 回答日時:
私のPCにVB6の環境が無い為、以下では動かないかもしれませんが、参考になればと思います。
'PictureMotoに読み取る
PictureMoto.Picture = LoadPicture(Me.CDialog.Filename)
Me.PImage(Index).Stretch = FALSE
Me.PImage(Index).Width = intDrawPictureWidth
Me.PImage(Index).Height = intDrawPictureHeight
'縮小して画像描画
Me.PImage(Index).PaintPicture PictureMoto.Picture, 0, 0, intDrawPictureWidth, intDrawPictureHeight
P.S.
Stretchは表示サイズを変更しているだけで、元の画像はサイズ変更していないと認識しております。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 【VBA】写真の貼り付けコードがうまく機能しません。 5 2022/09/01 18:43
- JavaScript 画像の表示位置 3 2022/12/23 08:25
- PHP imageフォルダに、画像をリサイズして保存する時のファイル名を変更したい 1 2023/05/30 11:39
- JavaScript jQueryでのドラッグアンドドロップについて 1 2022/07/30 09:10
- Visual Basic(VBA) 【VBA】写真の縦横比を変えずに貼り付ける 5 2023/06/13 11:42
- Visual Basic(VBA) ①ExcelVBAでカレンダーを作り、別のユザーフォームで日付を入力したいのですがエラーになります。 1 2023/02/17 18:39
- PHP 記述のおかしいところを教えて下さい。 1 2023/02/03 11:25
- Access(アクセス) Accessのテキストボックスの入力文字制限 1 2023/01/18 20:43
- PHP PHPで画像の渡しが上手く行きません。 1 2023/02/02 09:39
- PHP 入力した部分を表示させたまま(保持)するにはどうすれば良いでしょうか? 1 2023/01/25 11:14
このQ&Aを見た人はこんなQ&Aも見ています
-
餃子を食べるとき、何をつけますか?
みんな大好き餃子。 ふと素朴な疑問ですが、餃子には何をつけて食べますか? 王道は醤油とお酢でしょうか。
-
あなたにとってのゴールデンタイムはいつですか?
一週間の中でもっともテンションが上がる「ゴールデンタイム」はいつですか? その逆で、一週間でもっとも落ち込むタイミングでも構いません。 よかったら教えて下さい!
-
「覚え間違い」を教えてください!
私はかなり長いこと「大団円」ということばを、たくさんの団員が祝ってくれるイメージで「大円団」だと間違えて覚えていました。
-
許せない心理テスト
私は「あなたの目の前にケーキがあります。ろうそくは何本刺さっていますか」と言われ「12本」と答えたら「ろうそくの数はあなたが好きな人の数です」と言われ浮気者扱いされたことをいまだに根に持っています。
-
【大喜利】【投稿~11/22】このサンタクロースは偽物だと気付いた理由とは?
【お題】 ・このサンタクロースは偽物だと気付いた理由とは?
-
ピクチャーボックスの大きさに合わせて画像を表示
Visual Basic(VBA)
-
VB6でPNGファイルを扱うには?
Visual Basic(VBA)
-
VBの画面サイズについて
Visual Basic(VBA)
-
-
4
LoadPictureしたイメージデータのサイズを知りたい
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・【大喜利】【投稿~11/22】このサンタクロースは偽物だと気付いた理由とは?
- ・お風呂の温度、何℃にしてますか?
- ・とっておきの「まかない飯」を教えて下さい!
- ・2024年のうちにやっておきたいこと、ここで宣言しませんか?
- ・いけず言葉しりとり
- ・土曜の昼、学校帰りの昼メシの思い出
- ・忘れられない激○○料理
- ・あなたにとってのゴールデンタイムはいつですか?
- ・とっておきの「夜食」教えて下さい
- ・これまでで一番「情けなかったとき」はいつですか?
- ・プリン+醤油=ウニみたいな組み合わせメニューを教えて!
- ・タイムマシーンがあったら、過去と未来どちらに行く?
- ・遅刻の「言い訳」選手権
- ・好きな和訳タイトルを教えてください
- ・うちのカレーにはこれが入ってる!って食材ありますか?
- ・おすすめのモーニング・朝食メニューを教えて!
- ・「覚え間違い」を教えてください!
- ・とっておきの手土産を教えて
- ・「平成」を感じるもの
- ・秘密基地、どこに作った?
- ・【お題】NEW演歌
- ・カンパ〜イ!←最初の1杯目、なに頼む?
- ・一回も披露したことのない豆知識
- ・これ何て呼びますか
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・これ何て呼びますか Part2
- ・許せない心理テスト
- ・この人頭いいなと思ったエピソード
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・好きなおでんの具材ドラフト会議しましょう
- ・餃子を食べるとき、何をつけますか?
- ・あなたの「必」の書き順を教えてください
- ・ギリギリ行けるお一人様のライン
- ・10代と話して驚いたこと
- ・大人になっても苦手な食べ物、ありますか?
- ・14歳の自分に衝撃の事実を告げてください
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
「using Windows」でエラーが出る
-
uwscの画像認識に失敗します。
-
【EXCEL VBA】ダブルクリックで...
-
uwcs のマクロで画像認識をして...
-
【WPF】画像の切り替え
-
多角形を繋げるレイアウト
-
EXCEL VBA 複数のImageコントロ...
-
OpenCVで出力を24bitのbmpにす...
-
ヒストグラム類似度による画像...
-
UWSC 画像判定と条件分岐について
-
HTMLで画像をポップアップで表...
-
vb.net 画像の透過について
-
VBAのユーザーフォームのイメー...
-
画像処理したBitmapをピクチャ...
-
ローカルで動くページがサーバ...
-
jqueryスライダーを2段でスライ...
-
HTMLでこの画像を表示したいで...
-
Excel 画像反映 VBA について
-
HTMLです。画像をHTMLで表した...
-
UWSCでループ処理がうまくいき...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
背景画像の繰り返しについて
-
Excel ユーザーフォームで表示...
-
EXCEL VBA 複数のImageコントロ...
-
VBAのユーザーフォームのイメー...
-
uwcs のマクロで画像認識をして...
-
UWSC 画像判定と条件分岐について
-
【WPF】画像の切り替え
-
「using Windows」でエラーが出る
-
gif 画像上の ボタンに リン...
-
jqueryスライダーを2段でスライ...
-
同じ画像を複数回表示させる
-
UWSC「画像が無い場合」
-
UWSCの色判定
-
【EXCEL VBA】ダブルクリックで...
-
UWSCでループ処理がうまくいき...
-
画像のビット数を変更する方法
-
VBA シート毎に画像挿入
-
vb.net 画像の透過について
-
uwscの画像認識に失敗します。
-
C#で画像を他の画像に貼り付け...
おすすめ情報