リンクをクリップボードにコピー
コピー完了
物撮りをしていますが、商品の寸法をリサイズするときにCmd + iのリサイズ画面で指定できるのは画像の縦横の長さだけです。
イラレに貼り付けるときにイラレ上でリサイズを行うと非常に効率が悪いので、Photoshop上でリサイズしたいのですが、
商品が斜めに向いているときに、定規で計測してその距離を例えば5.0cmに設定(解像度は成り行きで)したいのですが、どうやるのかわかりませんのでご教示願います。
リンクをクリップボードにコピー
コピー完了
ご質問内容を理解できていないかもしれませんが,例えばこういうこと(下記リンク先)でしょうか。
InDesign/Illustratorに原寸配置するだけで、顔のサイズが揃うPhotoshopリサイズ方法 – やもめも
リンクをクリップボードにコピー
コピー完了
そうなんですが、この方法だと傾きを変える&クロップが必要なんです。
たとえば、棚Aの扉1段の縦が実寸で200mmだとします。
棚B(扉1段が実寸で250mm)は棚が同じ角度になるように撮影している前提ですが、撮影したときの被写体までの距離が違うと、当然画像上の大きさが異なるのでリサイズが必要になるのです。
現状はクロップツールで行っているのですが、いちいちDelete Cropped Pixcelのチェックが外れていることを確認してから傾き変えつつクロップして、リサンプルオプションんを外してリサイズして、またクロップツールで扉以外の枠が入るようにクロップして、とやっていると微妙な傾きは変わりますし手間がかかってしまいます。
こんな説明でわかりますでしょうか?
リンクをクリップボードにコピー
コピー完了
ちょっと手を動かす時間はないのですが、要訣のみ記しておきます。
ものさしツールのパラメータ(座標だー角度だー距離だーなど)はパネル上で眺めることだけしかできず、値を取得できないため、
ペンツールを代用。
測りたい辺の始点にパスを打ち、そのまま終点までハンドルを伸ばす。
これならスクリプトで値を取得することができます。
pathPoint.anchor と pathPoint.leftDirection の座標差分から距離が算出できます。
その距離を目指す距離で割り算した結果を、現在のサイズに掛ける。
(パスはどこかの段階で削除)
といったスクリプトをどなたか書いて差し上げてみては。
リンクをクリップボードにコピー
コピー完了
スクリプトは誰が書くんですかねぇ。。。
私はスクリプトがかけないので、当面Yamo74さんの方法でやることにします。
気が向いたらどこかに依頼してスクリプト書いてもらうかもしれません。
リンクをクリップボードにコピー
コピー完了
>スクリプトは誰が書くんですかねぇ。。。
ご自分で書く、書ける人に依頼する(もちろん有償の場合あり)、といったところですが…
書けると便利ですよ。頼むのが上手い人になるのも手ですが…
前回フロシキだけ広げてしまったので自己研鑽の意味でタダで書いてみました。
(function(){
//ドキュメントがないと死んでしまう
if(!app.documents.length) return;
var doc = app.activeDocument, wpath, p;
//1点だけの作業用パスがないと動かさない
if(!doc.pathItems.length) return;
for(var i = 0; i < doc.pathItems.length; i++){
if(doc.pathItems.kind == PathKind.WORKPATH) {
wpath = doc.pathItems;
break;
}
}
if(wpath == undefined) return;
if(wpath.subPathItems.length != 1) return;
if(wpath.subPathItems[0].pathPoints.length != 1) return;
p = wpath.subPathItems[0].pathPoints[0];
//パスポイントから進行方向ハンドル先端までの距離(ピクセル)を出す
var p0 = p.anchor, p1 = p.leftDirection;
var d = Math.sqrt(Math.pow(p1[0] - p0[0], 2) + Math.pow(p1[1] - p0[1], 2));
var uv = new UnitValue(d, "px");
//uv.baseUnit = UnitValue(1 / doc.resolution, "in"); //まちがい
uv.baseUnit = UnitValue(1 / 72, "in"); //モニタ解像度が正解みたい
//定規の単位に変換
var dv = uv.as(doc.width.type);
//希望の距離を入力
var pr = prompt("距離を入力しなさいっ(単位:" + doc.width.type + ")", dv);
if(pr == null) return;
var resizeVal = UnitValue(pr + doc.width.type) / dv;
//リサイズ
doc.resizeImage(undefined, undefined, doc.resolution / resizeVal, ResampleMethod.NONE);
//計測用パスを削除
wpath.remove();
})();
〈前準備〉
最前面ドキュメント上で、作業用パスにアンカーポイント1点だけ置き、ハンドルを伸ばします。
(アンカーポイントの位置 から ハンドルの先っぽ まで、スクリプトが距離を測ります)
〈スクリプト実行〉
パスに不備があれば何も起こりません(警告も出しません)。
条件にあったパスがあれば距離を測ってプロンプトダイアログが出ます。
・メッセージの末尾「単位:**」には、環境設定の「定規の単位」が使われます。
・入力欄には、定規の単位に基づいたパス〜ハンドル間の距離が入っています。
入力欄に任意の数値を入力してOKボタンを押します。
作例では、このあと「20」と入力しました。
リサイズされて、測距用のパスが削除されて終了となります。
ためしに配置してみたところ
…いけてますね。
再サンプルなしのリサイズなので、解像度は後で一括で変更するのがよいかと。
よかったら使ってみてください。
あわよくば「スクリプトだいすきー!」となってくれたらうれしいです。
リンクをクリップボードにコピー
コピー完了
凄いです!
神です!
今日は会議づくしでぜんぜん試す時間なかったので次回やってみます。
ありがとうございます。
リンクをクリップボードにコピー
コピー完了
blogの著者です(笑
でしたら、昔ながらの方法を採りますかね。前は電卓でしたが、今のPhotoshopの画像解像度ダイアログでは四則演算ができますから、環境設定でものさしの単位をmmやcmにしておいてから、
・ものさしで斜めに測って情報パネルでLの値を見る(60とします)
・目的のサイズを20とする
・画像解像度ダイアログで「%」を選択、20*100/60と入力し、
・タブキーで解像度欄まで移動して必要解像度を入力。※%欄が自動的に更新されます。
以上でどうでしょうか。
リンクをクリップボードにコピー
コピー完了
画像解像度ダイアログでは四則演算ができるんですね。
初めて知りました。
ありがとうございます。
リンクをクリップボードにコピー
コピー完了
仕上がりに納得できるかどうかわかりませんが、Vanishing Pointを使えば、3Dソフトのように地面に設置した状態でcm単位の移動や拡大縮小ができます。
Photoshop の Vanishing Point の使用
下図の場合は、正面のグリッドを作成して辺にある中央のポイントをドラッグすれば、側面と上面にグリッドが作成されます。(面作成ツール)
ものさしを使って、縦のサイズを32cmに設定。他の辺は比率に合わせて自動で設定されます。
オプションは「Photoshop3Dレイヤーを作成」にチェックを入れておけば、グリッドの描画等は、入れなくても良いと思います。
Photoshopに戻ると、サイズ設定があるので縦のサイズ32cmを入力します。
全ての面をグループにして、移動・回転やサイズ変更をします。
属性のメニューにサイズが表示されているので、cm単位で調整できます。
最後には、レンダリングして書き出します。
リンクをクリップボードにコピー
コピー完了
ヴァニッシングポイントはあまり使う機会がなかったので、これを期に少し触ってみます。
リンクをクリップボードにコピー
コピー完了
ちなみに数値入力欄での四則演算が実装されたのはVer.20(CC2019)以降です。それ以前のPhotoshopでは、電卓使ってください。
※このようにバージョンによってやり方が多少異なるので、できれば次回ご質問される際には環境情報記載してください。
さらにちなみにですが、スクリプトは自分で書けるようになると楽しいですよー
Photoshop JavaScript Reference フォトショップ JavaScript リファレンス
Photoshopの自動化の方法 アクションで無理ならscriptで | カラーマネジメント実践ブログ 〜フォトレタッチの現場から〜
学習の入り口ならここらへんですかね。
普通に仕事として作成依頼するとUI付けてまぁ結構な金額がかかりますから、Actionのサポート的なものなら書いちゃうのが早いかと思います。