イラストレーターのドキュメントに直接スクリプトを書く2
イラストレーターのドキュメントに直接スクリプトを書くという思いつきだけだったものを、もちっと使えるようにしてみる。
テキストフレーム選択して実効してたんじゃ、なにもできないのでテキストフレームに"ScriptInTheDoc"という名前のついたものからテキストを取り出して実効するように変更。
"ScriptInTheDoc"という名前のついたテキストフレームがなければつくります。
"ScriptInTheDoc"という名前のついたフレームが複数ある場合は、最前面のものが優先されるようです。
//ScriptInTheDoc (function(){ function ScriptInTheDoc () { var getContents = function(){ return app.activeDocument.textFrames["ScriptInTheDoc"].contents; } try{ contents = getContents(); }catch(e){ thisDoc = app.activeDocument; var rectObj = thisDoc.pathItems.rectangle(600, 200, 400, 300); var areaText = thisDoc.textFrames.areaText(rectObj); areaText.contents = "//write javascript here!"; areaText.name = "ScriptInTheDoc"; areaText.textRange.characterAttributes.size = 18; areaText.spacing = 10; contents = getContents(); } try{ contents = contents.replace(/”|“/gm,'"'); contents = contents.replace(/’|‘/gm,"'"); eval(contents); }catch(e){ alert (e); } } //main ScriptInTheDoc(); })();
使用感は、正直微妙〜かな。お手軽感があるようなないような。
もう少し使い続けてみます。