2010/04/28

ebookその後

多くのサイトが競ってeBookの未来予測を立てるこの頃。
まぁ自分もそのうちの一人(ってほどのことでもないが)なのだが、appleのFlash締め出しとかを見るとなかなか動きづらい(出版社側では)。それよりも単純にしておくべきなのは、制作データの社内管理。
印刷会社と出版社の関係では、欧米では出版社が完全に印刷データ(組版データ、製版データ等)を完全にコントロールしている模様だが、日本ではそうでもない。ほんの数年前にも、製版データをめぐる訴訟が起きているし、印刷会社としては、印刷はしても組版データは渡さない、というところも多いのである(まぁここらへんは単純に権利関係の問題で契約を見直すことで解決できるのだが)。
図版や表が多い書籍の場合のeBookの作り方ってのは試行錯誤するしかない。当たり前だが。でも結局、HTML化(WEBアプリ化)するのが一番早いのだと思う。アプリとして売るとしてもHTMLをパッケージすればいいだけのことだし。
もちろん検索性は重要であるから、本の索引をうまく変換することが肝心。

とか考えてもiPad的なB5サイズのタブレットが主流になればPDFで問題ない気もするんだな、これが。

2010/03/23

e-book

電子書籍て呼び方に違和感があるのかもしれない、結局のところ。
例えば、WIREDやVIV MagのiPadデモを見て、未来の本!と騒ぐ気にはなれないのである。WEBとどーちがうの?というわけで。個人的には、FLASHサイトは鬱陶しかったのだが、それをタブレットで見ることで変わるのかもしれない、てところに期待はしている。

送り手からのメリットとしては、WEBコンテンツの切り売りが可能となり、しかもコピーの問題も多分クリア、てところだろうか。ただ、先のVIV Magのようなリッチなコンテンツを作るのであればそれなりにコストもかかるだろうしな。。。

2010/03/07

findGrep()で検索したとき

よく忘れるのでメモ。

findGrep()で検索したときの返り値はマッチした文字列の配列。で文字列がどの場所にあるのかを知りたい時は、配列をfor文とかで回してindexプロパティで親ストーリーの何番目のキャラクターなのかがわかる。

例えば次のように取得する。
app.findGrepPreferences.findWhat = "(?s)▲▲(.+?)▼▼";
var result = myStory.findGrep(true);

for(var i=0; i<result.length; i++) {
$.writeln(result[i].index);
$.writeln(result[i].toSpecifier());
}

indexで最初の▲の位置がわかる。toSpecifier()だと最初と最後がわかる。
単純にindexとな。ここで躓いてしまった。

何がしたかったというと、タグで囲まれた部分を吹き出し的なアンカーフレームにする、というもの。テキストフレーム作成→ライブラリ経由→カーソル位置に配置、と今までやってたんだけど、insertionPointがわかってれば直接insertionPoints[x].textFrames.add()、と出来るようなので。

2010/02/22

acrobatのハイライトテキスト

数時間ネットで調べたのだが、やはり皆苦労しているようだ。
そもそもacrobatのJavascriptはリソースが少ない。少なすぎる!ってことで勉強する気にもなれず、一番手っ取り早いが不完全な方法で手を打つことにした。

単純にテキストがハイライトされたPDFをXMLで書き出すだけ。ハイライトされている部分は<Annot></Annot>で括られてるのでその部分だけを拾っていこうかと。頁番号はちょっと厄介。ノンブル部分の作り方に特徴があれば(例えば章タイトル+全角スペース×2+ノンブル、とか)、その規則性から拾ってくる手もあるんだが、そうでない場合は。。。。

まぁハイライト部分は出現順に拾えるはずなので、拾えているかどうかチェックもかねてノンブルを入力してもらっていくのがいいか。。。

2010/02/21

acrobat + javascript = ?

作業の効率化UPということを考えると、結局InDesignでできることは最小限に抑えたい、ということになる。InDesignを使える人ってのは限られているわけで、使えない人にもできる作業を増やすことで、効率化だけでなく、全体の作業量を増やすことができる。

で色々考えると、結局InDesignで色々やるんじゃなくて、wordで文書の構造化やレイアウト、文字属性を決めてしまうってのが手っ取り早いのだろう。
プレーンなテキストファイルってのはたしかに扱いやすいが、逆に手間がかかかる。例えば、学術書であれば、イタリックだったり上付き・下付き文字ってのは日常茶飯事でそれをテキストエディタでタグでくくっててのは手間。ワードだったらキーボードショートカット一発でそこらへんの文字属性は設定できるし。

ということでワードの文字属性やスタイルをほぼ完全にInDesignに読み込ませるようなスクリプトが必要。いや、実際InDesignの機能でほぼ読み込みできるのだが。

次に、InDesignで組み上がってきたものに対する処理。予算があればInCopyという手もあるのだが、そうではないので修正はInDesignでちまちまやる、と。

もひとつ面倒なのは索引。InDesign上で索引マーカーひいてくのが便利なのは確かなのだが、その時間を別の書籍の組版にあてたい。てことでPDF書き出して注釈可能にして、テキストをハイライトさせて索引マーカーを著者に引いてもらうのが一番いいかと。でAcrobatからハイライトテキストを書き出す。

という構想だったのだが、ハイライトテキストを書き出すにはいろいろとややこしい。そもそもテキストをハイライトさせる時にハイライトされている文字列を注釈にコピーする必要がありそれが自動的にコピーしてくれるのはAcrobatのみ。でReaderでハイライトされたテキストは文字列として書き出せないのである。ここでInDesignのようにJavaScriptで何とかなるんじゃないかと思ったんだが。。。

ぐぐってみても良い解決策は見当たらない。ここに
http://www.acrobatusers.com/forums/aucbb/viewtopic.php?id=14150
一応の答えはあるんだが。。。というかそもそもAcrobatでのJavascript環境が貧弱すぎ!でっ挫折気味なのだが、ここらへんちゃんとしたスクリプト出来たらかなり強力かもしれん。

つか調査不足だが、PDFをプログラムでコントロールするってはInDesign以上に効果的なような。