カテゴリー別アーカイブ: AH Formatter

組版した結果の文字位置が思い通りにならない―思いもよらない盲点

こんにちは。
AH Formatter』のサポート担当です。

お客様からのお問い合わせで、時々、
「組版した結果の文字位置が思い通りにならない」というのがあります。
詳しい状況をお聞きすると、FO は次のようになっていました。

<fo:block> AH Formatter について </fo:block>
<fo:block> AH Formatter V6.2 は、XSL-FOを使った組版や
CSSを使ったXML/HTMLが使える、組版・印刷ソフトウェアです。 </fo:block>

元々のデータでタイトルや段落中に空白や改行を使って位置を調整していたのでしょうね。
(XSLTスタイルシートでも空白の扱いは難しいですがここでは置いときます)

これをいざ組版してみたらどうなるでしょう。

組版結果

元々あった空白や改行は???

XSL-FO では次のような仕様があるのです。

7.16.7 “linefeed-treatment”
http://www.w3.org/TR/xsl11/#linefeed-treatment
Value: ignore | preserve | treat-as-space | treat-as-zero-width-space | inherit
Initial: treat-as-space
改行コード(U+000A)をどのように扱うかが定義されています。
初期値は “treat-as-space” ですので空白文字として扱われます。

7.16.8 “white-space-treatment”
http://www.w3.org/TR/xsl11/#white-space-treatment
Value: ignore | preserve | ignore-if-before-linefeed | ignore-if-after-linefeed | ignore-if-surrounding-linefeed | inherit
Initial: ignore-if-surrounding-linefeed
これは空白文字(U+0020)の扱いについてです。
初期値は “ignore-if-surrounding-linefeed” です。改行の前後の空白は無視されます。
行の最初と最後の空白は削除されたようになります。

7.16.12 “white-space-collapse”
http://www.w3.org/TR/xsl11/#white-space-collapse
Value: false | true | inherit
Initial: true
これは連続した空白の処理です。
初期値の “true” では、連続した複数の空白文字(U+0020)は一つの空白として扱われます。

まずは、このブロックから見ていきましょう。
<fo:block> AH Formatter について </fo:block>

white-space-collapse=”true” によって「AH Formatter について」の前後にある空白は1つにまとめられます。
次に、white-space-treatment=”ignore-if-surrounding-linefeed” によってその空白も削除されてしまいます。
white-space-collapse=”false” white-space-treatment=”preserve” を指定することで元々あった空白は残ります。

こちらのブロックは改行コードと空白が使われています。
<fo:block> AH Formatter V6.2 は、XSL-FOを使った組版や
CSSを使ったXML/HTMLが使える、組版・印刷ソフトウェアです。 </fo:block>

改行コードを有効にするためには、linefeed-treatment=”preserve” を指定します。

しかしながら、スタイルシートを使った組版はそもそも「コンテンツとレイアウトの分離」というのを
前提に考えることが重要ではないかと思います。
なので、空白文字を使った位置合わせ、というのはあまり望ましくないと感じています。

こうしたお問い合わせは意外と少なくありません。
本日のブログのタイトルは、長年サポートをやっておりますと、
こんな話は基本的なことだろうと思っていたのですが
思い込みは良くないというわたくしへの戒めでございます。

 


『AH Formatter』導入事例、ご意見をお聞かせください。

発売から16年目を迎えました『AH XSL Formatter』では、
これまでにご利用者様の導入事例を紹介する
事例紹介セミナーを開催しています。

今年は 10月15日に開催され、多くの方にご参加いただきました。
過去に開催されたセミナーの資料は、
AH Formatter 導入事例紹介セミナー資料」よりご覧いただけます。

また、ブログでも開催時の様子を紹介した記事がございます。
「AH Formatter 事例紹介セミナー」開催しました。(2014年7月9日の記事)
事例紹介セミナーの検索結果

事例紹介セミナーは今後も随時開催してまいります。
『AH Formatter』の導入事例は常に募集しております。
ご利用者様の声は弊社製品のみならず、業界を盛り上げていきます。
是非ともご紹介、ご協力をいただければ幸いです。

詳細・応募につきましては弊社システム営業グループ(sis@antenna.co.jp)までご連絡ください。

また、導入事例だけでなくご利用者様からの
“これがあれば”、”こんなことができるのか?”など
ご要望、お悩みの点は是非お聞かせください。

私たちも新機能、追加など日々検討していますが、皆様からのご意見が励みになります!
評価版のご利用者からのご意見もお待ちしております。
よろしくお願いいたします。

『AH Formatter』の評価版は以下のページよりお申し込みいただけます。
AH Formatter V6 評価版のお申し込み

 


AH XSL Formatter が ComponentSource の Top 100 Product Award を受賞しました。

このたび、弊社の『AH XSL Formatter』は、「ComponentSource」が扱う 30,000以上の製品の中からベストセラー商品に贈られる「Bestselling Product Awards for 2014-2015」を受賞しました!

AH XSL Formatter Standard - Top 100 Product Award
Product Awards
AH XSL Formatter Standard – Top 100 Product Award

また、開発元に贈られる「Bestselling Publisher Awards for 2014-2015」も受賞しました。

Antenna House - Top 50 Publisher Award
Publisher Award
Antenna House – Top 50 Publisher Award

今回受賞した『AH XSL Formatter』は、XML 文書を組版するための仕様として W3C で勧告された、「Extensible Stylesheet Language (XSL) Version 1.1」によるレイアウト指定をサポートした自動組版・印刷ソフトウェアです。本製品を使うことで、大量の XML 資産を PDF 化したり、印刷したりすることができます。また、ひとつの XML 文書からスタイルシートを変更するだけで異なるレイアウトの PDF を出力することができます。

『AH Formatter』は、お陰様で販売開始から今月で 16年目を迎えました。
今後とも皆様にご愛顧いただけますよう、開発に取り組んでまいります。

 


明日開催のAH Formatter事例紹介セミナーのご紹介

既にご存知の方もいらっしゃると思いますが、明日10月16日(金)はAH Formatter 事例紹介セミナー開催日です。開催前日ですが、まだまだ参加申し込み可能です。
今回は事例発表の中でも、DITA に関連する2社の事例発表についてご紹介致します。

1社目は日立金属株式会社様より、社内ドキュメントを DITA にしたその理由と運用の方法について発表して頂きます。DITA のユーザー様による貴重な導入事例の紹介です。実際の運用例を知る事で、DITA がどういうものなのか、イメージを掴んで頂けると思います。

2社目は PFU テクニカルコミュニケーションズ株式会社様より、テキストエディタ等の汎用製品を使用した DITA の導入について発表して頂きます。DITA 導入には莫大な費用が掛かってしまうとお考えの方必見です。

2社共に極めて実践的な DITA の事例発表となっています。DITA を運用されている方、導入を検討されている方はもちろん、検討段階の方から「DITA とは何ですか?」という方まで、満足いただけるセミナー内容となっております。
もちろん、Formatter が DITA 運用でどのように活用されているかも発表して頂きます。

ここまで、(私はDITA 関連営業ですので)DITA 関連の事例発表の紹介しかしていませんが、クレステック様、慶應義塾大学様、ニューキャスト様、プリコ様より事例発表が行われます。Formatter から PDF の活用まで、幅広い活用例をご紹介頂きます。

セミナーへの参加は無料ですが、下記 Web サイトよりお申し込みをお願い致します。
当日のタイムテーブルも掲載していますので、スケジュールの確認にお使いください。
http://www.kokuchpro.com/event/ccc577a122fa377117dc397491ac67a8/


PDF5-ML

こんにちは。 XML 関連の営業担当です。

マニュアル制作ご担当の方々から注目を集めている DITA ですが、弊社では DITA で書かれたインスタンスを PDF にするためのスタイルシート(DITA Open Toolkit 用のプラグイン)をオープンソースで公開しています。名前を ” PDF5 ” といいます。

DITA Open Toolkit には標準で似たようなプラグインが入っているのですが、残念ながら機能的にしょぼくて、あまり積極的に使いたいと思うようなものではありません。多くの人がまず「日本語が文字化けするんだけど」という問題にぶつかります。 PDF5 ではもちろんこのようなことはないですし、メンテナンス性でも優れていると自負しています。すでに国内外で多くの方に使っていただいています。

そんな “PDF5″ ですが、さらに機能強化したプラグインを先月公開しました。” PDF5-ML “といいます。

” ML ” というのは ” Multiple Language ” の略で、その名のとおり多言語対応を強化したものです。 ひとつの DITA トピックファイルの中に複数言語が混在することがありますが、このような場合でも言語毎のフォント選択をきっちり行うことができます。
DITA 採用時にぜひお試しいただければと思います。

アンテナハウスはこのプラグインのカスタマイズ作業も請け負っております。PDF 生成でお悩みの方はご一報下されば幸いです。

また、このプラグインの勉強会というか説明会を年末ころに開催する計画もありますので、具体化しましたら案内させていただきます。ご期待ください。


世界中で採用されているAH Formatterの実例集 その2

AH Formatter を使って組版した世界各国のドキュメントの例をもう少しご紹介したいと思います。

ドイツでは、電車のチケットを購入すると AH Formatter で組版されたチケットと旅行日程表(アイテナリ) が配布されます。銀行関係の書類、クレジットカードの明細書、運転免許証、政府機関向け正式文書など、様々な書類がAH Formatter の組版に依るものです。中東では、電話料金の請求書に利用、また、南米では電気料金の請求書作成に AH Formatter を使っています。

オランダのTangelo Software 社は、会社の年間報告書を作成するために AH Formatter を使っています。Tangelo 社は、Philips 社用に英語版と中国版が配付できるようにアプリケーションを開発をしました。報告書の例をご覧ください。

大手のグローバル企業は AH Formatter を使って一日に5,000通もの注文書を組版しています。もう一つの使用例としては、グローバル環境でのメッセージシステムです。多くの航空会社で、AH Formatter を使ったチェックシートを利用して、メンテナンス整備を行っています。他にも、テレビや映画界の台本、食品店チェーンの価格表、小切手用紙、視覚障害者向け出版物、教育機関のテスト用紙、美術館のカタログ、各種申し込みフォーム、オーストラリアでは、天気予報を伝えるドキュメントなどに利用されています。

AH Formater は、単に書籍、マニュアル、技術文書の作成に留まらず、あらゆる分野で使われていることがお分かりいただけたでしょうか。

US 営業グループ
アンテナハウス海外サイト
http://www.antennahouse.com/
http://rainbowpdf.com/


世界中で採用されているAH Formatterの実例集 その1

World Wide Web 上に存在する膨大な量 (おそらく数百万件単位) のダウンロード可能ドキュメントが、AH Formatter  を使用して組版されているのはご存知でしたか。アンテナハウスが2001年に AH Formatter をリリースして以来、世界中で実に多くの企業や団体、政府機関が AH Formatter を使用して PDF ファイルを作成し、ダウンロード用ファイルとしてウェブ上に公開しています。

そうしたドキュメントの多くは限られたユーザを対象としており一般には開示されていない一方で、それ以上に多くのドキュメントが誰でもウェブ上で閲覧・ダウンロードできるようになっています。電子出版物の注目が高まるにつれ、多くのユーザは電子書籍を美しく組版されページ番号の付いた PDF ファイル形式でダウンロードしたいと考えているのが実情です。以下は AH Formatter を使用して組版されたウェブ上ドキュメントの実績の一例ですが、ここでご紹介するものはごく一部に過ぎません。

自動車業界では、広範な多言語展開のユーザ用ドキュメントおよびメンテナンス用ドキュメントの両方で、AH Formatter が長きにわたり採用されています。次のリンクより、ドキュメントの一例をご覧いただけます。

政府機関でも AH Formatter の採用は拡大しています。

コンピュータ業界でも、ハードウェア、ソフトウェアの両方で AH Formatter が広く採用されています。

上記の実績はほんの一部に過ぎません。AH Formatter が採用されている業界を網羅したリストは膨大なためここでは全てをご紹介できませんが、主に航空宇宙、金融、輸送、教育、出版などの業界が挙げられます。

AH Formatter を使用して作成したドキュメントをシェアしていただける場合は、ドキュメントのリンクまたはPDF ファイルを mike@antennahouse.com または hiraide@antenna.co.jp  までお送りいただければ幸いです。


2015年10月16日に AH Formatter 事例紹介セミナーを開催します!

アンテナハウス株式会社は、来る 2015年10月16日(金)に『AH Formatter』をご利用いただいているお客様から実際の使用例を伺う事例紹介セミナーを開催します。今回は『AH Formatter』利用の定番、例規集やマニュアルの組版だけでなく、DITA を利用した事例も紹介します。

『AH Formatter』のセミナープログラム
AH Formatter 事例紹介セミナーのスケジュール

今回は、同日同時間帯に『AH Formatter』のほか、「OEM/ASP製品」との二本立てで行います。
セミナーの詳細及びお申し込みは、次の URL をご覧ください。
アンテナハウス 事例紹介セミナー Autumn!(こくちーず)

皆様のご参加をお待ちしております。


AH CSS Formatterで作った本:『CSS Secrets』(Lea Verou)をチェック!

CSSについての解説書はたぶん数えきれないほどありますが、6月に発売された『CSS Secrets』の評判はかなりよさそうです。しかも、この本は弊社のAH CSS Formatterを使っているらしい!

O’ReillyからはPDF版とEPUB版も購入できます。AmazonはKindle版のみです。Kindle版はたぶんあまり読み易くないし、DRMがかかっているので買いたくありません。PDFにしようか、紙版にしようかと迷いましたが、ビジュアルな本は高くてもやはり紙でしょう。早速購入してみました。

書名:『CSS Secrets, Better Solutions to Everyday Web Design Problems』(英語)
著者: Lea Verou
発行所: O’Reilly Media 米国
発行日:2015年6月
ページ数:392

本書のタイトルは、Webデザインで日々発生する問題にどう対処するかについてです。但し、Web全体のデザインをどうしたら良いか、というものではありません。CSS仕様の項目をトピック的にとりあげて、CSS 2.1からCSSレベル3でどのように強化されたのかという観点の説明が主体です。例も、大きなコードではなく簡単なコードとその表示見本を示しています。仕様を作成する立場からの解説本という位置づけになるでしょう。

表紙

01e2d1f7ef2b51d5db79af8812d645905f785cd473

本のページは次のような内容です。

内容1

01327ef684cc6035a23dacb7112099ed765ad092c9

内容2

0120c504fdafc9d07727f9e13cb3f9627a54af0777

この本の制作方法について

この本の内容は、O’Reillyが定義するHTML Book標準のHTML5で書かれており、レイアウト、図、カラーなどはHTML+CSSでスタイル付けされているそうです。

本の制作はO’Reillyの提供するAtlasシステムを使っています。O’Reilly AtlasのPDFレンダラーはアンテナハウスのAH CSS Formatterが採用されています。

つまり、上のようなページは印刷用CSSでレイアウトを指定し、弊社のAH CSS FormatterでPDF化しています。

すごいですね!

CSS組版の実際

CSSでレイアウト指定して作られた本はこれが初めてではありません。例えば、アンテナハウスでPDFを制作した『日本語組版処理の要件』という本もCSS Formatterで制作しています。

HTML+CSSで本を作る、ということは技術的にはできているわけです。

残る大きな問題は、こうした手法が、どの位一般的に使えるか、また生産性がどうか、ということでしょう。『CSS Secrets』の著者であるLea Verouさんは、現在、W3CのCSSワーキンググループに招待されてInvited Expertとして仕様の策定作業に参加しているほどの人です。つまりCSSについて恐らく世界でも有数の専門知識をもっている人が、CSS組版レイアウトの限界に挑戦した(著者の言葉)本が『CSS Secrets』です。この著者だからできることで、誰でもすぐに真似できることではありません。

さて、この本の制作についての統計が載っています。

・内容HTMLは10,000行を超える
・レイアウトはSCSSで4,700行、SCSSから生成したCSSは3,800行

※SCSSというプリプロセッサを使って、SCSSの記法で書いたプログラムからCSSを生成している。最近は、Webページもほとんどこのような手法で作るようになっていると言われます。CSSをハンドコードするのはもはや少数派?

1冊の本のために3,800行の印刷用CSS(生成)しているのですが、これにどれだけの時間を労するものなのか?
『CSS Secrets』はTechyな著者によるTechyな挑戦と言えます。著者がかけた時間と熱意に脱帽です。

一方、プロが使う仕事のためのツールは生産性が重要な指標になります。

システムやツールを評価する観点として、InDesignなどのDTP方式と比べて生産性がどの程度かは、実用性を判断する上で大きなポイントです。

ちなみにアンテナハウスでは、Atlasと類似の本を作る仕組みとしてCAS-UBをサービスしています。CAS-UBはテキスト文字組主体の本に限れば、InDesignよりもはるかに高い生産性で本を作ることができます。ビジネス・ツールは生産性を向上できないと意味がないと思います。

CSS を組版に使うときに注意すべきこと(入門編その2)

こんにちは、『AH Formatter』のサポート担当です。
前回、CSS でレイアウトを実現する上で注意すべき点を挙げてみました。[1]
おさらいすると、
・セレクタで対象を決めて、プロパティと値でスタイル付けすること
・セレクタは多重定義できること
・優先順位があること
などです。
優先順位は大雑把に言ってしまえば、
1.Style=””
2.idセレクタ
3.classセレクタ、属性セレクタなど
の順番に低くなります。

詳しい仕様は、
http://www.w3.org/TR/css3-selectors/
に載っています。
日本語の解説サイトもたくさんあります。
私もまだまだ勉強中です。

実際のところ、一番頻繁に使われているのは <div class=”~”> のタイプかと思います。
コンテンツを divタグで囲って classセレクタでレイアウトを指定します。

.hoge{
border-style:solid;
border-color:#fbbdaf;
border-width:10px 10px 10px 10px;
color:#000000;
font-size:90%;
padding:0.1em 0.4em;
}

<div class=”hoge”>
<p>Antenna House</p>
<p>AH Formatter</p>
</div>

出力結果

ネストしたdiv構造で次のようなケースはよくあります。

.default{
background-color: #900;
padding:10pt;
font-size:20pt;
}
.test{
color:red;
border-top-style:dotted;
border-top-width:10pt;
border-top-color:yellow;
}
.test2{
border-style:solid;
border-width:5pt;
}
.test3{
border-bottom-color:blue;
}

<div class=”default”>
<div class=”test test2 test3″>
<p>Antenna House</p>
</div>
</div>

この場合、競合したスタイルは、後から指定されたものが優先になります。
組版結果は次の通り。

出力結果

さらに、前回、同じセレクタに対して何度でも指定することができると書きました。
上記の例で、
.default{
background-color: #00EE40;
}
を追加したらどうなるでしょう。
この場合も後から定義されたものが有効になります。

次に、CSS が外部ファイルに定義されていて、
このふたつの defaultクラスが別々のファイル(”styleA.css” と “styleB.css”)に保存されていたら?

<link rel=”stylesheet” type=”text/css” href=”styleA.css” />
<link rel=”stylesheet” type=”text/css” href=”styleB.css” />

答えは、”styleB.css” の.default{ }が有効になります。
この順番が変わるだけで結果が違ってきてしまいますね。ああ恐ろしい。

実際にサポート業務をしていると、次のようなデータを見ることが多くあります。

<!DOCTYPE html>
<html xmlns=”http://www.w3.org/1999/xhtml”>
<head>
<meta http-equiv=”content-type” content=”text/html; charset=utf-8″/>
<title>Test</title>
<link rel=”stylesheet” type=”text/css” href=”style-A.css” />
<link rel=”stylesheet” type=”text/css” href=”style-B.css” />
.
.
.
<link rel=”stylesheet” type=”text/css” href=”style-X.css” />
<link rel=”stylesheet” type=”text/css” href=”style-Y.css” />
<link rel=”stylesheet” type=”text/css” href=”style-Z.css” />

</head>
<body>
<h1>Test</h1>
<div class=”A B C D”>
<div class=”E F G”>
<div class=”H I J K L M N” id=”sample”>
<div class=”O”>
<p>………</p>
<ol class=”M A Z”>
<li>……</li>
<li>……</li>
<li>……</li>
</ol>
</div>
</div>
</div>
</div>
</body>
</html>

こんな状態でレイアウトを変更しようとなった時に、
どこを変更したらいいかをすぐに判断するのは難しいですね。
CSS はレイアウトを分離して共通化して運用できるのでとても便利ですが、
複数の開発者が共有するような場合には工夫しないと破綻してしまいそうです。
設計段階での明示的なルール決めと共に、
シンプルなオーサリングやレイアウト設定が必要になります。

続きのお話はまたいずれ。

[1] CSS を組版に使うときに注意すべきこと(入門編)


Pages: Prev 1 2 3 4 5 6 7 8 9 10 ... 14 15 16 Next