
No.2ベストアンサー
- 回答日時:
こんにちは
添付の画像はほぼ読み取れませんので、ご質問の文章からだけですが・・・
>Rotation=90の時は大きく右方向にずれてしまいます。
画像のサイズ等の計算をする際は、縦・横の大きさは元のサイズ(=回転していない状態)になります。
90度回転で表示されている場合には、見た目では、縦・横のサイズが逆転することになりますので、それを考慮した計算方法にしておく必要があります。
以前、似た様な質問がありましたので、ご参考までに。
https://oshiete.goo.ne.jp/qa/13123440.html
No.3
- 回答日時:
No2です。
>フレーム(Top:0 Left:0 W:381.5 H:252)の中央に
>画像(W:577 H:432 Rotation:90)を挿入する内容です。
情報がないのでよくわからないけれど、「フレーム」と言っているものはどうやらShapeらしいので、両方の中心の位置を揃えれば良いのでは?
中心合わせということは
フレーム.Left + フレーム.Width/2 = 画像.Left + 画像.Width/2
になるということなので、
画像.Left = フレーム.Left + フレーム.Width/2 - 画像.Width/2
となるはず。
ご提示の計算方法は考え方がおかしくないですか?
※ 回転量を一般化して計算しているのが、No2で挙げた質問への回答です。
※ 90°単位で回転をした場合の各プロパティの関係を、そちらでの回答のNo2様(=ここでもNo1で回答をなさっています)が図示してくださっています。
No.1
- 回答日時:
添付やされる画像は500×500ピクセルに縮小されるから、添付した画像の文字は潰れて見えないよ。
90度と270度の時は、別処理が必要。
回転してても画像のトップレフトが左上ではなく、
0度にした時のトップレフトになってるからかな。
セル枠に埋め込む時は、
縦横比を取得しで、
縦横比を1:1にして、
貼り付けたい位置に移動して、
縦横比を戻す、
みたいな手法で処理してました。
寝る前のスマホ回答なので、ザックリした内容ですがヒントになれば。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセル バーコード作成で他のシートを参照するには? 2 2023/05/03 16:57
- Word(ワード) 写真3枚をA4に貼り付けたい 5 2023/07/03 14:36
- ハッキング・フィッシング詐欺 エクセルパスワードについて 2 2021/12/20 16:45
- Excel(エクセル) エクセルの行を巾を変えずに増やす方法 9 2023/11/06 13:31
- Excel(エクセル) エクセルで条件付き書式を使わずにセルの文字の色を変える方法を教えて下さい 8 2023/07/28 01:15
- Excel(エクセル) Excel 表の作成について 3 2022/06/16 12:15
- Excel(エクセル) Excel VBA 指定フォルダに格納されている全エクセルファイルに指定シートを挿入する方法について 1 2022/08/22 11:53
- Excel(エクセル) マクロ VBAを教えてください。 4 2021/12/14 14:07
- その他(Microsoft Office) 複数の写真を1枚に印刷 5 2023/05/05 22:41
- Word(ワード) ワード(2019)に落とした写真(画像)のサイズの変更 2 2021/12/20 11:57
このQ&Aを見た人はこんなQ&Aも見ています
-
【VBA】写真の貼り付けコードがうまく機能しません。
Visual Basic(VBA)
-
エクセルVBAで縦向きの画像の挿入・回転
Excel(エクセル)
-
マクロを実行すると画像がズレてしまいます
その他(Microsoft Office)
-
-
4
【VBA】写真の縦横比を変えずに貼り付ける
Visual Basic(VBA)
-
5
EXIF情報を出力するマクロ
Visual Basic(VBA)
-
6
エクセルVBAで画像を回転させる方法
Excel(エクセル)
-
7
VBA 写真の挿入 回転
その他(Microsoft Office)
-
8
EXCEL2007で、回転された図を任意の場所に設定できない
Visual Basic(VBA)
-
9
エクセルマクロでシート内にある画像のみを選択する
Excel(エクセル)
-
10
EXCELのVBAで画像を選んだ順に貼り付ける方法
Excel(エクセル)
-
11
VBAエクセルに貼り付けた画像をセルにあった大きさにしたい(等倍)
Excel(エクセル)
-
12
VBAのユーザーフォームのイメージコントロールに読み込んだ画像を左に90°回転させたい
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ページが変なふうに切れる
-
邪魔なwww.softonic.jpの消し方...
-
エクセルに添付された画像が×に...
-
ピクシブ
-
検索した時に出てくる現在地情...
-
Excelで連続するデータの個数を...
-
Gmailの設定。送られて来た添付...
-
メガネフレームの名前
-
びんちょには、人並みの恥の概...
-
疑問に思うこと。
-
IEに表示される画面全体又は一...
-
みなさん、お聞きしたいですが...
-
INAXのウォシュレットを外して...
-
GASでGmail送信をするとある文...
-
excelの列幅高さが勝手に変わる...
-
ワードA3で作成したファイルをA...
-
Windowsで大量の画像サイズを半...
-
PDFファイルを開く、印刷する
-
フォトショップで切って分ける...
-
ワード B4→A4に縮小印刷す...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
邪魔なwww.softonic.jpの消し方...
-
ページが変なふうに切れる
-
Excelで連続するデータの個数を...
-
エクセルに添付された画像が×に...
-
WiFiのストリーム数について
-
分子式を求める問題です。
-
検索した時に出てくる現在地情...
-
パソコンでマイプレイスを表示...
-
INAXのウォシュレットを外して...
-
GASでGmail送信をするとある文...
-
Gmailの設定。送られて来た添付...
-
図の濃淡を調節するには。
-
このハードディスクは危ないで...
-
この表示の意味は?
-
「言ったきり」という言葉は聞...
-
電源ケーブルだけを買う方法 閲...
-
BF3NH3 と CH3OH2+ のルイス構...
-
柱サボテンの染みてしまった部...
-
VBAで写真を設定したフレームに...
-
メガネフレームの名前
おすすめ情報
画像がつぶれているとのことですが、フレーム(Top:0 Left:0 W:381.5 H:252)の中央に画像(W:577 H:432 Rotation:90)を挿入する内容です。処理の結果はフレームから大きく右にづれて、画像のLeftが387になっています。
処理の式はRotation=0の時の
画像.Top=画像.Top+(フレーム.Height - 画像.Height)/2
画像.Left=画像.Left+(フレーム.Width - 画像.Width)/2 をRotation=90のため画像.Heightを画像.Widthに画像.Widthを画像.Heightに変更して実行しました。
よろしくお願いします。
No2様 回答ありがとうございます。おっしゃる通りフレームと言っているのはShapeのことです。
ただ、Rotationが90の画像(写真)のため高さと幅が逆転していると考え
画像.Left=画像.Left+(フレーム.Width - 画像.Height)/2としましたが間違いでしょうか?