[ 掲示板に戻る ]

過去ログ閲覧モード

InDesignドキュメントのテキストをテキストファイルに書き出すスクリプト / ラーマ
はじめまして。
「InDesignドキュメント(500ファイル以上あります)の
テキストだけを別のテキストファイルに書き出す」という
業務が発生しそうなので、超初心者ながらスクリプトに
挑戦してみることにしました。

InDesign CS3自動化作戦 with JavaScript
http://www.openspc2.org/book/InDesignCS3/)にある
"選択されたテキストフレーム内の文字をファイルに書き出す"
を一部書き換え(同ページ内の"テキストフレームのみ選択する"
のサンプルを使い、自動で選択できるようにしました)実行してみました。

テキストファイルに書き出す事は成功したのですが、書き出された
テキストファイルをチェックしてみると非表示レイヤーのテキストを
拾ってしまっています。
また、版面外のテキストフレームの内容が取得出来ていないようです。
以下の2点について、どういう書き方をしたらいいか教えていただけないでしょうか?

・非表示レイヤーにあるテキストフレームの内容を拾わないようにする
・版面外にあるテキストフレームの内容も取得する


また、上の話とは少し別なのですが例えば新ゴLと中ゴが使われている
テキストボックスのみを選択してその内容をテキストファイルに
書き出すようなことは出来るのでしょうか?

環境はWindowsXP、InDesignCS3のJavaScriptです。
よろしくお願いします。

No.6353 2011/12/13(Tue) 21:39:05
Mozilla/5.0 (Windows NT 5.1) AppleWebKit/534.51.22 (KHTML, like Gecko) Version/5.1.1 Safari/534.51.22

Re: InDesignドキュメントのテキストをテキストファイルに書き出すスクリプト / (z-) URL
現状のソースを提示していただければ、より明確に指摘できるんですが、
 そういうわけでアテズッポでいきます。

・非表示レイヤーにあるテキストフレームの内容を拾わないようにする
仮に処理対象を obj とします。
if(obj.itemLayer.visible==true){ 目的の処理 }
など挟んでみてください。


・版面外にあるテキストフレームの内容も取得する
おそらくfor文でdocument.pages を参照していると思われます。
版面外のオブジェクトの親はpageではなくspreadとなります。
ページごとじゃなくて構わないのであれば、for文のpages をspreadsに置換する事でとりあえず解決すると思います。

No.6354 2011/12/13(Tue) 22:23:25
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/534.52.7 (KHTML, like Gecko) Version/5.1.2 Safari/534.52.7

Re: InDesignドキュメントのテキストをテキストファイルに書き出すスクリプト / オメガ
この手のスクリプトを書いたことがなかったので、自分も勉強がてらスクリプトを書いて試してみたのですが…
自分なりに書いてみて、(テキストの書き出し順やマスター上のアイテムの扱いは置いておいて)一応、動いたのですが、動作検証していると、いくつかのテキストフレームが書き出されませんでした。どうもShift-JIS範囲外の文字があると書き出せないようです。(Mac版CS5です)
どのみち使えないとは思いますが、こんな感じで書いてみました。

(function (){
var filename = File.saveDialog("書き出すファイル名を入力してください");
if (filename){
var fileObj = new File(filename);
var flag = fileObj.open("w");
if (flag){
var docObj = app.activeDocument;
for(var i=0; i<docObj.spreads.length; i++){
var pageObj = docObj.spreads[i].allPageItems;
for(var j=pageObj.length-1; j>-1; j--){
if((pageObj[j].constructor.name=="TextFrame")&&(pageObj[j].itemLayer.visible==true)){
if(pageObj[j].contents !=""){
fileObj.writeln(pageObj[j].contents+"\r");
}
}
}
}
fileObj.close();
alert("ファイルに書き出しました");
}else{
alert("ファイルが作成できません。アクセス権があるか確認してください");
}
}
})();

InDesign CS3自動化作戦 with JavaScript の“選択されたテキストフレーム内の文字をファイルに書き出す”のところにも、“もしかしたら、文字コードの関係で〜”とありますが、十分な検証というより、別アプローチが必要な気がします。(Text.exportFile(〜)だとUnicodeでテキスト書き出しできそうですが)

…。

あと、こちらが参考になると思います。
IndesignSecrets.com(http://indesignsecrets.com/exporting-all-stories-text-rtf.php
InDesign CS3のサンプルスクリプトの中に、全ストーリーを個別のテキストファイルに書き出すスクリプトがあるようです。

No.6356 2011/12/15(Thu) 00:56:24
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/534.52.7 (KHTML, like Gecko) Version/5.1.2 Safari/534.52.7

Re: InDesignドキュメントのテキストをテキストファイルに書き出すスクリプト / オメガ
すみません、過去ログにこんなのがありました。別アプローチ云々は忘れていただいて…
http://www2.rocketbbs.com/11/bbs.cgi?id=thats&mode=pickup&no=4253

No.6357 2011/12/15(Thu) 13:42:16
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/534.52.7 (KHTML, like Gecko) Version/5.1.2 Safari/534.52.7

Re: InDesignドキュメントのテキストをテキストファイルに書き出すスクリプト / 流星光輝 URL
横から失礼します。

オメガ様

TextExportPreferences.CharacterSet

idUTF16 = 1937125686
辺りを設定してからの書き出しで
「Shift-JIS範囲外の文字」
には対応できませんか?
CS3だと,
idUnicode = 1249209961
を渡してあげる必要があります。

No.6358 2011/12/15(Thu) 13:46:26
Mozilla/5.0 (Windows NT 5.1) AppleWebKit/535.2 (KHTML, like Gecko) Chrome/15.0.874.121 Safari/535.2

Re: InDesignドキュメントのテキストをテキストファイルに書き出すスクリプト / オメガ
かえってややこしくしてしまったみたいで、すみません。
過去ログを参照して、上のスクリプトの6行目にあるif(flag){の次の行に
fileObj.encoding="UTF-8";
と入れるとShift-JIS外の文字も書き出せました。

あとは、どういった紙面の、どういった用途でのテキストが必要なのかに依りますが、
・テキストの書き出し順の制御(カネムーさんのテキスト連結スクリプト(記事No.6344参照)が参考になるはず)
・マスター上のアイテムの処理(マスターを使ってなければ必要なし)
・表の中のテキストの処理(表組機能を使ってなければ…以下略)
までできれば、実用レベルになるのではと思います。


流星光輝様

レスありがとうございます。
先に述べた別アプローチですが、過去ログでころっけさんが述べている通り
>全部のストーリーのコンテンツを連結したストリングを、新規テキストボックスを作って流し込み、それをテキスト書き出し
という手順を考えておりました。
おっしゃる通り、スクリプトからエンコーディングをUnicodeに指定してテキスト書き出しするには、
app.textExportPreferences.characterSet=TextExportCharacterSet.UTF8;
(CS3ではapp.textExportPreferences.characterSet=TextExportCharacterSet.UNICODE;)
としてから
text.exportFile(ExportFormat.TEXT_TYPE, fileObj);
というような手順で行う必要がありますね。

No.6363 2011/12/16(Fri) 01:12:23
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/534.52.7 (KHTML, like Gecko) Version/5.1.2 Safari/534.52.7

Re: InDesignドキュメントのテキストをテキストファイルに書き出すスクリプト / ラーマ
返信が遅くなり申し訳ありません。
教えていただいた書き方でなんとか出来ました。
レスをいただいたみなさま、ありがとうございました。

No.6371 2011/12/17(Sat) 19:56:50
Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; GTB7.2; .NET CLR 2.0.50727; InfoPath.1; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; Sleipnir/2.9.9)
数字を1桁全角2桁以上半角 / きのぴお
いつもお世話になってます。
Mac OSX InDesignCS4を使用しています。

InDesignの正規表現(置換)を使用して、
数字を1桁全角2桁以上半角にしたいです。

ただ、1.2 や 1,000 は半角のママにしたいです。

段階何回ふんでもいいので、何かいいやり方がないか
もしわかる方いましたら教えていただけないでしょうか。。。

よろしくお願いします。

No.6359 2011/12/15(Thu) 18:58:53
Mozilla/5.0 (Macintosh; U; PPC Mac OS X 10_4_11; ja-jp) AppleWebKit/533.19.4 (KHTML, like Gecko) Version/4.1.3 Safari/533.19.4

Re: 数字を1桁全角2桁以上半角 / きのぴお
ごめんなさい(>_<)

いろいろ調べたらでてきました。。。
ありがとうございました。

(記事の消し方がわかりません)

ただ・・・
JavaScriptを使用するものをみつけたのですが
範囲指定をしなくても全体にスクリプトをかけられる方法が
何かありましたらよろしくお願いします。。。m(__)m

No.6360 2011/12/15(Thu) 19:15:54
Mozilla/5.0 (Macintosh; U; PPC Mac OS X 10_4_11; ja-jp) AppleWebKit/533.19.4 (KHTML, like Gecko) Version/4.1.3 Safari/533.19.4

Re: 数字を1桁全角2桁以上半角 / 流星光輝 URL
ちなみに欧文中の数字も1桁は全角ですか?
No.6361 2011/12/15(Thu) 20:45:46
Mozilla/5.0 (Windows NT 5.1) AppleWebKit/535.2 (KHTML, like Gecko) Chrome/15.0.874.121 Safari/535.2

Re: 数字を1桁全角2桁以上半角 / きのぴお
流星光輝様

欧文中の数字はすべて半角が希望です。

No.6362 2011/12/15(Thu) 23:12:50
Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; GTB7.2; .NET CLR 1.1.4322)

Re: 数字を1桁全角2桁以上半角 / Subi
var obj = app.activeDocument.selection[0];

見つかったスクリプトの最初のあたりにこんな文があると思いますので、その行を次のように書き換えればOKです。
(objの部分はスクリプトの通りの名前を使ってください)

var obj = app.activeDocument;

No.6364 2011/12/16(Fri) 10:09:08
Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; GTB7.2; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.04506.30; MDDR; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)

Re: 数字を1桁全角2桁以上半角 / きのぴお
Subi様
どうもありがとうございます。

function main() {
// 選択されているオブジェクトを確認する
if (app.documents.length == 0) {
myError("文書が開かれていません。\n文書を開いて、テキストを選択してから実行してください。");
} else if (app.activeDocument.selection.length == 0) {
myError("何も選択されていません。\nテキストを選択してから実行してください。");
} else {
var selObj = app.activeDocument; ←ここを教えてもらったものに変更してみたのですがダメでした。ほかにも直すところはありますか??
var objType = selObj.reflect.name;
//alert(objType);
objType = "Text, TextColumn, Story, Paragraph, Line, Word, Character, TextStyleRange, Table, Cell".match(objType);
if (objType == null) {
myError("テキストを選択してから実行してください。");
}
}


申し訳ありませんがよろしくおねがいします。。。

No.6365 2011/12/16(Fri) 10:37:26
Mozilla/5.0 (Macintosh; U; PPC Mac OS X 10_4_11; ja-jp) AppleWebKit/533.19.4 (KHTML, like Gecko) Version/4.1.3 Safari/533.19.4

Re: 数字を1桁全角2桁以上半角 / Subi
function main() {
// 選択されているオブジェクトを確認する
if (app.documents.length == 0) {
myError("文書が開かれていません。\n文書を開いて、テキストを選択してから実行してください。");

} else {
var selObj = app.activeDocument;
}

ペーストされた部分をこのように修正してみてください。

No.6366 2011/12/16(Fri) 11:09:23
Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; GTB7.2; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.04506.30; MDDR; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)

Re: 数字を1桁全角2桁以上半角 / Subi
エラー文章を書き直すのを忘れてました。

function main() {
// 選択されているオブジェクトを確認する
if (app.documents.length == 0) {
myError("文書が開かれていません。");

} else {
var selObj = app.activeDocument;
}

参考にしたいので元にしたスクリプトを紹介していただけますか?

No.6368 2011/12/16(Fri) 11:32:17
Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; GTB7.2; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.04506.30; MDDR; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)

Re: 数字を1桁全角2桁以上半角 / きのぴお
Subi様
どうもありがとうございます(>_<)
できました。。。とても助かりましたm(__)m

こちらに掲載されているものを使わせていただきました。
ttp://d.hatena.ne.jp/ditahack/20101211/1292082494

No.6369 2011/12/16(Fri) 11:42:06
Mozilla/5.0 (Macintosh; U; PPC Mac OS X 10_4_11; ja-jp) AppleWebKit/533.19.4 (KHTML, like Gecko) Version/4.1.3 Safari/533.19.4
epub作成時の画像 / emi Email
はじめまして。
いろいろ参考にさせていただきたく読ませていただきました。

epubへの書き出しを行っています。
もともと画像を取り入れた誌面をを電子化するにあたり、タイトル部分などにイラストや写真などを組み合わせてひとつのページにしたいのですが、PCで確認するととても粗くて気になります。
また、タイトル部分が画像データの場合は目次への対応ができなくなってしまいます。何か方法がありますでしょうか。

No.6350 2011/12/12(Mon) 00:11:05
Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/534.52.7 (KHTML, like Gecko) Version/5.1.2 Safari/534.52.7

Re: epub作成時の画像 / アシタカツツジ
最近,空いている時間でEPUBの試行錯誤をしています。
参考になる掲示板等がないかと探しているところですが…
ご存知の方がありましたら教えてください

>PCで確認するととても粗くて気になります。

書出した後,別に解像度の高い画像を用意して,Sigil等でリンクし直したらいかがでしょうか。

>タイトル部分が画像データの場合は目次への対応ができなくなってしまいます。

css に,ヘッドのclassが display: none; のものを作って,画像がタイトル部分に対応させてはいかがでしょうか。

No.6352 2011/12/12(Mon) 13:08:37
Mozilla/5.0 (Macintosh; U; PPC Mac OS X 10.4; ja-JP-mac; rv:1.9.2.24) Gecko/20111103 Firefox/3.6.24

Re: epub作成時の画像 / emi
やはり画像は別に調整が必要ですね。
いろいろと試行錯誤の状態です。

原因は特定できていませんが確認用に使っているAdobe Digital Editionsが表示開始に予期せぬ理由で終了してしまいます。どうやらレイヤーを何層かもつイラストと写真を組み合わせたオブジェクトの含まれることに関係していそうなのですが...。

ご回答ありがとうございます。
またよろしくお願いいたします。

No.6355 2011/12/14(Wed) 21:22:16
Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/534.52.7 (KHTML, like Gecko) Version/5.1.2 Safari/534.52.7
JavaScritpでのフォルダ移動 / 524studio
JavaScriptでファイルの移動をしようとした場合、
Windowsはrenameでうまくいきますが、
Macintoshは動作せず、copyをしてremoveするという手順をとってます。
ファイル移動はこれでも良かったのですが、
フォルダ移動にcopyは使えないようで困っています。
changePathは違うようですし、
同名のフォルダをコピー先に作成して、中のものをcopy・removeすればいいのかな、と思いつつ、
コピー元がファイルかフォルダかの判別方法できないところで煮詰まっています。

過去ログにも似たような内容のがあったのですが、
CS5ならある程度解決されてるのかなと期待しつつも、やっぱりダメのようです。
何か良い解決方法はないでしょうか?

No.6293 2011/11/14(Mon) 11:15:06
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_2) AppleWebKit/534.51.22 (KHTML, like Gecko) Version/5.1.1 Safari/534.51.22

Re: JavaScritpでのフォルダ移動 / こに
InDesignのスクリプトでファイルのフォルダ間移動を行う、ということでしょうか?どのような目的でそうしたいのかよく分かりませんが...
リンク画像でファイルのフォルダ間移動などするとリンク切れが発生しそうですが、その点は問題ないということでしょうか?
それと、例えばMac上でJavaScriptを実行するときに、JavaScriptからAppleScriptを呼び出し実行することもできます。(このへんはせうぞーさんがお詳しいです)WinでもVBを呼び出せばいいのでは?

>コピー元がファイルかフォルダかの判別方法できないところで煮詰まっています。
それと、ファイルかフォルダかの判別はJavaScriptからできます。

No.6305 2011/11/17(Thu) 13:16:25
Mozilla/5.0 (Macintosh; U; PPC Mac OS X 10_4_11; ja-jp) AppleWebKit/533.19.4 (KHTML, like Gecko) Version/4.1.3 Safari/533.19.4

Re: JavaScritpでのフォルダ移動 / サブミッションサブミッション
ファイルかフォルダかの判別はこんな感じで出来ると思いますよ。
var F = Folder();
$.writeln(F.constructor == Folder);

var F = File();
$.writeln(F.constructor == File);

No.6349 2011/12/11(Sun) 22:39:58
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_2) AppleWebKit/535.2 (KHTML, like Gecko) Chrome/15.0.874.121 Safari/535.2
A4とA3をを混合する場合 / インデザイン氏
A4のレイアウトにA3を入れたいのですが。。。
(マスターでA4を2枚にすると、ページ番号が2枚カウントされるので。。。)
どなたか教えてください!

No.6345 2011/12/09(Fri) 17:25:34
Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0; MALC)

Re: A4とA3をを混合する場合 / いき URL
バージョンはどれですか。
CS5以降ならこちらの記事を参考にしてみてください。
http://study-room.info/id/studyroom/cs5/study01.html

No.6346 2011/12/09(Fri) 17:31:54
Mozilla/5.0 (Windows NT 5.1; rv:8.0) Gecko/20100101 Firefox/8.0

Re: A4とA3をを混合する場合 / インデザイン氏
教えて頂きありがとうございます。。。
ただバージョンはCS4です。
CS4の場合、他にやり方はあるのでしょうか?

No.6347 2011/12/09(Fri) 17:50:47
Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0; MALC)

Re: A4とA3をを混合する場合 / 流星光輝 URL
>ただバージョンはCS4です。
>CS4の場合、他にやり方はあるのでしょうか?


CS4以下の場合、ドキュメントのページサイズを1ファイル内に混合することはできません。
素直にファイルを別に作成ください。

No.6348 2011/12/10(Sat) 15:27:31
Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/534.51.22 (KHTML, like Gecko) Version/5.1.1 Safari/534.51.22
連結の順番を変える / マロニー
テキストフレームの順番を変えたい

同じページのに連結された二つのテキストボックス 1 2 の順序を
2 1 の順序にしたい。
簡単な方法はありませんか?
 

No.6341 2011/12/05(Mon) 21:21:51
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_5_8) AppleWebKit/534.50.2 (KHTML, like Gecko) Version/5.0.6 Safari/533.22.3

Re: 連結の順番を変える / オメガ
何をもって“簡単”とするのか判りかねますが、手元のCS5で試した限りでは、
テキストフレーム1から2への連結を一旦解除して、空になったテキストフレーム2から1に連結で順序が逆になりますけど。
いや、それをもっと簡単にしたいんだ、ということでしたら、スクリプト等でのアプローチになるかと思います。

No.6342 2011/12/05(Mon) 21:57:23
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/534.52.7 (KHTML, like Gecko) Version/5.1.2 Safari/534.52.7

Re: 連結の順番を変える / マロニー
illustrator か Quark で重ね順を変えるだけで順番が変わる方法があったような気がして........。
テキストフレームから出したりしなければならないのですね。
オメガさんありがとうございました

No.6343 2011/12/06(Tue) 09:31:13
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_5_8) AppleWebKit/534.50.2 (KHTML, like Gecko) Version/5.0.6 Safari/533.22.3

Re: 連結の順番を変える / いき URL
連結順を指定したければ少し書き換え(加え)てやる必要がありますが、カネムーさんのこちらのスクリプトが参考になると思います。
http://blog.kanemu.net/2010/03/indesign.html
なお、フレームに文字が入ったままでも連結順の入れ替えが可能です。

No.6344 2011/12/06(Tue) 12:29:15
Mozilla/5.0 (Windows NT 5.1; rv:8.0) Gecko/20100101 Firefox/8.0
InDesign:バウンディングボックスで配置とは? / あっつん
InDesignにaiデータを配置する際、
読み込みオプションで、「バンディングボックス」がありますが、
どういう場合に利用するのでしょうか?

私は「アート」を利用して、
サイズぴったりで配置する事がほとんどなのですが、
バウンディングボックスで配置するとひとまわり大きくなりますよね?
その大きくなる定義も教えていただけるとありがたいです。

No.6337 2011/11/30(Wed) 16:38:14
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/534.51.22 (KHTML, like Gecko) Version/5.1.1 Safari/534.51.22

Re: InDesign:バウンディングボックスで配置とは? / kin URL
ai形式でのデータ配置はちょっとしたクセがあります。

以前ブログにまとめました(おお、3年前だ)。自ブログへの誘導で恐縮ですがご参考までに。

http://ameblo.jp/knym71/entry-10167459159.html

No.6339 2011/12/01(Thu) 00:17:14
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_5_8) AppleWebKit/534.50.2 (KHTML, like Gecko) Version/5.0.6 Safari/533.22.3

Re: InDesign:バウンディングボックスで配置とは? / あっつん
ありがとうございます。
とても参考になりました。
感謝いたします!

No.6340 2011/12/02(Fri) 04:07:34
Mozilla/5.0 (iPhone; U; CPU iPhone OS 4_3_5 like Mac OS X; ja-jp) AppleWebKit/533.17.9 (KHTML, like Gecko) Version/5.0.2 Mobile/8L1 Safari/6533.18.5
全2097件 [ ページ : << 1 ... 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 ... 300 >> ]