タグ

ブックマーク / www.openspc2.org (28)

  • 特定のウィンドウの表示位置とサイズを指定する

    ■プログラム説明(ソースコード説明) 特定のウィンドウのサイズを変更するにはbouns配列にy1,x1,y2,x2の座標順に配列として設定します。書き込みだけでなく読み出すこともできます。 ■ソースコード x1 = 100; y1 = 80; x2 = 640; y2 = 480; app.windows[0].bounds = [y1,x1,y2,x2]; ■使い方 1:スクリプトを実行します。 2:最前面にあるウィンドウの表示位置とサイズが変更されます。 ■ポイント なし ■実際のスクリプトをダウンロード(sample.jsx.zip)

  • クリエイター手抜きプロジェクト

    このページは日刊デジタルクリエイターズに毎週連載している「クリエイター手抜きプロジェクト」をアプリケーション別に整理しサンプルファイルをダウンロードできるようにしています。クリエイター手抜きプロジェクトは2004年から連載しており2004年〜2015年2月分までを掲載しています。 ミスや間違いなどがありましたらopenspc@alpha.ocn.ne.jpまでお願いします。 ■Adobe Acrobat ボタン一発でWebページをPDFPDFの閲覧期限を設定する ■Adobe AfterEffects AfterEffects 6.0 : expression (1) AfterEffects 6.0 : expression (2) 複数のレイヤーのプロパティ値を保存する 選択したレイヤーに複数のエフェクトをかける テキストファイルを読み込ませて処理を行う ネットワーク上にあるテキス

  • JavaScript講座 : 連想配列(ハッシュ)

    JavaScriptでは連想配列(ハッシュ)を扱うことができます。名前の通り配列なので通常の配列と同様にnew Array()または[]で用意し値を代入します。通常の配列では添字に数値を指定しますが、ここに文字列を指定すると連想配列(ハッシュ)となります。以下のサンプルでは連想配列(ハッシュ)のキーを長野県、その値を塩尻市としています。値の変わりに添字に文字列を指定すれば連想配列(ハッシュ)のキーに対応した内容を参照することができます。以下のサンプルでは画面には塩尻市と表示されます。(サンプル01を実行する) a = new Array(); a["長野県"] = "塩尻市"; document.write(a["長野県"]); 連想配列(ハッシュ)は配列なので、ほぼ無制限にキーを指定し値を設定/参照する事ができます。以下のサンプルでは2つのキー、値を設定しています。(サンプル02を実行す

  • fsName

    サンプルコード fRef = Folder.selectDialog("Select"); alert(fRef.fsName);

    zichao
    zichao 2012/02/06
    fsNameはフォルダ名をフルパスで返す。
  • JavaScript講座 : 関数の定義

    JavaScriptでは関数の定義とオブジェクトのメソッドの定義は同じになります(メソッドの定義については別項で説明しています)。どちらもfunction()を使って機能を定義します。関数の基的な書式は以下のようになります。 function 関数名(パラメータ){ 処理内容 } JavaScriptでは関数名は英文字で始まるのが基となっていますが、$や_などの記号も使うことができます。また、Firefoxなどでは日語の関数名を指定しても動作します。 関数名は省略することもでき、その場合は匿名関数/無名関数となります。これに関しては後述します(→)。 関数のパラメータは引数とも呼ばれ、JavaScriptではカンマで区切って複数指定することができます。パラメータも省略することができます。パラメータを省略した場合でもargumentsにより任意の数、任意の位置のパラメータ値を取得するこ

  • 全ページにある全角の数字を半角の数字にする

    ■プログラム説明(ソースコード説明) 全ページにある全角の数字を半角の数字にします。replace()の第二パラメータには置換する文字だけでなく関数も指定することができます。関数からの戻り値が置換される文字になります。 ■ソースコード pageObj = app.activeDocument.pages; for (i=0; i<pageObj.length; i++) { for (j=0; j<pageObj[i].textFrames.length; j++) { txt = pageObj[i].textFrames[j].contents; result = txt.replace(/[0-9]/g, repFunc); pageObj[i].textFrames[j].contents = result; } } function repFunc(chr,ptr,allStr)

  • 選択されたテキストフレーム内の英文字の前後に半角空白を入れる

    ■プログラム説明(ソースコード説明) 選択されたテキストフレーム内の英文字の前後に半角空白を入れます。replace()で関数を呼び出して関数内で処理します。サンプルでは長く見えますが、関数内は4行しかありません。 ■ソースコード selObj = app.activeDocument.selection; for (i=0; i<selObj.length; i++) { txt = selObj[i].contents; selObj[i].contents = txt.replace(/[A-Z]+/gim,repFunc); } function repFunc(chr,ptr,AllStr) { var result = chr; // 前に空白を入れる if ((ptr > 0) && (AllStr.charAt(ptr-1) != " ")) { result = " "+

  • 全ページにある全角の数字を漢数字にする

    ■プログラム説明(ソースコード説明) 全ページにある全角の数字を漢数字(0~9のみ、10は駄目)にします。replace()の第二パラメータには置換する文字だけでなく関数も指定することができます。関数からの戻り値が置換される文字になります。 ■ソースコード pageObj = app.activeDocument.pages; for (i=0; i<pageObj.length; i++) { for (j=0; j<pageObj[i].textFrames.length; j++) { txt = pageObj[i].textFrames[j].contents; result = txt.replace(/[0-9]/g, repFunc); pageObj[i].textFrames[j].contents = result; } } function repFunc(chr,

  • クリエイター手抜きプロジェクト (InDesign編)

    今回は文章中にある価格に消費税を加算するスクリプトです。 まず最初のスクリプトはInDesign用です。テキストフレーム内の数値(価格)だけを選択してから実行すると105%の価格に置換されます。 ●テキストフレーム内で選択した数値に消費税を加える var selObj = app.activeDocument.selection[0]; // 最初に選択した数値のみ処理 var n = parseFloat(selObj.contents); n = n * 1.05; // 消費税5%を乗算する n = Math.round(n); selObj.contents = ""+n; 次はテキストフレーム全体に対して処理するものですが、1200円や980円など数値の直後に円の文字がある場合のみ価格として認識し105%の価格にするものです。ただし、テキストフレームで表示されていない部分に関して

  • クリエイター手抜きプロジェクト (InDesign編)

    今回はテキストフレームのオーバーフローをチェックするスクリプトです。InDesign CSはテキストフレーム内に文字を流し込みますが、ボックス内に入り切らない場合はボックスの最後に+マークを表示してテキストの続きがある事を示してくれます。しかし、何ページにも渡って存在するテキストフレームのオーバーフローチェックを確認するのは面倒です。 以下のスクリプトは選択したテキストフレーム内のテキストがオーバーフローしているかどうかチェックしオーバーフローしている場合は、該当するフレームの先頭8文字分を表示し警告するものです。 sel = app.activeDocument.selection; for (i=0; i<sel.length; i++) { if(sel[i].overflows == true) { alert(sel[i].contents.substring(0,8)+"...

    zichao
    zichao 2011/11/20
    アラートで該当ページ(箇所)を知らせる。
  • 画像を表示する

    ■画像を表示する それでは次にInDesign CS2で画像を表示してみましょう(MacOS Xの場合で説明しています)。まず、ハードディスクの名前(ボリューム名)を確認してください。ここではMacintosh HDというハードディスクの名前にしています。このハードディスク内にimgフォルダを作成し、その中に0001.jpgという名前のJPEG画像を入れておいてください。 準備ができたら以下のプログラムを入力し実行してみてください。 pageObj = app.documents.add(); txtObj = pageObj.textFrames.add(); txtObj.visibleBounds = ["1cm","1cm","4cm","4cm"]; txtObj.contentType = ContentType.graphicType; txtObj.place("Macin

  • フォルダ内にあるPDFを自動的に読み込み配置する

    ■プログラム説明(ソースコード説明) フォルダ内にあるPDFを自動的に読み込み配置するにはFolder.selectDialog()を使って配置したいPDFがあるフォルダをユーザーに選択させます。このフォルダ内にあるPDFファイル一覧をfolderObj.getFiles("*.pdf")として取得します。取得したPDFファイルの数だけ繰り返し処理を行います。PDFの配置はテキストフレームを作成し、その中にPDFデータを読み込みます。これはファイルのパスを指定するだけです。読み込んだPDFにフレームをfit()を使って合わせます。あとはPDFが1つ読み込まれるたびにX座標を増加させます。一定範囲を超えたらY座標をずらします。Y座標がページの下限を超えた場合にページを追加します。これでフォルダ内のPDFが全て自動的にレイアウトされます。 ■ソースコード function layoutPDF(

  • ラジオボタンを追加する

    ■プログラム説明(ソースコード説明) ダイアログ内にラジオボタンを表示するには、まずダイアログを作成した後に、dialogColumns.add()とします。次にradiobuttonGroups.add()としてラジオボタングループを作成します。このグループ内で作成されたラジオボタンは複数のうち1つだけが選択できるようになります。次にradiobuttonControls.add()でラジオボタンを追加します。staticLabelで表示する項目を設定します。幅はminWidthで指定できます。その際指定する単位はピクセルになります。最初から特定のラジオボタンを選択しておくにはcheckedState:trueを指定しておきます。 ■ソースコード wObj = app.dialogs.add({ name:"Sample" }); tmp1 = wObj.dialogColumns.ad

  • クリエイター手抜きプロジェクト (InDesign編)

    今回はSを小、Mを中、Lを大に置換するスクリプトで・・・ではなく前々回の流れのまま常用漢字以外が使われているかどうかを調べるスクリプトです。今度はInDesign CS3/CS4用です。 まず、これまで同様に以下のサイトから常用漢字のファイルをダウンロードしデスクトップとか分かりやすいところに保存してください。 すでにダウンロード済みの場合は、新たにダウンロードする必要はありません。 ●常用漢字データ http://www.openspc2.org/projectX/data/jyouyoukanjidata.txt 最初のスクリプトは単純に常用漢字以外が使われているかどうかを調べるものです。常用漢字以外があれば、ダイアログを表示します。 ちなみに、このスクリプトはInDesignでもイラストレータでも共通して動作する珍しい(?)パターンです。 function kanjiChecker(

  • クリエイター手抜きプロジェクト (InDesign編)

    InDesignにPDFを自動的に読み込んで配置する、複数ページのPDFを自動的に割り付けてくれると役立つ、というリクエストが前々からあったのですが、それはできないと回答していました。というのもアドビが提供しているリファレンスではInDesign CS/CS2には読み込んだPDFデータが何ページあるのかを示すもの(プロパティ)が存在しないためです。このため、複数ページのPDFを配置する場合には手作業でページ数を指定するか、あらかじめプログラムで配置するページ範囲を決めておくしかない事になります。 総ページ数が分からない場合でも、存在しないページを読み込む時点でエラーになれば解決するのも簡単ですが、なぜか存在しないページを指定してもInDesign CS/CS2ではエラーになりません。 存在しないページを読み込んだ時にはフレームに何も読み込まれなければ、フレームをフィットさせてフレームサイズ

  • 逆引きクイックリファレンス JavaScript

    <html> <head> <title>Sample</title> <script type="text/javascript"><!-- function repText(fObj) { sText = fObj.srcText.value; fObj.result.value = sText.replace(/複雑/g,repFunc); } function repFunc(mWord,ptr,allStr) { var dateObj = new Date(); var m = dateObj.getMonth() + 1; var d = dateObj.getDate(); return "複雑 ("+m+"月"+d+"日) "; } // --></script> </head> <body> 複雑な置換を行います。<br><br> <form> 処理前の文章:<text

  • メールマガジン「目指せ!ウェブマスター」JavaScript講座

    メールマガジン「目指せ!ウェブマスター」JavaScript講座の原稿です。 現在、中断されてしまっている状態です。未掲載原稿も含めて、ここに掲載してあります。 一部内容が古くなっていたり誤字脱字がありますが、修正できていません。 これは問題あり、という場合にはopenspc@po.shiojiri.ne.jpまでメールをください。 最終更新日:2005年2月17日 第 1回 「JavaScriptって?」 第 2回 「JavaScriptを書いてみよう」 第 3回 「JavaScriptを書く時の約束ごと」 第 4回 「メッセージを表示」 第 5回 「"を表示」 第 6回 「文書内にメッセージを表示」 第 7回 「繰り返し処理(1)」 第 8回 「繰り返し処理(2)」 第 9回 「四則演算」 第10回 「最適化」 第11回 「ランダムに文字を表示する」 第12回 「条件分岐、if..el

  • 文字のフォント(書体)を指定する

    ■プログラム説明(ソースコード説明) サンプルでは新規にドキュメントが作成されテキストフレーム内に文字が表示されます。フレーム内に表示された文字のフォントを変更します。フォントはapp.fonts.item()で指定しておきます。この書体をappliedFontに設定します。太さなどのスタイルはfontStyleに設定します。 ■ソースコード fntObj = app.fonts.item("ヒラギノ角ゴ Pro"); pageObj = app.documents.add(); txtObj = pageObj.textFrames.add(); txtObj.visibleBounds = ["4cm","5cm","8cm","10cm"]; txtObj.contents = "アドビインデザイン"; txtObj.paragraphs[0].appliedFont = fntOb

  • 漫画でHTML5を覚える

    まあ、都合により没になったHTML5漫画です。これを見ればHTML5絡みもバッチリ・・・覚えられる保証は全くなし。でも、多少の参考にはなるかもしれません。 手軽で便利なローカルストレージ 映像が表示されないよ Canvasなのに描けない ドラッグできない! 文字化けして読めないファイル どうして位置がわかった? この漫画はコミPo!を使って作成しました。 なお、ここに出てくる登場人物の詳細についてはこちら (Retro Driver) の漫画を参照してください。 特に人物について知らなくても問題はないかと思います。HTML5に関しては多少知っておいた方が楽しめるかもしれません。 HTML5も出しています。 HTML5ガイドブック HTML5逆引きリファレンス(逆引きAPIリファレンスです)

  • クリエイター手抜きプロジェクト (Photoshop編)

    Photoshop 7からは、あるプラグインを使うと自動的に操作がJavaScriptで記録されます。そのプラグイン名は「ScriptingListener」でAdobe Systemsから提供されている純正プラグインです。Photoshop 7の場合はAdobeのウェブサイトからダウンロードしたPhotoshop Scripting Support、Photoshop CSの場合はスクリプティングガイドフォルダ内のユーティリティフォルダ内に入っています。このScriptingListenerプラグインをプラグインフォルダ内に入れます。入れた後にPhotoshopを起動します。 起動後の操作は全てJavaScriptで記録されます。MacOS Xではデスクトップに「ScriptingListenerJS.log」というファイル名で保存されます。このScriptingListenerJS.l