タグ

ブックマーク / d.hatena.ne.jp/seuzo (39)

  • XMLオブジェクトの取り扱い - 名もないテクノ手

    XMLオブジェクトはJavaScriptのコアクラスです。InDesign内の「XMLhoge」クラスではありません。また実装系によっては、使えない場合もあります。 IDML関連でいきおいXMLが大きな役割を果たすことになりましたが、現在のCS3でもXMLをオブジェクトとして扱えます。簡単にパースできるってことですね。rubyやXSLTなどの外部アプリケーションにお任せしてもいいかもしれませんが、JavaScriptの標準で扱えるなら好都合な場面もありそうです。 JavaScript Tool GuideのP219〜のとおりです。用意したXMLはこんな感じ。日語もまぜてみました。 <?xml version="1.0" encoding="utf-8" ?> <bookstore> <book category="COOKING"> <title lang="en">Everyday I

    chalcedony_htn
    chalcedony_htn 2012/12/18
    JavaScriptでXMLをオブジェクトとして扱う
  • はじめてのReVIEW〜InDesignへの取り込み - 名もないテクノ手

    たいへん遅ればせながらReVIEWを導入しました。著者や編集者が簡易に編集可能なReVIEW記法*1を基に、XHTMLやEPUB、XML、TeXPDFなどを自動生成するフレームワークです。 昨年発行された『電子書籍で生き残る技術−紙との差、規格の差を乗り越える−』を読んでからReVIEWに大きな関心を持ちました。先月、海上忍さんのコラム「1つのソースでEPUBとPDFを生成できる「ReVIEW」を試す」を拝見して、ヤラねば! と思いつつずっと宿題だったんです。先日たまたま「ReVIEW の使い方 - A Day in Serenity @ Kenji」を読んでようやく重い腰をあげることとなりました。<重すぎるだろ... でだ。「ReVIEWクイックスタートガイド」と前述のリンクなどを参考にしてちょろっとやってみたら、簡単すぎて拍子抜けしました。もう、書くことない。 (インストール上で注意

    はじめてのReVIEW〜InDesignへの取り込み - 名もないテクノ手
  • Adobe Forumsで特定のフォーラム内を検索するブックマーク - 名もないテクノ手

    先週の土曜日にAdobe Forumsが一時的にbusyになって、今週の月曜日にリニューアルしました。といっても外観はあまり変わっていないですね。しかしながら、スレッドをブックマークできる「Bookmark」や、資料などの「Document」、アンケートを実施できる「Poll」などが追加されました。 アンケート面白そうですね。早速ひとつ作ってみました(要ログイン)。 InDesignの次期バージョンに期待するもの *1 Adobe Forumsでぼくがもっとも使うのは検索です。スクリプトで困った時はたいてい誰かが書いています。以前「Adobe Forumsで特定のフォーラム内を検索する方法」というエントリーを上げましたけれど、リニューアルでオプションクエリが少し変わりましたので、改めてブックマーク用にメモしておきます。オプションをちこちこいじっても同じことができますが、めんどいのです。 基

    chalcedony_htn
    chalcedony_htn 2011/09/22
    フォーラム内を検索するときのクエリ集。
  • InDesign CS5のEventListenerで"afterOpen"と"afterNew"イベントを設定するとファンクションが2回呼ばれる。 - 名もないテクノ手

    テスト用に下記のスクリプトを用意しました。 #target "InDesign" #targetengine "test" (function(){ var cnt = 0;//counter app.addEventListener("afterOpen", test, false); app.addEventListener("afterNew", test, false); function test(myEvent){ cnt++; alert(cnt + " times\r" + "This event is the " + myEvent.eventType + " event."); } })(); 「Startup Scripts」に入れ、InDesign CS5を再起動します。"afterOpen"はドキュメントを開き終わった時、"afterNew"は新規ドキュメントを開

    InDesign CS5のEventListenerで"afterOpen"と"afterNew"イベントを設定するとファンクションが2回呼ばれる。 - 名もないテクノ手
    chalcedony_htn
    chalcedony_htn 2011/09/10
    WindowsXP+CS5.5で再現。新規ドキュメントを開いたときはafterNewとafterOpenが1回ずつこの順で発生、既存ドキュメントを開いたときはafterOpenが2回発生。なんじゃこらー。
  • 【失敗から学ぶシリーズ】#includeは実行前に評価される - 名もないテクノ手

    chalcedony_htn
    chalcedony_htn 2011/06/22
    × #include ○ $.evalFile()
  • 角オプションを指定したテキストフレームでセンター揃えにならない - 名もないテクノ手

    角オプションが施されたテキストフレームでも、行配置設定できるのはInDesign CS5の数少ない新機能のひとつです。この機能をお目当てにアップグレードしたユーザーも多いでしょう。 この画像だとうまく処理されているように見えますね。うふふ... もうちょっとテキストフレームを小さくしてみましょう。 残念! ちょっと左に寄っている*1。上記の合番のように1文字だと致命的に目立っちゃいますね。 もちろん、角オプションが適用されていなければ、センターに揃います。 ちょっとでも角オプションを適用すると、センターに揃いません。「丸み(外)」以外を選んでも同じです。 ちなみに、InDesign CS5.5にアップグレードしてもこのバグは直っていません。

    chalcedony_htn
    chalcedony_htn 2011/06/15
    『だいたい1ptズレています。左インデント1pt入れると中心に来るようです』なにその中途半端……
  • 文字組みアキ量設定、まとめ? - 名もないテクノ手

    もう暑いんだかダルいんだか、なにが「まとめ」なんだかわかんなくなっちゃってる。とりとめもなくダラダラ書いて、まとめってことにしておこう。まとめようと思えば人生だって7文字でまとめられるだろう。「いろいろあった」と。 キホン あ、「文字組みアキ量設定」ね。そうそう、忘れてた。文字組みアキ量設定は2種類ある。アプリケーションデフォルトと、ドキュメントが持っている設定。 app.mojikumiTables;//アプリケーションの持つ文字組みアキ量設定 app.mojikumiTables.length;//-> 16 個ある app.mojikumiTables.everyItem().name;//-> 行末約物半角,行末受け約物半角・段落 1 字下げ (起こし全角),行末受け約物半角・段落 1 字下げ (起こしい込み),約物全角・段落 1 字下げ,約物全角・段落 1 字下げ (起こし全角

    chalcedony_htn
    chalcedony_htn 2011/06/08
    overrideMojikumiAkiListの中身一覧あり
  • 角オプションで一定以上の数値が無効になる - 名もないテクノ手

    角オプションのバグでもうイッパツ。この不具合は誰かがもう書いているかもしれませんが、参照用にエントリーします。 InDesign CS4から角オプションの描画が変わってしまいました。「角オプションで半径以上のRを指定しても半円にならないなー」とお困りの方も多いと思います。 これは高さ40ptのオブジェクトに20ptのRを指定したものですが、半円になっていませんね。これ、30ptを指定しても40ptを指定してもピタイチ変わりません。 もっと小さいオブジェクトでやってみるとこの現象がもっとハッキリします。 あー、もうがっかりだ。ブログ書いててうんざりする。いつまでこんなバグが残るんだろう? (暫定的)解決方法 そもそも、InDesignの角オプション「丸み(外)」のRは正円の1/4円弧じゃないのはずっと以前からの有名なバグです。気になる人はお〜まちさんのスクリプト「角丸長方形に変換、または作成

    角オプションで一定以上の数値が無効になる - 名もないテクノ手
    chalcedony_htn
    chalcedony_htn 2011/06/07
    角の丸み機能で端を半円にできない
  • 強制改行している段落をテキスト変数で正しく拾う - 名もないテクノ手

    テキスト変数はCS3から実装されていて、とても便利な機能です。しかし、強制改行(Shift-Return)を含んでいると強制改行部分にスペースが入ってしまいます。 おそらく、欧文組版の仕様で、単語間スペースを表していると思われます。けれど、ぼくらが使ってInDesignは日語版ですよね。これ、お困りの方も多いと思います。 これをよりスマートに解決する方法を紹介します。 1)何もしない文字スタイルを2つ作ります。ここでは「見出し1行目」「見出し2行目」としました。 2)変数を2種類(1行目と2行目)定義します。「ランニングヘッド・柱(文字スタイル)」でそれぞれ手順1で作った文字スタイルを指定します。 3)見出しの段落スタイルの「先頭文字スタイル」で下記のように設定してください。 文字スタイル文字数文字区切る/含む 見出し1行目1強制改行で区切る なし1強制改行を含む 見出し2行目1文章を含

    強制改行している段落をテキスト変数で正しく拾う - 名もないテクノ手
    chalcedony_htn
    chalcedony_htn 2011/05/12
    テキスト変数の種類を段落スタイルでなく文字スタイルにして並べれば余分なスペースは入らない。 / 『「正規表現スタイル」は使えません』『変数を見てから正規表現スタイルを後に見てるんじゃないか』
  • 合成フォントの名前を変更する - 名もないテクノ手

    合成フォント英語版にはない機能です。和欧混植があたりまえの日語特有の機能といっても差し支えありません。そのためかどうかわかりませんが、InDesignの登場当初から鬼門のように不具合の多い機能であると思います。 合成フォント機能をより安全に使うためには、英数字とハイフンのみで命名すべきです。Fontographerなどでフォントを作成された経験がある方は、フォント命名規則がけっこう神経質であるのをご承知かもしれません。内部的にフォントとして処理されるわけですから、その関連性は容易に想像できます。 やや古い記事になりますが、「見つからないフォント」とは?の中でAdobeのナット・マッカリーさんが非ローマ字による命名がトラブルの一因ではないかと示唆されています。 ぼく自身、なんどかトラブルに遭い使用する名前を変更することで回避した経験則がありました。「名前を変更」といっても、実際に合成フ

    合成フォントの名前を変更する - 名もないテクノ手
    chalcedony_htn
    chalcedony_htn 2010/12/17
    合成フォント名の件。すでに作ってしまっている合成フォント名を変更するのにIDMLが使える
  • InDesign CS5で右綴じのドキュメントを見開きでPDFに書き出すとトンボの形状が崩れる - 名もないテクノ手

    昨夜、大日スクリーンの松久さんがTwitter上でこんなつぶやきをされました。 こちらでもすぐに検証してみましたが、再現せず。松久さんとメッセージをやりとりして、どうやら右綴じの時にだけ起こる現象だと確認していただきました。 再現手順は以下のとおりです。 1)InDesign CS5で右綴じのページを作る 2)見開き・トンボ付きでPDFに書き出す 3)結果: あらまあ。 TouchUpオブジェクトツールでトンボだけを少し移動させてみると、トンボの端が分断されています。 ちなみに、PDFのバージョンやプリセットの種類に関係なくこの問題は起こります。PS書出しをしてAcrobat Distillerで処理しても同様の現象を確認しました。(追記:2010-12-13T17:55:10+0900)TouchUpオブジェクトツールで少しズラしてみても直接書き出しと同じように罫線が分断されています。

    InDesign CS5で右綴じのドキュメントを見開きでPDFに書き出すとトンボの形状が崩れる - 名もないテクノ手
    chalcedony_htn
    chalcedony_htn 2010/12/13
    タイトルどおり。なんだこれ…… / 『PS書出しをしてAcrobat Distillerで処理しても同様』
  • 半角カナのスタイル名を全角カナに変換する - 名もないテクノ手

    各種スタイル名に含まれる半角カナを全角カナに変換します。ていうか、半角カナなんて使っちゃダメ。 あんまりテストしていないので、おかしな所があればレポートください。ご好評ならオモテにアップします。 /* hankakukana_styles.jsx (c)2010 www.seuzo.jp InDesignの各種スタイル名に含まれる半角カナを全角カナに変換する。神経質な人用。 ・段落スタイル・文字スタイル・オブジェクトスタイル・表スタイル・セルスタイル 2010-10-22 ver.0.1 とりあえず。 */ #target "InDesign" ////////////////////////////////////////////エラー終了 function my_error(mess) { if (mess !== "") {alert (mess)} exit(); } //////

    chalcedony_htn
    chalcedony_htn 2010/10/25
    (段落|文字|オブジェクト|表|セル)スタイルに半角カナが含まれていたら全角に置換。それぞれデフォルトで持ってるスタイルをいじらないよう場合分けしてる / どうでもいいけど /[。-゚]/ ←顔に見える……
  • 「9・25大阪の陣」顛末記 - 名もないテクノ手

    既報の如くであるが、過日第六回大阪DTPの勉強部屋のセッション2において、拙者せうぞーと、たけうちとおる氏が、あかね氏の初心者向けサンプルコードをグーでボコボコにした事件の顛末を記そうと思ふ。この事件は後に「大阪9・25」と呼ばれ、DTP正史にこびりついた一点の軌跡として長く語り継がれるであらう。ライブで目撃された方はまことに重畳という他はない。いま、すべてを語る時がきた。 陽が落ちたなら狼煙をあげよ、密者を入れて伝令を飛ばせ そもそもの話をしやう。DTPスクリプトに関してディスカッションを供しようと、4人のスクリプト書きが集められた。秋葉氏を司会に戴き、あることないことえへらえへら喋り散らかす態を見ていただこうってな趣向である。 MLが立ち上げられ、ネタだしをしていく白熱した議論の過程で、「初心者の人が書きそうなサンプルコードをでっちあげて、それを添削していく」プランがぶちあげられた。そ

    chalcedony_htn
    chalcedony_htn 2010/09/27
    楽しかったんだなあw / あとでもっかい読む。
  • rubyからTwitterへOAuthで投稿する - 名もないテクノ手

    大阪DTPの勉強部屋(第6回勉強会)にご来場いただいた皆様、ありがとうございました。スタッフのみなさま、出演者のみなさま、お手伝いいただだいた方々、感謝します! 今回、ちょっと新しい試みとして、スライド内容をリアルタイムでTweetさせていただきました。*1 Togetter -「第6回大阪DTPの勉強部屋」 これ、どうやってやってるのかといいますと、rubyからTwitterに投稿しています。基的な流れは Twitterでアプリ登録をする rubytwitterライブラリをインストールする あとはrubyスクリプト内から好きなだけ投稿する てな感じです。実際に使った簡単なスクリプトを挙げておきます。リターンキーだけで次々とtweetされているのがわかります。 #! /usr/bin/ruby # coding: utf-8 #require 'rubygems' require 't

    chalcedony_htn
    chalcedony_htn 2010/09/27
    種明かしエントリ。参加できなかった勉強会でしたが、このtweetsのおかげで内容がわかってありがたかったです
  • TSVからInDesignのXML流し込み - 名もないテクノ手

    昨日のエントリ「TSV(タブ区切りテキスト)からXMLを簡易生成」を実際にInDesign上で使ってみます。 CSVTSVを指定して、内部的にXMLに変換し、ノードごとにInDesignのXML流し込みを行います。動画で見るとこんな感じ: とりあえず、CS4でもCS5でも動作しました。テストしてみたい方はテストキットを用意しました。 data_tsv2xml.zip ////////////////////////////////////////////エラー終了 function my_error(mess) { if (mess !== "") {alert (mess)} exit(); } ////////////////////////////////////////////ファイル・フォルダ選択ダイアログ。ファイルオブジェクトを返す。 function chooseF(my_p

  • TSV(タブ区切りテキスト)からXMLを簡易生成 - 名もないテクノ手

    TSVからXMLを生成するアプリケーションはたくさんありますけれど、JavaScript内で完結させるために書いてみました。メモ。 こんなTSVがあったとします。 JavaScript内からこのファイルを読み込んで、内部的にXMLオブジェクトを生成します(エラー処理の関係でInDesignで使用するのを前提にしています)。 ////////////////////////////////////////////エラー終了 function my_error(mess) { if (mess !== "") {alert (mess)} exit(); } ////////////////////////////////////////////ファイル・フォルダ選択ダイアログ。パス文字列を返す。 function chooseF(my_prompt, my_kind) { var my_pa

    TSV(タブ区切りテキスト)からXMLを簡易生成 - 名もないテクノ手
    chalcedony_htn
    chalcedony_htn 2010/09/21
    toXMLString()
  • EPUB版『InDesign者のための正規表現入門』頒布はじめました。 - 名もないテクノ手

    InDesignを使って正規表現の基礎と実例が学べるテキストです。EPUBフォーマット*1になっていますので、多くのEPUBリーダー上で閲覧できます。 目次 目次は以下のとおりになっています。 InDesign者のための正規表現入門 はじめに 基礎編 正規表現とは何か? 正規表現で何ができる? ■初めての正規表現検索 メタ文字とは? メタ文字を攻略する ■文字を表すメタ文字 ■位置を表すメタ文字 ■繰り返しを表すメタ文字 ■その他のメタ文字 ■メタ文字をそのものを表すには 「先読み」と「戻り読み」テクニック ■先読み ■戻り読み ■補足 陥りやすい罠 ■欲張りなマッチ ■否定文字クラス ■方言 正規表現の考え方 正規表現スタイルについて InDesign独自の正規表現 ■独自のメタ文字表現 ■改行文字 ■全角半角の区別 ■POSIXブラケット表現 実技編 マーキング済みのテキストに段落スタ

    EPUB版『InDesign者のための正規表現入門』頒布はじめました。 - 名もないテクノ手
    chalcedony_htn
    chalcedony_htn 2010/08/19
    ついに発売! 正規表現の基礎と、InDesignと組み合わせてよく使いそうな実例の解説。初学者向け。/ 『HTML+CSSからSigilにて生成しました。』
  • iBooksでの&lt;pre&gt;タグの扱い - 名もないテクノ手

    html上で、<pre>タグを使ってコード行を表しました。 <pre>[\d,]+(?![\d,円])</pre> これをEPUBにするためにSigilでコンバートしてiPhoneのiBooksで見たら、こんな感じになっちゃってます。iPadで見ても同じです(Thanks! あかつきさん情報)。 な、なんなのこの空白は... ちなみにCSSはこんな感じ。 pre { font-family: "MS ゴシック", "MS Gothic", "Osaka−等幅", Osaka-mono, monospace, "ヒラギノ角ゴ Pro W3"; background-color: #eee; padding-top: 0.4em; padding-right: 0.5em; padding-bottom: 0.4em; padding-left: 0.5em; } ちなみに元のHTMLをブラウ

    iBooksでの&lt;pre&gt;タグの扱い - 名もないテクノ手
    chalcedony_htn
    chalcedony_htn 2010/08/13
    『iBooksはまだボーヤ』この場合悪いのはボーヤじゃなくてSigilおばちゃんだと思うけど / 正規表現入門、着々と進んでいる模様……!
  • InDesign CS5では、PageItemの親はPageではなくSpread - 名もないテクノ手

    親をたずねてxxx - ものすごいハイウエスト日記 上記ブログにもちょっとコメントさせていただいて、すっかり「書いた気」になっていたのですが、一応ここにも書いておきます。 InDesignのスクリプトを長く書いていて、DOMがある程度染み付いている方は「PageItemの親はPageだよね」と何の疑いもなく信じています。しかし、InDesign CS5では、PageItem.parentはSpreadを返します(spreadの親はapplication。Pageを通貨しましせん。)。ですから気がつきにくく、Adobe流儀(驚き最大の法則)に振り回されてしまうかもしれません。 PageItemからPageオブジェクトを得たい場合は、InDesign CS5からPageItemオブジェクトに新しく追加された「parentPage」プロパティを使ってください。 var my_sel = app.

    chalcedony_htn
    chalcedony_htn 2010/07/25
    タイトル通り。CS4までとCS5で分けて処理しないといけなくなるね…… / 『驚き最大の法則』
  • InDesignのドキュメント中にデータを埋め込む - 名もないテクノ手

    ドキュメント内に固有のデータを入れたい場合があります。明示的に入れたいならペーストボードを使うとか、注釈として入れるとか、スクリプトラベルを貼るとかしてもいいかと思います。しかし、スクリプト用設定などの「できるだけ隠しておきたい」データや「あまり触られたくない」データをそれぞれのドキュメント中に仕込みたい場合の方法を考えてみましょう。 XMPメタデータを使う方法 ちかごろのAdobe製品のドキュメントはXMPメタデータを持てるようになっています。一般的な要素はAdobe Bridgeなどからも参照できます。この方法の第一の利点はデータを個別に開く必要がないことです。 たとえば、「説明」-「説明」になにか文字列を入れてみましょう。 var my_doc = app.documents[0]; var my_metadata = my_doc.metadataPreferences;//メタデ

    InDesignのドキュメント中にデータを埋め込む - 名もないテクノ手
    chalcedony_htn
    chalcedony_htn 2010/07/23
    『「できるだけ隠しておきたい」データや「あまり触られたくない」データをそれぞれのドキュメント中に仕込みたい場合の方法』 / XMPとカスタムラベル