複数のプロパティを一行で書き換えたい
Photoshopのテキストのプロパティを一気に変更したいのですが
書き方がわからなくて困っています
docRef = app.activeDocument;
newTextLayer = docRef.artLayers.add();
newTextLayer.kind = LayerKind.TEXT;
これ
newTextLayer.textItem.contents="helloWorldText";
newTextLayer.textItem.size=14;
を
newTextLayer.textItem =({contents:"helloWorldText",size:14});
こんな感じで書きたいんです
スクリプティングガイドをみてもよくわかりませんでした
よろしくお願いします
No.1
- 回答日時:
acrobatのjavascriptは知りませんが…
WEBからReferenceを見ることができるので、そちらで確認なさるのが良いのでは?
http://livedocs.adobe.com/acrobat_sdk/9.1/Acroba …
(日本語ならヴァージョンが古いけれど…)
http://www.adobe.com/jp/support/products/pdfs/ac …
自分流の書式にしたければ、新しいメソッドを定義して拡張するなどすれば不可能ではないと想像しますが、そこまでするメリットがあるのかどうか疑問。
ありがとうございます
以前、誰かが一行でプロパティを変更していたのを見た記憶があるので
それがやりたかったんですが
自力では無理でした
教えていただいたリファレンスを見て勉強してみます
No.2ベストアンサー
- 回答日時:
プロパティをセットする関数を別に作っておく方法ではだめですか?
docRef = app.activeDocument;
newTextLayer = docRef.artLayers.add();
newTextLayer.kind = LayerKind.TEXT;
setProperties ( newTextLayer.textItem, {contents:"helloWorldText", size:14} );
function setProperties( tItem, p ) {
for ( var i in p ) tItem[i] = p[i];
}
強引に一行にするとこうかな。
docRef = app.activeDocument;
newTextLayer = docRef.artLayers.add();
newTextLayer.kind = LayerKind.TEXT;
( function( tItem, p ) { for ( var i in p ) tItem[i] = p[i]; } )( newTextLayer.textItem, {contents:"helloWorldText", size:14} );
この回答への補足
私の思っていたものは、これだったかもしれない
with(newTextLayer.textItem ){
contents = "helloWorldText";
size = 14;
}
けど
これを実行すると
処理はプロパティの回数分実行されてしまうので
結局時間短縮にはなりませんでした
ありがとうございます
確かに一行になるんですけど
Photoshopの処理は2回に分けられてしましますので
かかる時間は同じでした
一括で処理して時間短縮をしたいというのが
最終目的なので
望んでいるものとは少し違いました
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- HTML・CSS HTML、cssのatomつぅーやつで 課題Ex1ってやつを表示させたいのですが、 私は課題Ex1が 2 2022/12/15 16:56
- C言語・C++・C# C# で、あるフォルダー内にあるすべてのテキストファイルを別のフォルダーにコピーする。 4 2022/11/21 13:23
- PHP htmlspecialcharsが機能していないです。 バグですか? 1 2022/04/05 01:22
- Excel(エクセル) Excel 条件付き書式について 1 2022/12/14 20:38
- Excel(エクセル) EXCELマクロでandroidタブレットから取りんだJPEGファイルをうまくセルに貼り付けられない 2 2022/07/31 15:03
- JavaScript javascriptのちょっとした動作不良(原因は突き止めたのですが) 1 2023/06/15 19:58
- その他(プログラミング・Web制作) pythonのグローバル変数 2 2022/11/25 18:02
- HTML・CSS ヘッダーの画像にメインエリアがかぶってしまいます 1 2022/11/28 14:06
- Access(アクセス) capeofdragonと申します。 Access2016を使っております。 あるフォームがあり、テ 2 2022/09/09 13:18
- Visual Basic(VBA) VBA 重複チェック後に値をワークシートに転記する方法を教えてください。 1 2023/03/19 12:43
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
idを使わずにonclickで自身の要...
-
クリックすると上に開くアコー...
-
jquery 複数のメソッド
-
function(e)の意味を教えてくだ...
-
XMLHttpRequestでキャッシュを...
-
functionから別のfunctionを実...
-
ラジオボタン選択内容に応じて...
-
jQuery cssメソッドでの変数の...
-
小数点以下を5刻みで表示
-
jQueryの"return false"の役割...
-
現在地の取得について
-
jslintのエラーについて質問
-
CDの曲をケータイのSDに移す
-
jQueryでzipを解凍読み込みする...
-
ASP 最終日の表示
-
Matlabで自作関数をオーバーロード
-
JAVAスクリプトで指定時間以降...
-
要素名がスペースを含む場合のj...
-
jQueryを使用したギャラリー
-
関数でy=g(x)のgとは何の略です...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
idを使わずにonclickで自身の要...
-
functionから別のfunctionを実...
-
関数でy=g(x)のgとは何の略です...
-
jslintのエラーについて質問
-
クリックすると上に開くアコー...
-
XMLHttpRequestでキャッシュを...
-
ajax反映後のjqueryが動かない
-
function(e)の意味を教えてくだ...
-
要素名がスペースを含む場合のj...
-
jQueryの :not() .not() が有効...
-
jQueryでzipを解凍読み込みする...
-
関数名をテキストから読み込む...
-
getElementByIdを使用したグロ...
-
jqueryuiのdialog
-
jqueryのグローバル変数とロー...
-
jQuery 同じ処理を関数にまとめ...
-
XMLHttpRequestオブジェクトが...
-
addEventListener()でリスナー...
-
drawImageの描画順序の指定につ...
-
javascript(jQuery)でセル内...
おすすめ情報