リンク画像:JavaScript × Illustrator

アクティブドキュメント内のリンク画像を取得

var placedIMGs = app.activeDocument.placedItems;

アクティブドキュメント内の埋め込み画像を取得

var rasterIMGs = app.activeDocument.rasterItems;

ドキュメント内のリンク画像の数

var placedNum=app.activeDocument.placedItems.length;

PlacedItemコレクションの親オブジェクト??

var obj=app.activeDocument.placedItems.parent;

常にドキュメントオブジェクトになる。??

var obj=app.activeDocument.placedItems[0].parent;

PlacedItemsコレクションの種類

var str=app.activeDocument.placedItems.typename;var str=app.activeDocument.placedItems[0].typename;

→PlacedItems

リンク画像を埋め込む

placedIMG.embed();

最前面のリンク画像を埋め込む

app.activeDocument.placedItems[0].embed();

ドキュメントのリンク画像をすべて埋め込む

//リンク画像を埋め込む
var placed = app.activeDocument.placedItems;
for(var j=placed.length-1; j>-1; j--){
try{placed[j].embed();}catch(e){}
}

選択したリンク画像を埋め込む。リンク画像以外の選択オブジェクトは無視。

var sel=app.activeDocument.selection;
for(i=0; i < sel.length; i++){
try{sel[i].embed();}catch(e){}
}

リンク画像のファイルパスを取得

var fileObj = placedIMG[0].file;

そのまま表示すれば文字化けするので

デコードする

var fileObj =decodeURI(placedIMG[0].file);
フルパスで取得(化けない
placedIMG[0].file.fsName
placedIMG[0].file
表示→ ~/Desktop/%E3%83%8F%E3%82%B7%E3%83%93%E3%83%AD.jpg
placedIMG[0].file.absoluteURI → ~/Desktop/%E3%83%8F%E3%82%B7%E3%83%93%E3%83%AD8.jpg
placedIMG[0].file.fsName → /Users/(ユーザー名)/Desktop/ハシビロ.jpg placedIMG[0].file.fullName → ~/Desktop/ハシビロ.jpg
placedIMG[0].file.name → %E3%83%8F%E3%82%B7%E3%83%93%E3%83%AD.jpg placedIMG[0].file.parent → ~/Desktop
placedIMG[0].file.path → ~/Desktop
placedIMG[0].file.relativeURI → /Users/(ユーザー名)/Desktop/%E3%83%8F%E3%82%B7%E3%83%93%E3%83%AD.jpg
winだったら表示が変わるだろう。

リンク画像の座標

var bounds = placedIMGs.boundingBox;

リンク画像の変数

var variable = placedIMGs.contentVariable;

リンク画像のマトリックス?

var matrix = placedIMGs.matrix;
mValueA 横方向倍率
mValueB 横方向角度
mValueC 縦方向角度
mValueD 縦方向倍率
mValueTX 横方向移動量
mValueTY 縦方向移動量

画像の再リンク

app.activeDocument.placedItems[0].relink(fileObj);

ファイルを置き換える

placedItem.file = new File("ファイルへのパス");

リンク画像が編集可能かどうか。trueなら編集可能、falseなら編集不可

var flag=app.activeDocument.placedItems[0].editable;

リンク画像を削除

app.activeDocument.placedItems[0].remove();

ドキュメント内にあるすべてのリンク画像を削除

app.activeDocument.placedItems.removeAll();

リンク画像を作成

var ImgFileObj = File ("/hasibiro.jpg");
var imgObj = app.activeDocument.placedItems.add();
imgobj.file = ImgFileObj;
imgobj.height = imgobj.height*0.1;
imgobj.width = imgobj.width*0.1;
imgobj.left = 0;
imgobj.top = imgobj.height;

オートトレースする

app.activeDocument.placedItems[index].trace()

指定された名前のリンク画像を返すvar

myimg=app.activeDocument.placedItems.getByName("hashibiroko");

ない場合はエラー

リンク画像を複製

var pItem = app.activeDocument.placedItems[0].duplicate();

(基準オブジェクト,挿入位置) 省力可能

リンク画像を移動

var pItem = app.activeDocument.placedItems[0].move(app.activeDocument, ElementPlacement.PLACEATEND);

(基準オブジェクト,移動位置)

リンク画像プロパティ

.artworkKnockout
.blendingMode
.boundingBox
.contentVariable
.controlBounds
.editable
.file
.geometricBounds
.height
.hidden
.isIsolated
.layer
.left
.locked
.matrix
.name
.note
.opacity
.parent
.position
.selected
.sliced
.tags
.top
.typename
.uRL
.visibilityVariable
.visibleBounds
.width
.wrapInside
.wrapOffset
.wrapped
.zOrderPosition

タイトルとURLをコピーしました