Your SlideShare is downloading. ×
Xj0009 イラレをスクリプトで動かしてみた
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Xj0009 イラレをスクリプトで動かしてみた

715

Published on

AdobeイラストレータではJavascriptらいくなスクリプトを使うことができます。ちょっと使ってみたので報告します。

AdobeイラストレータではJavascriptらいくなスクリプトを使うことができます。ちょっと使ってみたので報告します。

Published in: Design
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
715
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. 「イラレ」でスクリプトを動かしてみた。  注)「イラレ」=「アドビ・イラストレーター」です。   ズームス 保田 2012.12.27
  • 2. きれいなインフォグラフィクスを作れるツールがほしい PowerPointは論外 Keynoteはデフォルトテンプレート以外は面倒 Flashは印刷用の書き出し貧弱 Photoshopは基本的にラスター・データ主義 Unityは2Dやるには重すぎ Rはデザインセンス・ゼロ Processingはプリセットが少ない C++とかは敷居高すぎ イラレ(イラストレータ)はプログラミングできない???
  • 3. イラレにもスクリプトがあった! http://www.adobe.com/devnet/illustrator/scripting.html
  • 4. サンプル・スクリプトを動かしてみた MakeLinearGradient.jsx (デフォルトのサンプルスクリプト)
  • 5. スクリプトを編集する Extended Script Toolkit ■Windows:C:Program FilesAdobeAdobeUtilities CS6ExtendScriptToolkitCS6 ■Macの場合、 アプリケーション>ユーティリティ>AdobeユーティリティCS6>AdobeExtendedToolkitCS6 の下の ExtendedScriptToolkit.exe/app を起動。ファイル>開く... で、該当スクリプトを開く。
  • 6. 簡単なスクリプトを作ってみた ellipse.jsx var PI =3.14159265; // パイ(定数) //var targetdoc = app.documents.add( DocumentColorSpace.RGB ); //ドキュメントを新規追加 var targetdoc = app.activeDocument; //アクティブドキュメントの取得 var xColor = new RGBColor(); //RGBカラーオブジェクト var num = 12; //配置する円の個数 var delAng = 2*PI/num; //配置の角度増分 var xp = 400; //配置の中心X var yp = -300; //配置の中心Y var rad = 150; //配置円の半径 var radell = 25; //円の半径 for ( var i=0; i < num ; i++ ){ //円を配置する var xe= xp+ rad*Math.cos(delAng*i); var ye= yp+ rad*Math.sin(delAng*i); var theEllipse=targetdoc.pathItems.ellipse(-radell, -radell,radell*2,radell*2); //円(楕円)の描画 theEllipse.position = [xe-radell, ye+radell]; xColor = targetdoc.swatches[i+4].color; //スウォッチの色を順番に使う theEllipse.filled=true; //塗りつぶし theEllipse.stroked = false; //線 theEllipse.opacity = 70; //不透明度(0-100) theEllipse.fillColor =xColor; //塗りつぶし色の指定 }
  • 7. 簡単なスクリプトを作ってみた結果 ellipse.jsx
  • 8. こんなのも簡単! circlesAndLines.jsx
  • 9. さらにこんなことも(すみません、他人のです)! Metaball.js
  • 10. つまり、イラレでスクリプトが使えれば … 正確なレイアウトができる 修正・やり直しが簡単 再利用も容易 ケースによっては、単品でも手動より早い インフォグラフィクスとか、ぴったり! オリジナルのライブラリを蓄積したい インフォグラフィクスのオンライン・サービスもできそう!(詳しくは次回)
  • 11. イラレのScriptサンプル http://vectips.com/tricks/10-free-and-extremely-useful-illustrator-scripts/ http://vector.tutsplus.com/articles/web-roundups/20-free-and-useful-adobe-illustrator-scripts/ http://www.adobe.com/cfusion/exchange/index.cfm? s=5&from=1&o=desc&cat=210&l=-1&event=productHome&exc=17&PID=3985898 http://illustrator.hilfdirselbst.ch/dokuwiki/en/skripte/javascript/uebersicht フォルダを指定して読み込み http://dtpstepup.blog47.fc2.com/blog-entry-7.html 色々(日本語) http://d-p.2-d.jp/ai-js/pages/01_scripts/index.html 高度なスクリプトライブラリ http://www.aivault.com/2009/10/10/50-wonderfully-practical- scripts-for-adobe-illustrator/ スクリプト色々 http://park12.wakwak.com/ shp/cgi-bin/wiki.cgi/view/JavaScript_scripts Scripts for Adobe Illustrator http://park12.wakwak.com/ shp/lc/et/en_aics_script.html
  • 12. 参考:BoundsとControl Points 参考 http://cssdk.host.adobe.com/sdk/1.0/docs/WebHelp/app_notes/illustrator_paths.htm
  • 13. 参考:サンプルスクリプトを見てみる 1 // Check a document is open if ( app.documents.length > 0 ) { var docPathItems = app.activeDocument.pathItems; ----------------- if (gradientExists == false) { // Call createGradient function to create gradient myGradient var myGradient = createGradient(); ! // Apply gradient myGradient to all objects selected // in the document for ( var i=0; i < docPathItems.length ; i++ ) { docPathItems[i].filled = true; docPathItems[i].fillColor = myGradient; } redraw(); alert( "Note that MyLinearGradient has been added to the Swatches panel." ); } ! アプリケーションオブジェクトからドキュメント数を調べる ! アクティブドキュメントのパスを全て取得 ! グラデーションがまだ作られてない場合。。。 ! ! ! グラデーションを作成し、変数 myGradientに代入 ! ! ! ! ! ! ! すべてのパスにmyGradientを適用
  • 14. 参考:サンプルスクリプトを見てみる 2 function createGradient() { // Create a new gradient // A new gradient always has 2 stops var theGradient = app.activeDocument.gradients.add(); theGradient.name = "MyLinearGradient"; theGradient.type = GradientType.LINEAR; // Add 2 new gradient stops var newStop1 = theGradient.gradientStops.add(); var newStop2 = theGradient.gradientStops.add(); // Create color objects for all the gradient stops var startColor = new RGBColor(); var newStop1Color = new RGBColor(); var newStop2Color = new RGBColor(); var endColor = new RGBColor(); startColor.red = 0; startColor.green = 100; startColor.blue = 255; ----------------------------------- var myGradientColor = new GradientColor(); myGradientColor.gradient = theGradient; return myGradientColor; ! ! ! ! ! グラデーションオブジェクトを新規作成 グラデーションの名前 グラデーションの種類(リニア) ! ! グラデーション・ストップを追加 ! ! ! カラーオブジェクトを生成 ! ! ! 各RGBを定義していく ! 指定したグラデーションのGradientColorオブジェクトを作る

×