終了

変形のかかった配置イメージを等倍に修正する方法を教えて下さい

積極的な参加者 ,
Mar 07, 2022 Mar 07, 2022

変形をかけてしまった配置イメージを等倍(変形なし)に簡単に修正する方法を教えて下さい。

現状では再配置で対応していますが、サイズ変更や再マスク処理など手間がかかってしまいます。

倍率を計算して修正しても端数などが出て正確では有りません。

Indesignにように%指定ができないので難儀しております。

良い方法あるでしょうか。

mac版v26.03です

キーワード
スクリプティング , ツール
2.4K
翻訳
レポート
コミュニティガイドライン
他のユーザーへの思いやりを持ち、敬意を払いましょう。コンテンツの出典を明記し、投稿する前に内容が重複していないか検索してください。 さらに詳しく
community guidelines

correct answers 1 件の正解

Community Expert , Mar 08, 2022 Mar 08, 2022

画像の場合は回転は別処理必要ですね。

 

 

var tg = app.selection[0];
tg.rotate(tg.tags[0].value * -180/Math.PI);
tg.tags[0].remove(); 
var m= tg.matrix;
var mtx = app.invertMatrix(m);
mtx.mValueTX = 0;
mtx.mValueTY = 0;
tg.transform(mtx);
mtx.mValueA = m.mValueA;
mtx.mValueD = -m.mValueA;
mtx.mValueB = 0;
mtx.mValueC = 0;
mtx.mValueTX = 0;
mtx.mValueTY = 0;
tg.transform(mtx);

 

 



翻訳
Community Expert ,
Mar 07, 2022 Mar 07, 2022

変倍を解除するスクリプトならこれですね。

 

var m= app.selection[0].matrix;
var mtx = app.invertMatrix(m);
mtx.mValueTX = 0;
mtx.mValueTY = 0;
app.selection[0].transform(mtx);
mtx.mValueA = m.mValueA;
mtx.mValueD = -m.mValueA;
mtx.mValueB = 0;
mtx.mValueC = 0;
mtx.mValueTX = 0;
mtx.mValueTY = 0;
app.selection[0].transform(mtx);

 

反転行列を適用して原寸の状態まで戻した後で横方向の倍率を再度適用し直します。

翻訳
レポート
コミュニティガイドライン
他のユーザーへの思いやりを持ち、敬意を払いましょう。コンテンツの出典を明記し、投稿する前に内容が重複していないか検索してください。 さらに詳しく
community guidelines
Community Expert ,
Mar 07, 2022 Mar 07, 2022

あ〜、原寸ならこうですね

 

 

 

var m= app.selection[0].matrix;
var mtx = app.invertMatrix(m);
mtx.mValueTX = 0;
mtx.mValueTY = 0;
mtx.mValueD = -mtx.mValueD;
app.selection[0].transform(mtx);

 

 

 

……(^-^; 

翻訳
レポート
コミュニティガイドライン
他のユーザーへの思いやりを持ち、敬意を払いましょう。コンテンツの出典を明記し、投稿する前に内容が重複していないか検索してください。 さらに詳しく
community guidelines
積極的な参加者 ,
Mar 07, 2022 Mar 07, 2022

早速ありがとうございます。

原寸表示(100%)でなくても縦横同倍率であれば問題ありません。

ですが、教えていただいたスクリプトを動かくことが出来ませんでした。

文面をコピーしてテキストエディターで.jsxとして保存し、スクリプトフォルダーに入れましたがイラストレータで全く認識しません。

その他スクリプトでも当該jsxファイルはグレーアウトで読み込みできませんでした。

教えてくださったスクリプトはどの様にして使うのでしょうか?

翻訳
レポート
コミュニティガイドライン
他のユーザーへの思いやりを持ち、敬意を払いましょう。コンテンツの出典を明記し、投稿する前に内容が重複していないか検索してください。 さらに詳しく
community guidelines
Community Expert ,
Mar 07, 2022 Mar 07, 2022
保存するときにRTFとかになっていませんか?
基本的にBOM付きUTF-8エンコーディングのテキスト形式ふぁいるとして保存できていれば動くはずです。
とりあえず、以下のリンクからダウンロードし、対象の画像を選択した状態でスクリプトファイルをIllustratorのウインドウにドロップして下さい。

https://shared-assets.adobe.com/link/929a2473-cc25-485d-496e-ab3629632145
翻訳
レポート
コミュニティガイドライン
他のユーザーへの思いやりを持ち、敬意を払いましょう。コンテンツの出典を明記し、投稿する前に内容が重複していないか検索してください。 さらに詳しく
community guidelines
Community Expert ,
Mar 07, 2022 Mar 07, 2022

間違いのないよう手順かいておきます。

Mac標準アプリ「テキストエディット」を例にします。

 

・新規ファイルを開く

・フォーマットメニューを確認、「標準テキストにする」があればそれを実行(いまリッチテキストになっているという事になります)

「リッチテキストに変更」が見えていたら何もしなくてOK(いま標準テキストになっているという事になります)

※使い慣れたエディタを使う場合は、標準テキストでは「プレーンテキスト」と呼ばれている場合があります

スクリーンショット 2022-03-08 16.16.40.png

 

・その、標準テキストの状態で、スクリプトをブラウザからコピー&ペースト

・保存

  • 名前はてきとう、場所も一旦てきとうでOK、拡張子は.jsx
  • フォーマットはUTF-8
  • 拡張子が未指定の場合は".txt"にする、的なチェックは外す(外さないと、保存後によく見たら.jsx.txtになっちゃってた、とかあります)

スクリーンショット 2022-03-08 16.14.11.png

 

・スクリプトの置き場所は

Adobe Illustrator 2022  >  Presets  >  ja_JP  >  スクリプト

ここは間違えてないようですがいちおう(こっそり横取りしたい人向け)

 

以上です。当方のMonterey / 26.0.3 では動きました。

 

ところで実行結果これでした。ちょっとコード見直す必要あるかもしれません…w

スクリーンショット 2022-03-08 16.09.08.png

翻訳
レポート
コミュニティガイドライン
他のユーザーへの思いやりを持ち、敬意を払いましょう。コンテンツの出典を明記し、投稿する前に内容が重複していないか検索してください。 さらに詳しく
community guidelines
Community Expert ,
Mar 08, 2022 Mar 08, 2022
最新

画像の場合は回転は別処理必要ですね。

 

 

var tg = app.selection[0];
tg.rotate(tg.tags[0].value * -180/Math.PI);
tg.tags[0].remove(); 
var m= tg.matrix;
var mtx = app.invertMatrix(m);
mtx.mValueTX = 0;
mtx.mValueTY = 0;
tg.transform(mtx);
mtx.mValueA = m.mValueA;
mtx.mValueD = -m.mValueA;
mtx.mValueB = 0;
mtx.mValueC = 0;
mtx.mValueTX = 0;
mtx.mValueTY = 0;
tg.transform(mtx);

 

 



翻訳
レポート
コミュニティガイドライン
他のユーザーへの思いやりを持ち、敬意を払いましょう。コンテンツの出典を明記し、投稿する前に内容が重複していないか検索してください。 さらに詳しく
community guidelines
積極的な参加者 ,
Mar 08, 2022 Mar 08, 2022

色々詳しくありがとうございます。

ファインダー上でファイルを選択すると「標準テキストファイル」となっておりました。

当初のファイルを、指摘通り改めて保存し直したところ、無事に動作致しました。

横サイズを基準に縦サイズが変更され正体に戻すことが出来ました。

翻訳
レポート
コミュニティガイドライン
他のユーザーへの思いやりを持ち、敬意を払いましょう。コンテンツの出典を明記し、投稿する前に内容が重複していないか検索してください。 さらに詳しく
community guidelines