InDesignのスクリプト処理で、オブジェクトの選択部分(.selection)に依存しない処理をする場合、非表示にしての裏方処理は画面描画ない分やっぱり、多少速いのかな?(処理にもよるだろう)
 
//実行すると裏処理と表処理をして、
//ドキュメントをデスクトップに保存、
//所要時間の結果をダイアログに表示します。
var sh=new Date().getTime();
main(false); //ドキュメントを非表示にして処理
var eh=new Date().getTime();

var ss=new Date().getTime();
main(true); //ドキュメントを表示して処理
var es=new Date().getTime();

alert("result\r"+"show document: "+(es-ss)+"\r"+"hide document: "+(eh-sh));

function main(flag){
	var doc=app.documents.add(flag);
	
	//ほにゃららな処理
	with(doc.documentPreferences){
		facingPages=false;
		overPrintBlack=true;
		pageBinding=PageBindingOptions.LEFT_TO_RIGHT;
		pageHeight=400;
		pageWidth=600;
		pageOrientation=PageOrientation.LANDSCAPE;
		pagePerDocument=1;
		masterTextFrame=true;
		}
	var rec=doc.rectangles.add({geometricBounds:[0,0,5,5]});
	var col=["Cyan","Magenta","Yellow","Black"];
	for(var i=0; i < 1000; i++){
		var duprec=rec.duplicate(undefined, [
			doc.documentPreferences.pageWidth*Math.random(), 
			doc.documentPreferences.pageHeight*Math.random()
			]);
		duprec.fillColor=col[i%4];
		}

	var docname=""+new Date().getTime()+".indd";
	var fileObj=new File("~/desktop/"+docname);
	doc.close(SaveOptions.YES, fileObj);
	}
結果はこんな、G5+CS3の遅さに泣ける。IntelMacなら一桁多めな重めな処理でわかりやすい結果がでそう。



//保存して閉じるのでなく、最後に非表示のドキュメントを開くには
doc.windows.add();
みたいな感じで。

トラックバック(0)

トラックバックURL: http://www.milligramme.cc/mtos/mt-tb.cgi/484

TranslateThis

このブログ記事について

このページは、mgが2010年2月 6日 01:15に書いたブログ記事です。

ひとつ前のブログ記事は「InDesign_合成フォントの覚え書き」です。

次のブログ記事は「InDesign_裏処理とスクリプトラベルの付加可不可」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

アーカイブ

Blog Parts