« ■展覧会案内/サイトウ・マコト展:SCENE[0] | index | ■電子浮世絵版画家の東西見聞録[50]ゲリラ豪雨から秋の味覚へ/HAL_ »

■クリエイター手抜きプロジェクト[180]InDesign CS3編 テキストカタログを作成する/古籏一浩

with Ajax Amazon
今回のスクリプトは、フォルダ内にあるテキストの内容とファイル名を自動的にレイアウトします。画像カタログならぬ、テキストカタログといったところです。

InDesign CS3では問題なく動作しますが、それ以前のMacOS X+InDesignの組み合わせでは、日本語ファイル名が化けることがあります。文字化けを防ぐには、以前紹介した濁点変換処理を組み込めば解決できます。
━━━━━━━━━━━━━━━━━━━━━━━━━━━ 印刷通販 PR ━
チラシ印刷ポスター印刷新聞折込チラシカタログ印刷冊子印刷
ポストカード印刷巻き三つ折り観音折りなどに対応した印刷サービス
印刷会社はこちらから↓↓↓ 選挙ポスター印刷もあります。
http://www.ddc.co.jp/index.html
━━━━━━━━━━━━━━━━━━━━━━━━━━━ 印刷通販 PR ━

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

// あらかじめ、たくさんのページをつくっておく事!!
CR = String.fromCharCode(13);
startX = 0; // 開始位置(横)
startY = 0; // 開始位置(縦)
w = 100; // 横幅
h = 30; // 縦幅
maxCountX = 2; // 横の最大テキストフレーム数
maxCountY = 6; // 縦の最大テキストフレーム数
boxHeight = 15; // 行間
x = startX;
y = startY;
cntX = 0;
cntY = 0;
pageNum = 0; // ページ番号
docObj = app.activeDocument;
foldername = Folder.selectDialog("フォルダを指定してください");
if (foldername)
{
ext = ["*.txt","*.html"];
for (var j=0; j< ext.length; j++)
{
fileList = foldername.getFiles(ext[j]);
layoutText(fileList);
}
}
function layoutText(fileList)
{
for (i=0; i< fileList.length; i++)
{
var tfObj = app.activeDocument.pages[pageNum].textFrames.add();
tfObj.visibleBounds = [y,x,y+h,x+w];
tfObj.contentType = ContentType.textType;
fileObj = new File(fileList[i].fsName);
flag = fileObj.open("r");
if (flag == true)
{
tfObj.contents = fileObj.read();
fileObj.close();
}
// ファイル名の追加
var tfObj = app.activeDocument.pages[pageNum].textFrames.add();
tfObj.visibleBounds = [y+h,x,y+h+5,x+w];
tfObj.contentType = ContentType.textType;
tfObj.contents = File.decode(fileList[i].name);
x = x + w;
cntX++;
if (cntX >= maxCountX)
{
cntX = 0;
x = startX;
y = y + h + boxHeight;
cntY++;
if (cntY >= maxCountY)
{
cntY = 0;
y = startY;
pageNum++;
}
}
}
}

テキストファイルの内容を全て読み込んでいるため、処理が遅くなる可能性もあります。もし、先頭行だけで良いのであれば

tfObj.contents = fileObj.read();



tfObj.contents = fileObj.readln();

に変更してください。また、拡張子がtxtとhtmlファイルのみ読み込むようになっていますが、cssなど他の拡張子のファイルも読み込む場合にはext=[〜]に以下のようにして追加します。

ext = ["*.txt","*.html", "*.css"];

"*.doc"を指定してもMS WORDのファイルは文字化けしてしまいますので注意してください。


【古籏一浩】openspc@po.shiojiri.ne.jp
< http://www.openspc2.org/ >

iPhone OS 2.1になって、入力は確かに快適になりました。パケット代金が10万円を超えてましたが、そこは定額なので安心。地図でも表示すれば、あっという間にパケット代が増えそう。約8,800円×24ヶ月なので211,200円。何とか元をとりたいなあ(笑)

さりげなくグーグルストリートビューとマップのページを作成。グーグルマップのページは他にも用意してあるのですが、書籍の関係上追加できないので新たにページを用意しました。

・Google Maps and Street View(グーグルマップ&ストリートビュー)API例文辞典
< http://www.openspc2.org/reibun/Google/StreetView/ >

ジョークで作ったページのアクセスが減らないので、とりあえず一つ追加。

・天空の城ラピュタのムスカ大佐がグーグルのトップだったら……
< http://www.openspc2.org/serif/1001/index.html >

GoogleのブラウザのChromeのページも用意。
・Google Chrome β1 使い方辞典
< http://www.openspc2.org/reibun/GoogleChrome/beta1/index.html >

photo
Ajaxライブラリで かんたんインターフェイスデザイン
古籏一浩
ビー・エヌ・エヌ新社 2008-06-25

Ajax ポケットリファレンス (POCKET REFERENCE) 実践!Ajaxフレームワーク jQuery jQueryで作る Ajaxアプリケーション マイクロフォーマット ~Webページをより便利にする最新マークアップテクニック~ (Web Designing BOOKS) prototype.jsパーフェクトリファレンス―Ajax実践プログラミング



photo
改訂第4版 JavaScript ポケットリファレンス
古籏 一浩
技術評論社 2006-10-18
おすすめ平均 star
starJavaScriptを使ったプロジェクトのお供に是非
starJavaScript仮免者以上の方へ
starバランスの良いバイブル
star中級者向けです。

[改訂版] PHP ポケットリファレンス (Pocket reference) 改訂新版 SQLポケットリファレンス (Pocket reference) 基礎 Ajax + JavaScript 改訂第5版 オールカラー  HTML ポケットリファレンス (POCKET REFERENCE) JavaScriptプログラミング入門 第2版

by G-Tools , 2008/09/22

最近の関連エントリー

トラックバック

このエントリーのトラックバックURL:

コメントを投稿

(いままで、ここでコメントしたことがないときは、コメントを表示する前にこのブログのオーナーの承認が必要になることがあります。承認されるまではコメントは表示されません。そのときはしばらく待ってください。)

back number

Trackbacks

生物進化過渡現象の謎... (哲学はなぜ間違うのか? 2010年6月26日)

デジクリにSwift 3D V5が紹介されました。... (ストーム君日記 2009年1月23日)

デジクリにSwift 3D V5が紹介されました。... (ストーム君日記 2009年6月19日)

うらうつり... (area-Bログ 2009年2月10日)

[DTP][印刷]「裏抜け」と「プリントスルー」... (DTP+印刷営業メモ 2009年2月11日)

「右」と「左」って何だろう〜... (映画とマーケティング日誌 2009年2月 5日)

デジクリ出演... (tech tech okdt 2008年12月15日)

来月は12月だし... (area-Bログ 2008年11月10日)

広告を変えるレスポンスCM動画... (福岡デザイン日記 2008年10月 1日)

専門用語には必ず「読みがな」を付けてほしい... (M.C.P.C. 2008年7月22日)

T-Time... (あさりの楽天倉庫 2008年7月 3日)

[社会]人と関わること... (DTP+印刷営業メモ 2008年6月18日)

DTP Booster 014(Tokyo/100619)

categories

XML FEED
Powered by
Movable Type 4.261