DTP駆け込み寺
  1. [13473] テキストのレイヤー分けとバージョンダウン保存 ILL初心者 2012/01/29 19:03
    1. [13474] Re: テキストのレイヤー分けとバージョンダウン保存 ILL初心者 2012/01/29 22:40
      1. [13475] Re^2: テキストのレイヤー分けとバージョンダウン保存 あなこんだ2000 2012/01/29 23:35
        1. [13476] Re^3: テキストのレイヤー分けとバージョンダウン保存 ILL初心者 2012/01/30 10:53

[ 返信 ]

テキストのレイヤー分けとバージョンダウン保存

一応、プログラミングは少々出来るますが、
イラストレーターに関しては初心者です。
詳しく情報を提示しようと思っていますが、
不可解な文章になってしまったらすみません。

EPS画像の一括変換を行いたいのですが、
以下のようなことは可能でしょうか?

【環境】
1.イラストの作成はイラストレーターCS3
2.作業用のパソコンはイラストレーターCS5.5
3.提出用のデータはイラストレーターVer.10

【したい事】
1.EPS画像ファイルのバージョンを一括で変更したい。
(CS3からVer.10)
2.その際に文字が複数のテキストボックスにわかれるのを防ぎたい。
(ポイントテキストからテキストボックスに変更?)
3.テキストだけを別レイヤーに移したい。

イラストレーターのバージョン変更するコードは
こちらの掲示板でほかの方が書かれたのを参考にしようと思っていますが、
コードをここにコピペさせて貰ってもよろしいのでしょうか?
http://e.yutorie.com/bito/2010/12/illustrator.html

よろしくお願いいたします。

[13473] ILL初心者 (2012/01/29 Sun 19:03)

[ 返信 ]


Re: テキストのレイヤー分けとバージョンダウン保存

流れを考えて見ました。

1.ファイルを開く
2.レイヤーを作成する
 (newLayers[newLayers.length+1] = target.layers.add() ;
  newLayers[newLayers.length+1].name = "文字" ;
  コードあってるでしょうか?)
3.テキストボックスを探し、レイヤーを移動する(可能?)
4.テキストボックスの属性(?)を変更する。
 (ポイントテキストからエリアテキストに変更?)
5.バージョンを変更して保存する。

1と5は「illustratorで下位バージョンに一括保存」
に入っているので、後は3と4でしょうか・・・。

調べ方やヒント、類似コードなどどんな情報でもよいので、
よろしくお願いします。

[13474] ILL初心者 (2012/01/29 Sun 22:40)

[ 返信 ]


Re^2: テキストのレイヤー分けとバージョンダウン保存

2.その際に文字が複数のテキストボックスにわかれるのを防ぎたい。
これが無理なんだよなー。どうがんばっても無理。
事故の臭いしかしない。

[13475] あなこんだ2000 (2012/01/29 Sun 23:35)

[ 返信 ]


Re^3: テキストのレイヤー分けとバージョンダウン保存

> 2.その際に文字が複数のテキストボックスにわかれるのを防ぎたい。
> これが無理なんだよなー。どうがんばっても無理。
> 事故の臭いしかしない。

あなこんだ2000様

ありがとうございます。
無理…、ですか。ここだけは手作業になるんでしょうか…。

テキスト結合のソースがあったので、
手作業+スクリプト実行になるのでしょうか。

また、
2.レイヤーを作成する
3.テキストボックスを探し、レイヤーを移動する
のコードを作ってみました。
ファイル開いて全てを選択するとちゃんと動くんですが、
選ばなくて移動してほしいので、
selObj = activeDocument.selection;

selObj = activeDocument.textFrames;
に変えると移動しない文字が出てきてしまいます。
なにが違うんだろう…。

layObj = activeDocument.layers.add();
layObj.name = "moji";
selObj = activeDocument.selection;
for (i=0; i<selObj.length; i++)
{
if(selObj[i].typename == "TextFrame")
{
dupObj = selObj[i].duplicate();
dupObj.moveToBeginning(layObj);
selObj[i].remove();
}
}

すっきり解決ではないコードなのでちょっと悲しいです。

[13476] ILL初心者 (2012/01/30 Mon 10:53)