前提・実現したいこと
Adobe Illustratorにて
予め選択されている四角形に
スクリプト(JavaScript)で
グラデーションを設定、
同時にグラデーションの角度を設定したいと考えています。
発生している問題・エラーメッセージ
グラデーションの設定は実現できましたが、
グラデーションの角度が設定できません。
デフォルトの0°のままです。
該当のソースコード
Adobe
1//アクティブドキュメント 2var DOC = activeDocument; 3 4//選択されているオブジェクト 5var SEL = DOC.selection; 6 7//新規グラデーションオブジェクトを追加 8var gradObj = DOC.gradients.add(); 9 10//グラデーションカラー 11var gradColor = new GradientColor(); 12 13//グラデーションの詳細設定 14gradObj.type = GradientType.LINEAR;//線形グラデーション 15gradObj.gradientStops[0].rampPoint = 0;//開始位置 16gradObj.gradientStops[0].midPoint = 50;//中間位置 17gradObj.gradientStops[0].color = setRGBColor(255,0,0);//開始色 18gradObj.gradientStops[0].opacity = 0;//不透明度0% 19gradObj.gradientStops[1].rampPoint = 100;//終了位置 20gradObj.gradientStops[1].color = setRGBColor(255,0,0);//終了色 21gradObj.gradientStops[1].opacity = 100;//不透明度100% 22 23gradColor.gradient = gradObj; 24 25 26//選択オブジェクトの塗りにグラデーションを設定 27SEL[0].fillColor = gradColor; 28 29 30/---※1-------------------------------------------/ 31//GradientColorのangleプロパティ(グラデーションの角度)を読み込んで 32//アラート表示(デフォルトの0度が表示される) 33alert(SEL[0].fillColor.angle + "度"); 34 35 36 37/---※2--------------------------------------------/ 38//GradientColorのangleプロパティ(グラデーションの角度)に「20度」を 39//設定しているつもり 40SEL[0].fillColor.angle = 20; 41 42 43///////////////////////////////////// 44//再度グラデーションの角度を読み込んでアラート表示 45//(「20度」が表示されることを期待しているが実際には「0度」のまま 46// 当然四角形のグラデーションの角度も「0度」のまま) 47alert(SEL[0].fillColor.angle + "度"); 48 49 50 51 52//RGBカラーを設定し、RGBカラーオブジェクトを返す 53function setRGBColor(r,g,b) 54{ 55 var RGB = new RGBColor(); 56 RGB.red = r; 57 RGB.green = g; 58 RGB.blue = b; 59 return RGB; 60} 61 62
試したこと
SEL[0].fillColor.angle
にてドキュメント上にて選択している四角形に設定しているグラデーションの角度の読み込みができた(ソースコードの※1)ので
SEL[0].fillColor.angle = 20;
にてグラデーションの角度を「20度」に変更できると考えました(ソースコードの※2)が
実際には、変更されません。
補足情報(FW/ツールのバージョンなど)
macOS Mojave バージョン10.14.6(18G6032)
Adobe Illustrator 2021 (25.1)
あなたの回答
tips
プレビュー