DTP駆け込み寺

[ 返信 ]

選択テキストと同じ画像を配置【IllustratorCS6】

色々な方のスクリプトを参考に
イラレ上で選択しているテキストと同じファイル名の画像を
配置するスクリプトを作りました。
一つのテキストを選択している時は動作するのですが、
複数テキスト選択時に思ったように動作しません。

下記のt_contentsが複数の場合、それに連動して複数の画像を配置したいのですがどうすれば良いでしょうか?

frames = app.activeDocument.selection;
for(i=0; i < frames.length; i++){
t_contents = frames[i].textRange.contents+".psd";
// alert(t_contents);

base_X = -700;
base_Y = 0;
startX = 0;
startY = 0;
Y = 100; //
maxCountX = 7; /
maxCountY = 11;
boxHeight = 15;
x = startX;
y = startY;
docObj = app.activeDocument;
foldername = Folder.selectDialog("フォルダを指定してください");
if (foldername)
{
var text = [t_contents];
for (var j=0; j<text.length; j++)
{
fileList = foldername.getFiles(text[j]);
layoutImage(fileList);
}
}
function layoutImage(fileList)
{
for (i=0; i<fileList.length; i++)
{
pItem = docObj.placedItems.add();
fs = new File(fileList[i].fsName);
pItem.file = fs;
pItem.width = w;
pItem.height = h;
//pItem.embed();
pItem.position = new Array(base_X + x,base_Y - y);
x = x + w;

}
///////////////////////////////////
function setOriginalSizeH(){
var selObj = activeDocument.selection;
for (var i=0; i<selObj.length; i++){
if (selObj[i].file){
var filename = selObj[i].file;
var docObj = documents.add();
var pItem = docObj.placedItems.add();
pItem.file = filename;
var srcW = pItem.width;
var srcH = pItem.height;
docObj.close(SaveOptions.DONOTSAVECHANGES);
var h = selObj[i].height;
var aspect = h / srcH;
selObj[i].width = srcW * aspect;
}
}
}
setOriginalSizeH();
///////////////////////////////////
}

[19266] take (2017/06/22 Thu 19:57)


残り6件

  1. [19266] 選択テキストと同じ画像を配置【IllustratorCS6】 take 2017/06/22 19:57
    1. [19267] Re: 選択テキストと同じ画像を配置 -e 2017/06/23 13:17
      1. [19268] Re^2: 選択テキストと同じ画像を配置 take 2017/06/23 14:59
        1. [19269] Re^3: 選択テキストと同じ画像を配置 -e 2017/06/23 16:33
          1. [19272] Re^4: 選択テキストと同じ画像を配置 take 2017/06/26 13:41
            1. [19273] Re^5: 選択テキストと同じ画像を配置 take 2017/06/28 16:26
              1. [19274] Re^6: 選択テキストと同じ画像を配置 . 2017/06/29 11:34