一旦流し込んだテキストをところどころで解除したい
[4064]一旦流し込んだテキストをところどころで解除したい 投稿者:きと 投稿日:2004/03/25(Thu) 10:05
ちょっと教えていただきたいのですが、
一旦「テキスト連結」をしたテキストフレーム内に流しこんだテキストをところどころで断ち切り、しかもテキストはそれぞれの場所にある状態にしたいのですが、InDesinCSで可能でしょうか?
テキスト連結を解除すると、それ以降のテキストフレーム内が空白になってしまうのですが。。。
» 1
一旦「テキスト連結」をしたテキストフレーム内に流しこんだテキストをところどころで断ち切り、しかもテキストはそれぞれの場所にある状態にしたいのですが、InDesinCSで可能でしょうか?
テキスト連結を解除すると、それ以降のテキストフレーム内が空白になってしまうのですが。。。
[4064へのレス]Re: 一旦流し込んだテキストをところどころで解除したい 投稿者:うえだ 投稿日:2004/03/25(Thu) 13:11
2.0.2 Macでは、例えば、
3つ連結しているテキストフレームの2つ目をコピペすれば、その部分だけコピー出来ます。
最後のオーバーフローしているフレームをコピペすると、オーバーしているテキストコンテンツも含んだままコピーされます。
CSでは、試していません。
» 2
3つ連結しているテキストフレームの2つ目をコピペすれば、その部分だけコピー出来ます。
最後のオーバーフローしているフレームをコピペすると、オーバーしているテキストコンテンツも含んだままコピーされます。
CSでは、試していません。
[4064へのレス]Re: 一旦流し込んだテキストをところどころで解除したい 投稿者:imasyu 投稿日:2004/03/25(Thu) 13:11
>テキスト連結を解除すると、それ以降のテキストフレーム内が空白になってしまうのですが。。。
連結が解除されれば当然先頭のテキストフレームに文字列が集約されますので以下のテキストフレームには何も残りません。
CSでしたらJavaScriptを使用してお望みの処理が行えます。
それで宜しければ私のヘボコードをここに貼り付けますよ。
» 3
連結が解除されれば当然先頭のテキストフレームに文字列が集約されますので以下のテキストフレームには何も残りません。
CSでしたらJavaScriptを使用してお望みの処理が行えます。
それで宜しければ私のヘボコードをここに貼り付けますよ。
[4064へのレス]Re: 一旦流し込んだテキストをところどころで解除したい 投稿者:きと 投稿日:2004/03/25(Thu) 15:19
» 4
[4064へのレス]Re: 一旦流し込んだテキストをところどころで解除したい 投稿者:imasyu 投稿日:2004/03/25(Thu) 16:05
//--ここから---
myDocument = app.activeDocument;
mySelect = myDocument.selection[0];
function splitStory() {
if(mySelect) {
if(mySelect.constructor.name == "TextFrame") {
myStory = mySelect.parentStory;
Max = myStory.textFrames.length;
if(Max == 1)return false;
for(i=0; i < Max; i++) {
myStory.textFrames[i].duplicate();
}
for(i=Max; i > 0; i--) {
myStory.textFrames[i-1].remove();
}
}
} else {
alert("そもそもオブジェクトすら選んでいません!!");
}
}
splitStory();
//--ここまで---
上記の部分をコピーしてテキストエディタに貼り付け ***.js として作成し、それをIndesingフォルダ中のScriptsフォルダの中に入れて実行してください。
あとは連結テキストのどれかをひとつ選択し、スクリプトを実行すればOKです。オブジェクトがロックされてたりするとエラーが起きます。
あといい忘れましたが当方の開発環境はwindowsですのでmacでは正常に動くか未検証です。特にOS特有なものが絡んでくる要素はなさそうですが上手く動かなかったらレスを頂けると大変ありがたいです。
スクリプト実行前に必ずバックアップをとっておいてくださいね
» 5
myDocument = app.activeDocument;
mySelect = myDocument.selection[0];
function splitStory() {
if(mySelect) {
if(mySelect.constructor.name == "TextFrame") {
myStory = mySelect.parentStory;
Max = myStory.textFrames.length;
if(Max == 1)return false;
for(i=0; i < Max; i++) {
myStory.textFrames[i].duplicate();
}
for(i=Max; i > 0; i--) {
myStory.textFrames[i-1].remove();
}
}
} else {
alert("そもそもオブジェクトすら選んでいません!!");
}
}
splitStory();
//--ここまで---
上記の部分をコピーしてテキストエディタに貼り付け ***.js として作成し、それをIndesingフォルダ中のScriptsフォルダの中に入れて実行してください。
あとは連結テキストのどれかをひとつ選択し、スクリプトを実行すればOKです。オブジェクトがロックされてたりするとエラーが起きます。
あといい忘れましたが当方の開発環境はwindowsですのでmacでは正常に動くか未検証です。特にOS特有なものが絡んでくる要素はなさそうですが上手く動かなかったらレスを頂けると大変ありがたいです。
スクリプト実行前に必ずバックアップをとっておいてくださいね
[4064へのレス]Re: 一旦流し込んだテキストをところどころで解除したい 投稿者:きと 投稿日:2004/03/25(Thu) 16:33
早速試してみました。
当方は、MacOSX10.3.3でIndesignCSを使用しています。
で、結果ですが、
修了した後、メモしわすれたのですが、なにかのエラーみたいな表示がありました。
気づいたのですが、こちらのスクリプトは、
全部のテキスト連結を解除してしまうのですね?
私の場合、ところどころ、解除したかったのですが。。。
それにしても、こういったことが、JavaScriptでできるって
驚きました。
当方は、MacOSX10.3.3でIndesignCSを使用しています。
で、結果ですが、
修了した後、メモしわすれたのですが、なにかのエラーみたいな表示がありました。
気づいたのですが、こちらのスクリプトは、
全部のテキスト連結を解除してしまうのですね?
私の場合、ところどころ、解除したかったのですが。。。
それにしても、こういったことが、JavaScriptでできるって
驚きました。
この記事の書き込み元へのリンク (コメントや質問などはこちらへどうぞ)