FC2カウンター
ブログ内検索
プロフィール

流星光輝

Author:流星光輝
InDesignを仕事で使っています。
まんどい作業をScriptで解決すべく
精進の日々を過ごしております。

カレンダー
03 | 2017/04 | 05
- - - - - - 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 - - - - - -

スポンサーサイト
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
スポンサー広告  

InDesignのExtendedScriptでprompt使うときの注意とか

Scriptをjsxbinでバイナリ化して、わざわざjsxにリネームしてフリー配布してる人たちがいるみたいですけど、
こういう意味不明な挙動への対処方法とかを仕込んでるんだったら、jsxbinで配布しててもいいんだけど、
コードオープン化してくれませんかねぇ?w ググっても出てこないっすわよw


気を取り直して、まずは、Windows版のESTKでの例です。バージョンは現行のCCです。
winCC.png

下記のソースコードを、さりげなく実行してみます。

var a="";
for(var i=100;i<300;i++){
    a+=i+"/"
}
alert(a);
var b=prompt("check",a,"test");
alert(b);

(1)
winCC_1.png
(2)
winCC_2a.png
(3)
winCC_3.png

えっ!? クラッシュしちゃったよ! どうなってんすかー!!!

※1 なぜかCS1(3.0.1_838_J)環境だけはクラッシュしなかったです。えろい人教えて(人∀・)
※2 手元の旧環境を起動して確認したところCS2以降でクラッシュし、現行バージョンのCC2015環境下のESTKまででクラッシュしました。


次に上記のソースコードをmac環境で実行してみたいと思います。
※1 ESTKのバージョンは同じです。10.10.4環境下ですが…
※2 確認したESTKバージョンはCS3~CCです。

macCC.png

(1)
macCC_1.png
(2)
macCC_2.png
(3)
macCC_3.png

結果が違う!!!

Adobeさん、こういうのホント勘弁してー

InDesignでmacでもwinでも動作するScriptで入力させる必要があるときは、
回避する方法としてdialogを作ってtextEditboxesに入力してもらうということが必要ってことか…

#target indesign
var a="";
for(var i=100;i<300;i++){
    a+=i+"/"
}
alert(a);
var dlg=app.dialogs.add({name:"prompt代用"});
with(dlg.dialogColumns.add()){
    var tx=textEditboxes.add({minWidth:480, editContents:a});
}
if(dlg.show()){
    var b=tx.editContents;
    dlg.destroy();
    alert(b);
}

みたいなコードを書いておく必要があります…
InDesign Scripting TB(0) CM(0) 

New Log ← Top LogOld Log

COMMENT


PREV PAGE   TOP   NEXT PAGE

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。