« 2005年10月 | メイン | 2005年12月 »

2005年11月30日

Microsoft Officeの文書形式

Microsoft Officeの文書形式は、Office2003では一部がXML形式となったことは、既にお話しました。

(1)Word文書のXML形式のWordProcessingMLは、完全にWord文書の内容とレイアウトを再現することができます。これは、Microsoft Wordの文書交換用形式として使われてきたRTF形式をXMLで書き直したものということができます。

これに対して、
(2)Excel文書のXML形式であるSpreadsheetMLは、基本的な表形式のデータを表現することができるだけです。Excel文書をSpreadsheetMLで保存しますと、Excel文書に埋め込まれた画像、シェイプといわれる図形、あるいはチャートなどは消えてなくなってしまいます。
また、(3)PowerPoint文書のXML形式は発表されていません。

Microsoftは、Office12ではこれをさらに進めて、Microsoft Office Word、Excel および PowerPointの文書をXML形式にすると発表しています。

6月7日 マイクロソフト、XML を次期 MS Office の既定ファイルフォーマットとして採用することを発表(日本語)

6月1日 Microsoft "Office 12" XML File Formats to Give Customers Improved Data Interoperability and Dramatically Smaller File Sizes(英文:上記日本語の原文)

さらに、11月22日になってMicrosoftは、OfficeのXML形式を情報とエレクトロニクスの技術標準化団体であるEcma Internationalに提出するという発表をしました。
Microsoft Offers Office Document Formats to Ecma International for Open Standardization

Office12のXML文書形式は、Microsoft Office Open XML文書形式という名前になるようですが、まず、Word、Excel、PowerPointの文書形式をEcma標準とし、つぎに、EcmaからISOに提出してもらってISOの標準にするつもりのようです。Microsoftにはアップル、インテル、日立などの関係者が賛同していますので、アンチSun連合を結成して対抗していこうということでしょう。

OfficeのXMLアーキテクチャJean Paoliのインタビューもあります。
Q&A: Microsoft Co-Sponsors Submission of Office Open XML Document Formats to Ecma International for Standardization

これを読むと、次のようなくだりがあります。
Jean Paoliのインタビューの中から引用:
The Office Open XML file formats will provide 100 percent of the functionality of the binary formats, as well as total backward compatibility through all past versions of Office.

つまり、バイナリ形式の機能を100%提供するとともにすべての過去のバージョンへの後方互換性も提供すると。

そうすると、今度はExcel文書をXML形式で保存しても情報が脱落することはなくなり、これまで、できなかったPowerPointも完全にXMLで保存できることになります。一般には文書をPDFファイルとして保存してしまいますと、再利用が困難になりますが、XML形式であれば比較的簡単に再利用できますし、情報の交換という用途では、PDFの新しい強敵が表れるとも言えます。

Office文書の形式をめぐる主導権争いは、PDF、XML形式を含めて、ますます熾烈になっていくようです。

参考
Ecma International

Office 2003 XML リファレンス スキーマ

投票をお願いいたします

投稿者 koba : 08:00 | コメント (1) | トラックバック

2005年11月29日

OpenOffice文書形式を標準化

OpenOffice.org(以下、OpenOffice)とMicrosoft Officeの文書ファイル形式をめぐるせめぎ合いも熾烈です。OpenOfficeは当初から文書ファイル形式をXMLを使って定義し、情報を公開していました。それにとどまらず、Sunはe-ビジネスの標準化を推進する非営利団体OASISにOpenOfficeの文書形式を標準仕様として提唱しました。

OASISでは
OASIS Open Document Format for Office Applications (OpenDocument) TCというOfficeの文書形式標準化委員会を設定して、審議を行ったうえ、2005年1月に「Open Document V1.0」を標準形式として承認しました。ところで、この委員会の議長も書記もSunのメールアドレスになっています。これをみれば、標準化の推進にはSunの息がかかっていることは一目瞭然でしょう。

続いて、この仕様は国際標準化機関ISO JTC1に提議されています。

仕様書はこちらで入手できます:
OpenDocument v1.0 specification PDF形式

OpenDocument v1.0 specification OpenOffice形式

これに対し、MicrosoftもOffice2003でWord、EXcelのXMLファイル形式をそれぞれ、WordProcessingML(略して:WordML)、SpreadSheetMLとして設定しています。

Office2003のXMLファイル形式に関するWebページ:
Office 2003 XML リファレンス スキーマ

WordMLに関してはこちらの解説もご参照ください:
XMLに関連したWord 2003の機能(第9回多言語組版研究会資料)

ワープロソフトや表計算などのソフトウェア製品は、MicrosoftやSunなど、それを開発した会社が知的所有権を有するものであることは皆が認めるところです。これに対して、ワープロソフトや表計算で作成したデータは、本質的には、ユーザが知的所有権を有するもののはずです。しかし、これまでは、文書ファイル形式がバイナリになっていたこともあり、あまり、そのことに関する意識が高かったとは言えません。

ところが、XMLで文書ファイル形式を定義できるようになったこと、また、文書の作成手段が完全に電子化したことなどにより、特に、文書ファイルをユーザの手に取り戻そうという要求が高まってくるでしょう。この動きは、まず、欧州連合(EU)、あるいはマサチューセッツ州から始まっていますが、徐々に全世界に広がっていくと見られます。

Officeスイートの文書ファイル形式をXMLで定義する動きはOpenOfficeが先鞭をつけたと言えます。OpenOfficeはPDFネイティブ保存でも、Microsoft Officeに先行しています。このようにOfficeスイートの文書形式に関する動きを主導しているのはMicrosoftよりもむしろOpenOfficeであると言えるでしょう。

投票をお願いいたします

投稿者 koba : 08:00 | コメント (1) | トラックバック

2005年11月28日

リッチテキストPDF V1.1をリリース

アンテナハウスは、PDF変換ソフト「リッチテキストPDF」を12月中旬からV1.1にバージョン・アップします。

「リッチテキストPDF」は、次のような機能をもつPDF変換ソフトの決定版です。

①ワープロ文書などを一括でPDFファイルに変換
②PDFファイルからワープロ文書への一括変換
③PDFファイルから画像やテキストを抽出
④PDFファイルのページ単位での結合・分割
⑤PDFファイルのセキュリティ設定やWeb最適化

今回の改訂では、「リッチテキストPDF」同梱のPDFプリンタ・ドライバをV3にバージョンアップします。新しい機能としてMicrsoft Office文書(Word、Excel、PowerPoint)からPDFを作成するアドイン・ボタンで、Word文書の見出しやスタイルをPDFのアウトライン(しおり)に出力したり、Word文書のコメントをPDFのコメント注釈にする、などの機能強化を行ないました。詳細な機能は以下のとおりです。

Word/Excel/PowerPoint共通
・ソースファイルを添付する
・しおりを出力する
・リンクを出力する

Word
・コメントをノート注釈に変換する
・相互参照と目次をリンクに変換する
・脚注をリンクに変換する

Excel
・コメントをノート注釈に変換する
・ワークブック全体を変換する

価格は従来と同じで標準価格10,290 円です。V1.0のユーザの方は、V1.1をアンテナハウスのWebページから無償ダウンロードでお使いいただくことができます。

投票をお願いいたします

投稿者 koba : 08:00 | コメント (0) | トラックバック

2005年11月27日

OpenOfficeのPDF保存

さて、Microsoft OfficeのPDF保存機能について取り上げたからには、Open Office.org(以下、OpenOffice)のPDF保存機能についても取り上げておかないと片手落ちになってしまいます。

Open Officeは、ワープロソフト、表計算ソフト、プレゼンテーション・ソフトなどからなるOfficeスイートです。Microsoft Officeの置き換えを狙っていて、操作性もMicrosoft Officeにかなり近くなっています。また、Microsoft Word、Excel、PowerPointなどのファイルを高い互換性をもって読み込むことができます。

Open Officeは、オープンソース・ライセンスで提供されているのが特徴です。つまり、だれでもWebサイトからソースプログラムを含めてダウンロードできます。バイナリを自分で無料で使うほか、再配布することもできます。

Officeスイート製品を開発するのは、相当多額な投資が必要なはずです。では、なぜ、そのような多額の開発費を掛けたものを無償で提供できるかと言いますと、このプロジェクトは実際はSun Microsystemsが運営しているものだからです。Sunは、1999年夏、ドイツのStarDivisionというOfficeソフトを買収して、2000年6月にStarOffice5.2を出しました。

なお、StarOfficeは海外での商品名です。日本では、商標権の関係で、StarSuiteという名前を使っています。

その後、StarSuite6.0、StarSuite7.0とバージョン・アップを重ね、現在はStarSuite8.0を出しています。

OpenOfficeは、2005年10月からV2.0が正式リリースされていますが、これにSun独自の付加価値をつけたものがStarSuite8.0になります。

OpenOfficeは、SunのStarSuiteの普及促進策の一環と見て良いと思います。Sunの方は、無償であってもユーザ数が増えていくことで、Microsoft Officeのシェアを奪っていくことができると考えているのでしょう。

Microsoft Officeの独占によって、Officeスイート製品分野で競争がなくなり、その結果、停滞する可能性もあったのです。実際、Microsoft Officeは、Office97以降、大きな進歩はしていなかったと思います。しかし、Office2003でXML保存を取り入れ、今度のOffice12ではネイティブ・ファイル形式をXML形式にするなどのファイル形式のオープン化を推進、さらにOffice12でユーザ・インターフェイスの大幅な刷新などを行なって、OpenOfficeの追撃を必死で突き放そうとしているように見えます。
このように独占によるマイナスの側面をなくしただけでもOpenOfficeは大きな貢献をしているといえます。

この、OpenOfficeは、2003年にリリースしたOpenOffice.org 1.1からPDFのネイティブ保存を実現していました。Microsoft Office12のPDFネイティブ保存もOpenOfficeに刺激されるところが大きいでしょう。

投票をお願いいたします

投稿者 koba : 08:00 | コメント (2) | トラックバック

2005年11月26日

Office12 のPDFサポート (2)

Microsoftのブロガ達のOffice12のPDFサポートに関する発言を拾ってみました。

Brian Jonesさんは、Officeのファイル・フォーマットに関するエバンジェリストです。10月1日Office12のPDFサポート解禁で発言があり、多数のコメントがありました。これに対して、10月2日と4日に質問のいくつかに回答しています。

10月7日よりCyndy Wesslingさんが新しいブログを始めています。CyndyはOffice12のPDFサポートに直接携わった人でPDFに1年を費やしたとのこと。

ざっと、情報を拾ってみました。

Brian Jones: Office XML Formats

○10月1日 Native PDF support in Office  目新しい情報なし

○10月2日 # re: Native PDF support in Office "12" (コメントへの回答)
・出版(公開)シナリオのみで、PDFを読み込むことはしない。

○10月4日 Follow up on questions around PDF support in Office "12" (part 1 of many)
①タグ付きPDFをサポートは、InfoPath、Access、OneNoteを除き、text flow、 ALT textとUnicode textをサポートする。特別なセマンティックスなし。
②プリンタ・ドライバを使わずに直接PDFを書く。その理由は、内部リンク、外部リンクなどの対話性、透明やグラディエントの品質向上。
③Publish(出版)のみで、PDFビューアも読み込みもサポートしない。
④フォントの埋め込みはサポートするが、一般にはアウトライン化はサポートしない。

Cyndy Wessling: Save as PDF in Office "12"
□10月7日 Save as PDF in Office "12"
①PDFをネイティブに生成する(プリンタ・ドライバではない)
②設定は標準と最小サイズ設定の2種類。但し、Publisherは商業印刷設定ができる。
③内部ハイパーリンク、外部ハイパーリンクをPDFに保存
④タグとアクセシビリティは、読みの順序、画像と画像化したテキストの代替テキスト、非標準グリフのUnicode表現する。
⑤ブックマーク(しおり)を出力する。
⑥文書のメタデータを出力する。

概ね、予想の範囲ですが、ブログの発言へのコメントやMicrosoftの人間の発言を読むと、タグ付きPDFによるアクセシビリティへの配慮が大きな課題になっていることがわかります。

あとひとつ気になったこととして、Cindyのプロフィールに、Microsoftで8年働いていて、現在はプログラム・マネージャ。PDFに1年ほど携わったと書いてあります。そうすると、PDF出力機能を1年で作ったことになります。

果たして、ネイティブPDF生成ライブラリーをスクラッチで開発して1年でできるだろうか?PDFは仕様がオープンなので誰でもできるとは言っても、それなりの開発工数がかかりますからね。

例えば、Officeはタイ文字、アラビア文字、デバナガリ文字などをサポートしています。PDFでこういうものをサポートしようとするとWindowsがやっていることと同じことをPDF生成ライブラリーで独自にやらねばなりません。他にも、高度なPDFを作るにはやらねばならないことは山ほどあります。1年じゃ無理じゃないのかなあ。そうするとどうやって作ったんだろう?

投票をお願いいたします

投稿者 koba : 08:00 | コメント (1) | トラックバック

2005年11月25日

Office12 のPDFサポート (1)

MicrosoftのOffice12は、2006年の秋の発売と言われていますが、既にその前宣伝が始まっていて、新しいOfficeはどんなものになるのだろう?と興味を掻き立てられます。

もう、いろいろなニュースで何回も流れているので知っている人も多いと思いますけれども、その中に、Microsoft Office12がPDFをサポートするという話題があります。

これは、Microsoftの上級副社長のSteven Sinofskyが、10月2日にMVPの会議で明らかにしたもの。

Microsoft’s Steven Sinofsky Discusses Support for the PDF Format in Office “12”(英文)
スティーブン シノフスキーが語るOffice “12” における PDF 形式のサポートについて(和訳)

これを読むと、Microsoft Office Word, Microsoft Office PowerPoint, Microsoft Office Excel, Microsoft Office Access, Microsoft Office InfoPath, Microsoft Office Publisher, Microsoft Office Visioで、SaveAs(名前をつけて保存)で、PDFを出力できるようになる、と言っています。

これだけのアプリケーションに対してPDF出力をサポートするということは、PDF出力機能を何らかの共通の基盤の上に乗せているのだろうと思います。そうしますと、この共通基盤がどのようなものかが興味深いところです。

特徴は、
①PDFの仕様は1.4。少々古い
②他のプロダクティビティ製品でも PDFをサポート(他のプロダクティビティ製品って、なんだろう?)
③ハイパーリンクをサポート
④読み上げソフトでアクセス可能(タグ付きPDFか?)
⑤(DTPソフトでは)CMYKカラーモデルやトンボ出力をサポート

などとあります。特に、③、④、⑤あたりは、単にPDFプリンタ・ドライバでPDFを出力するだけではできません。従来は、11月21日に話しました、PDFMakerのような特別なプログラムで実現していたものです。

また、7種類にも上るアプリケーションに一斉にPDF保存機能を持たせるには、個別にライブラリーを組み込むのも工数が大きくなります。ですので、恐らくは、アプリケーションから独立した、共通基盤(レイヤ)を開発し、共通のレイヤを通してPDF生成ライブラリーを使っていると思います。

もちろん、各Officeアプリケーション固有の機能もありますので、きめ細かいPDF作成機能を個別に実装している部分もあると思います。内部がどうなっているか、知りたいものですが。

投票をお願いいたします

投稿者 koba : 08:00 | コメント (0) | トラックバック

2005年11月24日

消え去るType1フォント

Thomas PhinneyのTypblography, the Phinney-us Bloggによると、アドビシステムズはWindows Vistaが出荷される前にType1フォントのMacとWindows向けの小売ライセンスを終了する予定とのこと。最終決定ではないようですが、同社は、早めに情報を流して、ユーザに準備をしてもらおうと考えているようです。

Phasing out "PostScript" Type 1 fonts

このブログページはかなりの長文ですが、要約すると次の通りです。
①Type1フォントは、1980年代半ばにアドビシステムズが導入したアウトライン・フォントでPostScriptフォントとも呼ばれている。
②1996年にはAdobeとMicrosoftが共同開発したOpenTypeフォントを発表し、Type1フォントは技術的に古いものになった。
③アドビシステムズは、既に1999年に新しいType1フォントの開発を終了し、2000年からOpenTypeフォントを発売している。
④MicrosoftはWindowsの新しいグラフィックスとテキストシステムであるPresentation Foundation Engine(開発コード名Avaron)を開発した。このWinPFEではType1フォントをサポートしていない。
⑤Windows Vistaには、WinPFEと旧来のGDIの二つのグラフィックシステムが搭載される。GDIベースのアプリケーションでは、Type1フォントが引き続き使える。しかし、WinPFEベースのアプリケーションでは、Type1フォントはフォントのメニューにも表示されない。
⑥既にアドビシステムズのフォントの売上げは圧倒的にOpenTypeフォントになっており、Type1フォントの売上げはどんどん減っている。
⑦このようなことから、Type1フォントの販売を終了し、ユーザが早い時期にType1フォントからそれに対応するOpenTypeフォントに移行することを望んでいる。

VistaではGDIとWinPFEが両方使えても、10年、20年のスパンでみればWindowsからGDIがなくなる可能性があります。長期的に、同じ目的の二つのサブシステムを並行してサポートしていくのは、Microsoftといえども重荷でしょうからね。そうなるとType1フォントのラスタライザは、Windowsの機能としては提供されなくなります。

PDFファイルにフォントを埋め込めば、作成した環境と同じフォントが、表示したい環境になくても文字が見える、ということが売りです。しかし、肝心のType1フォントのラスタライザが存在しなければ、Type1フォントの文字を表示することができません。

この点、大丈夫なのでしょうか?このブログでは、
⑧アドビシステムズのアプリケーションはOSとは独立のフォント・エンジンをつかっているのでType1フォントはサポートできる。
⑨PDFに埋め込まれたType1フォントは、恐らく永久にサポートされるだろう。

とあります。どうやら、アドビシステムズのアプリケーションは、フォントのラスタライズをWindowsに依存しないで独自でやっているようです。そうしてAdobe Readerは、独自のフォント・ラスタライザを使っているので、WindowsからType1フォントのラスタライザがなくなっても大丈夫ということらしいですね。

しかし、やはり安全をみるためにもいくつかの代替手段が必要なように思います。そうでないと、ある時期から突然、膨大な量の(Type1フォントを埋め込んだ)PDFファイルを誰も読めなくなる日が来ないとも限りません。

ところで、この記事に匿名の人がかなり厳しく突っ込みを入れてます。そちらの議論も面白い。Thomas Phinneyは、Type1フォントのサポートを止める理由として、WinPFE用にType1フォントのラスタライザを開発する(新しく開発ではなく調整なんですが)のはとても大変。ラスタライザは上級の専門プログラマでないとできないので人手が足りなくて間に合わないんだ、という説明しているのです。

それに対して、匿名の人はそんなことはない、例えば、Type1からOpenType CFFに変換してサポートするのは既に行われているし、難しいことではないだろうと言っているのです。

既に蓄積されている膨大なType1フォント資産を考えると、簡単に切り捨てるのはどうなんでしょうね。私はこの匿名者の主張の方に一票を投じたいと思います。

投票をお願いいたします

投稿者 koba : 08:00 | コメント (0) | トラックバック

2005年11月23日

XSL Formatter V3.4 をリリース

アンテナハウスは、11月21日、XSL Formatter V3.4 を公開しました。この製品は、W3Cが策定したExtensible Stylesheet Language (XSL-FO)仕様に準拠する組版ソフトです。XSL-FOを高速に自動組版して、PDFを作成することができます。

2000年の12月に発売して以来、日本のみでなく世界中で高い評価をいただいているものですが、今回のバージョンでは、次のような機能強化を行ないました。

1.PANTONE社との契約により、PANTONEオプション(カラーデータベース)を用意しました。これを使えば、スポットカラーにPANTONEの色名だけを指定すると、RBGカラー、CMYKカラーといった代替色をデータベースから取り出して画面などに表示できます。PDFの中ではSeparationカラー・スペースを使ってPANTONEの色名を保存します。このPDFを画面表示するときは代替色で表示します。印刷工程で使用するときは、PANTONEの色名を取り出して使えるはずです。

詳しくは、PANTONEオプションについての説明ページをご覧ください。

実際の印刷工程でどう使うかは、私にはまだわかっていません。どなたかご存知の方がいましたらお教えいただきたいものです。

2.作成したPDF文書を開いたときの表示方法を、 ①文書アウトラインもサムネールイメージも非表示、②文書アウトラインを表示、③サムネールイメージを表示、④フルスクリーンモード、⑤オプションのコントロールグループパネルを表示のどれかで指定できます。また、文書を開いたときに表示される宛先または実行されるアクションを指定できます

3.組版したページに行番号を出力できます。これは、主に法律文書で必要になることが多いようです。カナダの司法省などの既存ユーザからの強い要望で追加したものです。

4.欧文組版のための拡張を用意しました。フランス語の組版における禁則処理、およびEU公文書ルールに沿った組版が可能になります。EUでは公文書の組版規則を決めていますが、このあたりは、今年の4月の第16回多言語組版研究会で家辺氏に教えていただいたことです。

5.段落の最後の行が1語だけにならないように指定できるようになりました。

今回のバージョンアップは、全体として、海外ユーザからの要望による機能拡張が中心になっています。日本国内では、PANTONEよりは、東洋インキなどのカラー名を指定できるようにする方が良いのではないかと思われますが、日本国内でよく使われる色データベースについてはまだ未検討です。どなたかご存知でしたらお教えいただければと思います。

XSL Formatterは、いろいろ勉強しながらですが、世界で最も優れた多言語組版機能とPDF自動生成のエンジンを目指しています。XSL-FOについては、また、機会をみて詳しくお話したいと思います。

投票をお願いいたします

投稿者 koba : 08:00 | コメント (0) | トラックバック

2005年11月22日

安価なPDF作成ソフト

昨年来、PDF作成ソフト製品は、安くて、手に入れやすいものになり、また、いろいろな製品が出回るなどホットな分野になりました。そこで、雑誌やWebサイトには、安価なPDF作成ソフトの比較記事がいろいろ掲載されるようになっています。

その一つに、
PDF再入門 PDF再入門-フリーソフトでどこまでいける?
があります。

この記事は執筆時期が2004年12月ですが、その時点でのPDFを作るという状況がどうなっているかが概観できます。タイトルとは違って、Acrobat7(β版)の紹介のスペースが多いですが、アドビシステム一辺倒ではなく、それ以外に、Mac OS X、低価格ソフトなどが一通り紹介されているのがうれしい。

ただ、執筆後、「いきなりPDF」はもう新しいバージョンになり、開発元も変わって、機能も大幅に増えています。「PrimoPDF」も新しくなっているように思います。1年足らずで、書いてある内容が古くなるというのことに時間の流れの速さを感じます。それだけこういう安価な製品の寿命が短いのかも知れませんね。使う方も安価なソフトは、耐久製品というよりは、消耗品的に考えるのが良いように思います。

この記事の中で、特に、私が、面白いと感じましたのは、
PDF再入門まとめ - いずれは空気になるかも?
というところですね。

PDFは、仕様が公開されているので「あって当たり前という存在になっても不思議ではない。」とのご意見。確かにそういう時期がくるかも知れないと思いました。

ところが、実際のところ、来年(2006年)には、この記事の著者(海上忍氏(ペンネーム?))の予想通り、あるいは予想を遥かに超えた変化が起こりそうです。

投票をお願いいたします

投稿者 koba : 08:00 | コメント (0) | トラックバック

2005年11月21日

PDFの作成方法(14) – PDF Maker

さて、11月7日に、アドビシステムズのAcrobatには、PDFMakerというものがあるとお話しました。

このPDFMakerは、PDFの便利な機能の中で、紙にないためプリンタに印刷する操作では設定できない機能をどうやって設定するか、という課題についてのアドビシステムズの回答と思います。

PDFMakerで具体的にどうやっているか、内部までは詳しく知りません。しかし、OfficeソフトとPDFプリンタ・ドライバの間に介在して、Officeソフトに印刷動作させながら、同時にPDFファイルに設定したい情報を取り出して、PDFプリンタ・ドライバに渡しているのではないかと想像できます。

これにより、PDFMakerを使えば、Microsoft OfficeからPDFファイルを作るとき次のようなことができるようになっています。
・Aodbe PDFにしおりを追加
・(Word)見出しをしおりに変換
・(Word)スタイルをしおりに変換
・Adobe PDFにリンクを追加
・(Word)相互参照と目次をリンクに変換
・(Word)脚注と文末脚注のリンクを変換
・タグ付PDFでアクセシビリティと折り返しを有効にする
・表示されたコメントをPDFのノート注釈に変換

しかし、問題点としては、アプリケーション依存となってしまうことです。すなわち、AdobeのPDFMakerが使えるのは、現在、Microsoft Officeのみとなっていて、さらに、Acrobatのバージョンにより対応可能なOfficeのバージョンが違っています。

なお、アドビシステムズ以外のPDFプリンタ・ドライバのメーカも、PDFMakerとの対抗上、同じような解決策に基づくプログラムを製品に同梱しているケースが増えています。

【参考】
PDFMakerの対応するMicrosoft Officeのバージョン
PDFMaker の対応状況一覧

投票をお願いいたします

投稿者 koba : 08:00 | コメント (0) | トラックバック

2005年11月20日

PDFの作成方法(13) – PDFの対話的機能

さて、実際のプリンタには接続しない仮想的なプリンタ・ドライバでPDFファイルを作成する、という方式には、次のような制限ができます。

ワープロソフトなどのアプリケーションの印刷機能は、プリンタを使って紙に印刷することを想定しています。このため、印刷機能を経由するだけでは、紙にはないけれども、PDFには用意されているいくつかの便利な機能を設定できないのです。

では、PDFにあって紙にない便利な機能とはなんでしょうか?主なものを簡単に紹介しましょう。

まず、しおり(BookMark)があります。文書のアウトラインをPDFファイルに設定しておきますと、Adobe Readerは、アウトラインを次の図のようにウィンドウに表示します。アウトラインの項目をクリックすると、その項目に設定されたリンク先にジャンプします。

BookMark.jpg

一般的には、文書の見出しを階層化してアウトラインを作ります。項目に設定するジャンプ先は、表示しているPDFファイル内でも外部でも構いません。書籍、操作説明書、仕様書などページ数の多いPDFファイルを作成する場合、しおりを設定することで、読み手が文書全体をナビゲーションし易くなります。

第二に、リンクがあります。PDFファイルの中にリンク先のアドレスを埋め込んでおき、ファイルをAdobe Readerなどで表示したとき、そのホットスポットをクリックすることで、埋め込まれたアドレスへジャンプするものです。使い方としては、目次から本文へのリンク、索引から本文へのリンク、本文内で別の箇所を参照、などが主なものです。PDFファイル内のみではなく、外部のPDFファイル(の特定の箇所)や外部のWebページへのリンクも設定できます。ユーザがホットスポットをクリックしたとき、その動作をするのはもちろんPDFビューアの役割です。

第三は、コメントです。PDFでは沢山の種類のコメント機能が使えます。PDF Referenceでは8.4 Annotationという項に定義されています。テキストで注釈を書く以外に、線、矩形、円、多角形、折れ線、ハイライト、アンダーライン、取り消し線、スタンプなどを使うことができます。本文とは別になっていて、既存のPDFファイルにコメントを追加したり、削除したりといった編集ができるように配慮されている訳です。Microsoft WordやExcelなどのOffice文書でも、本文と別にコメントをつけることができます。このコメントをPDFファイルを作成するとき、PDF内のコメントにできると便利でしょう。

第四に、アクセシビリティ機能があります。これは、また、別途、お話しましょう。

PDFには、これ以外にも、紙にはない、いろいろな機能がありますが、Officeソフトで作成するPDFファイルを想定すると、このあたりが主なものです。

PDFプリンタ・ドライバは、アプリケーションが紙に印刷するつもりでプリンタ・ドライバに対して出力したデータを取り込んでPDFファイルを作ります。このとき、しおり、リンク、注釈などは、データとして出力されないわけですから、PDFファイルに設定できません。何らかの工夫が必要になります。

投票をお願いいたします

投稿者 koba : 08:00 | コメント (0) | トラックバック

2005年11月19日

PDFの作成方法(12) – いきなりPDF

さて、2004年春にソースネクストが発売した「いきなりPDF」は、衝撃的でした。なにしろ、それまでAdobeのAcrobatは、3万円以上していたのですが、1,980円でPDFを作成できる製品が現れたわけです。

「いきなりPDF」はソースネクストの販売力もあって発売と同時に爆発的に売れたようです。

さて、これは、なんの変哲もない、Windows用のGDI型PDFプリンタ・ドライバをパッケージ化したものですが、「いきなりPDF」の商品化は、次の点で大きな功績があったと思います。

(1)それまで高価な印象があったPDF作成ソフトを安価で提供し、PDF普及のはずみをつけた。
(2)PDFを印刷業界から一般のビジネスマンにとっても身近なものにした。
(3)PDF作成ソフトの市場をアドビシステムズ独占状態から、サードパーティのものを含め乱戦状態に変えた。

最初の「いきなりPDF」に採用されたPDFプリンタ・ドライバは、スカイコム社が開発したものでした。実は当社も既にPDFプリンタ・ドライバを開発済みでしたが、それが売れるとは夢にも思っていなかったのです。振り返ってみれば、なんの変哲もないPDFプリンタ・ドライバが数十万本も売れるというのは、それだけPDFを作りたいがAcrobatは高いという、つまり需要と供給にギャップがあったということなのでしょう。そして、それに気が付いていなかったのです。

その後、アンテナハウスでは、ソースネクストから「いきなりPDF Professional」を出すことができました。現在では、「いきなりPDF2」も、スカイコム社のPDFプリンタ・ドライバからアンテナハウス製にリプレースしています。この結果、「いきなりPDF Professional2」と併せて両方が、アンテナハウスが開発したものになっています。

「いきなりPDF Professional」では、一括PDF作成と言って、ファイルをドラッグ&ドロップ操作でウィンドウに落とすだけでPDFを作成する機能もあります。このプログラム内部は次のようになっています:
①ファイルを作成したアプリケーションの種類を判別、
②例えば、Microsoft Wordのファイルなら、WordをCOMを使って、プログラム内で起動して、印刷動作をさせ、
③PDFの印刷ができたらWordは終了。

PDFを作るのはPDFプリンタ・ドライバを使っているのですが、印刷メニューからプリンタ・ドライバを選択する、という初心者に分かり難い操作なしで、あたかも自動的にPDFができるようになっています。「いきなりPDF Professional」は良く売れていますが、こういうエンドユーザ向けの使いやすい機能が人気を得たようです。この一連の仕事では、パソコンのユーザ層の裾野が広がっているので商品を作るときもユーザの目線を忘れないようにしないといけないんだな、と良い経験となりました。

そんなこともあって、ここ1年ほどの間、小売店のルートを通じて販売しているPDFのプリンタ・ドライバでは、アドビシステムズを抜いて、アンテナハウス製のPDFプリンタ・ドライバがトップのシェアを取っているんです。もっとも、今年の4月からアドビシステムズもAcrobat 7.0 Elementsを税込み4,900円(アドビストア価格)で出し、対抗してきましたので低価格PDFプリンタ・ドライバの競争も激化しています。負けないように頑張っていきたいものです。

投票をお願いいたします

投稿者 koba : 08:00 | コメント (2) | トラックバック

2005年11月18日

PostScriptプリンタドライバとGDI型PDFプリンタドライバの相違

PDFを作成するプリンタ・ドライバには、PostScriptを経由する方式とGDIからPDFを作り出す方式があると言いました。

やや専門的になりますが、この2種類のプリンタ・ドライバには次のような違いがあります。

①GDI型のプリンタ・ドライバはWindowsのGDIの機能に依存しているので、WindowsGDIの機能的制約を受ける。
②PostScriptプリンタ・ドライバは、WindowsGDIの機能制限を受けない。

この大きな違いの理由は、PostScriptプリンタ・ドライバは、Windowsのシステムの中で別格扱いされているということです。そして、アプリケーションは、GDIを経由しないで、PostScriptプリンタ・ドライバに対してデータを送り出すこともできるということです。

両者の方式では、MicrosoftWordなどでビジネス文書を作成している間は、大きな違いはでません。しかし、例えば、商業印刷などでプロ向けのグラフィックス・ソフトを使う場合には大きな差が出てきます。

例えば、テレビなどでカラーを表示するときは、RGB(Red,Blue,Green3原色)で表現することは多くの人が知っていると思います。WindowsのGDIも、テレビと同じように、カラーを全てRBGとして表現しています。そして、GDIを経由するPDFプリンタ・ドライバを使って作成したPDFの中ではカラーはRBGで表現されます。

しかし、印刷でのカラー表現はCMYK方式を使います。印刷用のアプリケーション・ソフトではカラーをCMYK方式で指定できるものもありますが、CMYK方式で表現したカラーは、WindowsGDIでは表示できません。このため、GDI型のプリンタ・ドライバで作成したPDFの中では、CMYKカラーを使えません。

また、アプリケーションによっては、PostScriptプリンタ・ドライバに出力するときと、GDI型のプリンタ・ドライバに出力するときで、内容を変えてしまうものがあることも分かっています:
例えば、MicrosoftのVisioは、PostScriptプリンタ・ドライバに対しては、ベクトル・グラフィックス形式でデータを出し、GDI型のプリンタ・ドライバに対しては、ラスター・イメージ形式でデータを出すようです。

なお、今日述べたことは、PDFを作成するプリンタ・ドライバとしての差異であって、PDF作成方法一般に該当することではありません。例えば、アプリケーションから、直接PDF生成ライブラリーを使って(つまりプリンタ・ドライバを経由しない)PDFを作れば、RGB以外のカラー表現方式を使うことも可能です。

投票をお願いいたします

投稿者 koba : 08:00 | コメント (0) | トラックバック

2005年11月17日

EPS(Encapsulated PostScript) 続き

印刷用PDFを作る際に、EPS対策として考えられることは、

(1)EPSの中のPostScript部分を取り出して、PDF中に埋め込む。
(2)EPS画像を予めSVGなどのほかのベクトル画像に変換しておく。あるいは、EPSではなく、SVGで画像を用意してもらう。
(3)EPS画像を予めPDF化しておき、本文のPDFの中に画像部分のPDFを埋め込む。

など、幾つかあります。今日は、これについて話しましょう。

(1)は、PDFの中に、画像部分だけPostScript命令を埋め込んでしまうことになります。PostScript XObjectsを使います。これを実際にやっているPDFソフトもあったと思います。(いまちょっと思い出せないですが)。しかし、これは、PDF Referenceでは、非推奨の方法とされています。

(2)は、理論的には一番適切だろうと思います。SVGもベクトル画像で、PDFと親和性も高いので、SVGで書かれたグラフィックスをPDF中にベクトル画像として埋め込むのは簡単です。また、PostScriptインタープリターは完全に排除できます。しかし、実際は理屈どおりに行かないもので、例えば、アドビシステムズのIllustratorの出力するSVGは、オリジナルのイラストを忠実に再現していない部分もあります。これまでいくつか問題が報告されています。CorelのSVGの方がむしろ品質が良いと言っている人もいました。まあ、こういう状況はバージョン・アップで変わっていくでしょうが。

SVGがもっと普及して、Illustratorなどのグラフィックス・ソフトが完璧なSVGを生成できるようになれば、この方法が一番、実用的になると思います。現状では、SVGを作成するソフトとSVGを解読するソフトの間の互換性に注意して採用しなければなりません。

(3)は、EPSファイルをまとめてPDF化する過程で、AcrobatまたはPostScript互換のインタープリタを使うPDF作成ソフトが必要となります。しかし、一旦EPS形式のイラストをPDF化して用意しておけば、後は、もう、PostScriptインタープリターは不要となります。

そんな訳で、アンテナハウスのPDF生成ソフトには、PDF中にPDFを埋め込むための機能を用意しています。マニュアルなどのPDFをオンデマンドで生成する、という応用の際には、現時点で、一番実用的な方法ではないかと思っています。

このアイデア、自分達で知恵を絞って考えたんですが、その後、競合する製品でも同じことをしているのに気が付いて、「ああ、やっぱり、アソコの会社の人も同じことに苦しんだんだな」と思って、妙な連帯感を持ったものです。

私は、PostScriptは、TeXと同じで既に過去の技術になっていると思うのです。しかし、EPSがあるためにPostScriptインタープリターを手放せない、ということになっています。EPSに変わるものとしてSVGに期待するところが大きいのですが。

【参考】
PDF Reference Version 1.6, 4.7.1 PostScript XObjects より:
PDF1.4以降、アドビのPostScript言語のイメージ・モデルの特徴を全て包含したので、PostScript XObjectsの存在理由はなくなった。この機能は将来のバージョンで削除されることになるだろう、とあります。

投票をお願いいたします

投稿者 koba : 08:00 | コメント (0) | トラックバック

2005年11月16日

EPS(Encapsulated PostScript)

さて、EPSという言葉が、11月14日11月15日と2日連続で出てきました。

EPSは、PostScriptを使わないでPDFを作る技術の、恐らく一番の泣き所です。

EPSという言葉は、グラフィックス・デザイナーやDTPの仕事をしている人なら良く知っている言葉なので、今更、説明することもないようなものですが、その仕組みを知らない人が意外に多いようです。XSL Formatterの技術サポートへの質問は、EPS関係の問題が時々あります。

アドビシステムズのIllustratorを初めとしてプロ向けのグラフィックス処理ソフトは、データ交換用にEPS形式を使うものが主流です。このため、EPS形式は高度なグラフィックスの標準的な形式となっています。商業印刷のソフトにはEPS処理機能は必須です。

商業印刷のみではなく、マニュアルなどの技術文書を作成する際にも、グラフィックス・データをEPS形式にして使うことが多いようです。イラストを別のソフトで作成し、それをEPSファイル化して持ってきて、マニュアル本文中に図形として組み込むわけです。

EPSのファイルは、PostScriptによるページ記述命令と、そのページのプレビュー・イメージの両方を1パッケージ化できるようになっています。プレビュー・イメージはPostScript命令からページ内容をレンダリングする機能をもたないソフトでも、EPSファイルの内容を表示できるようにするためのもの。EPSファイルを作成する時に、オリジナル作成ソフトが用意して埋め込むのが普通です。

Webなどで配信するPDFを作成する際は、グラフィックス部分にはEPSファイルからプレビュー・イメージを取り出してPDFに埋め込めば良いのです。しかし、印刷用のPDFを作成するには、EPSファイルからプレビュー・イメージを取り出して埋め込むのは不適切です。プレビュー・イメージでは解像度が低すぎて、綺麗に印刷できないからです。

また、EPSファイルにはプレビュー・イメージがないものもあります。その時、EPSファイルのPostScript部分からプレビュー・イメージを作り出さねばなりません。GostScriptをEPSにプレビューをつけるために使っているとコメントされた方がいましたが、11月9日のコメント、EPSの中のPostScript命令を解読してページをレンダリングするにはPostScript(または互換)インタープリターが必須となります。

つまり、PostScript非依存にしたつもりなのに、EPSがあるとPostScript(または互換)インタープリターが必要になってしまうんですね。

この問題をどうやって回避するか。PostScritpに依存しないPDF生成ソフトを提供しているベンダーにとって、EPS対策は知恵の絞りどころとなっています。

投票をお願いいたします

投稿者 koba : 08:00 | コメント (0) | トラックバック

2005年11月15日

PDFの作成方法(11) – GDI型PDFプリンタ・ドライバ

PDFを作成するプリンタ・ドライバには、PostScriptを経由せず、PDFを直接書き出す方式を採用しているタイプのものがあります。これをPostScriptを経由する方式と比較して、GDI型PDFプリンタ・ドライバと呼びましょう。

GDIというのは、Microsoft Windows専用の言葉で、Windowsでディスプレイへの描画やプリンタへ出力する情報を統合的に扱うプログラム・モジュールのことを言います。

Windowsの上で動くアプリケーションは、画面などに絵を描画するときは、GDIに対して命令を発行します。GDI型のPDFプリンタ・ドライバは、このGDI命令を受け取ってPDFの命令にして出力するわけです。

以前に、AcrobatにはPDFWriterというプリンタ・ドライバがあったが、現在はなくなっている、(11月7日)と言いました。

このPDFWriterはGDI型のPDFプリンタ・ドライバと見られます。それは、Acrobat5のヘルプに次のような記述があることから推測できます。

(以下■で囲む項の部分の内容は、Acrobat5のヘルプより抜粋したものです。)

■ここから
PDFWriter の概要
PDFWriter は、他のソフトウェアアプリケーションのファイルを直接Adobe PDF に変換するプリンタドライバです。このユーティリティは、主にテキストで構成されているドキュメントの変換に適しています。どのような場合にPDFWriter を使用すればよいか、ガイドラインを以下に示します。

Microsoft Word やExcel で作成した単純なビジネス文書を変換する場合。
Encapsulated PostScript(EPS)グラフィックが含まれていない文書。
お使いのシステムのRAM 容量が少ない場合。
Distiller で作成するよりも素早くPDF ファイルを作成したい場合。
■ここまで

上の記述の内容は、GDI型のプリンタ・ドライバの一般の特徴を示しています。要はこのようなGDI型のプリンタ・ドライバは、一般ビジネスの用途で、配布・閲覧・資料保存用のPDFを作るのに適しているのです。

このようなGDI型のプリンタドライバは、アドビシステムズ以外からも多数のものが販売・配布されています。

投票をお願いいたします

投稿者 koba : 08:00 | コメント (0) | トラックバック

2005年11月14日

PDFの作成方法(10) – PDFの大量生産へ

PDFの作成方法の全体の仕組み(11月1日)の図で④アプリケーションからPDFを作成するライブラリーを使ってPDFを出力する方法を挙げました。

ここでいうアプリケーションには、Webシステムのようなものから、ワープロソフトのようなデスクトップ製品まで広く含まれます。

PDFLibのようなライブラリーを使って、Webや企業内システムへ、PDF出力機能を組み込むのはシステム・インテグレータの役割となります。Webシステムや企業内システム、特に、帳票系では、日本でも同じようなものを提供しているベンダーも多くなっていますね。

PostScriptに依存しないPDF作成ライブラリーを使って、PDFを直接作り出す場合は、次のようなメリットがあります。

1.PostScritpと比べて高速な処理ができる。アプリケーション→PostScript→PDFという2段階からアプリケーション→PDFの1段階になる。また、PostScriptよりは軽い処理なので早くできる。
2.プリンタ・ドライバのような第3者ソフトを使うのと比べて自由度が高まり、プリンタ・ドライバに依存しない出力の仕方ができる。
3.アプリケーションからPDFのもつ様々な機能を、きめ細かく使用することができる。

逆に、PostScriptに依存しないデメリットとしては、次のようなことがあります。

1.PDFはページの概念をもつメディアなので、アプリケーションがデータからページを作り出す必要があり、どうやってPDF化したいデータのページアップを行なうかが問題である。一般にはぺージの概念を備えたアプリケーションが前提となる。
2.アプリケーションに、PDFを作る命令をひとつずつ組み込むため開発に時間がかかる。
3.EPSという高度なグラフィックス・ファイルの読み込みができない。

このメリットとデメリットについては、いずれより詳しく検討することにして、ここでは、DTPからPDFを作りだすという従来の出版・印刷の流れとは別の流れとして、システムの中でPDFを大量に生産する仕組みが普及してきている、ということを強調しておきたいと思います。

そして、この場合、PostScriptに依存しない技術の方が適切ではないでしょうか。

投票をお願いいたします

投稿者 koba : 08:00 | コメント (0) | トラックバック

2005年11月13日

PDF on the flyを1996年に考えた!

PDFLibの創業者 ThomasMerz氏の著書を調べてみました。英語で書かれているものは2冊のようです。

最初の著書は1996年ですから、日本語のAcrobatが出る前というかなり早い時期に書かれています。

今年の12月に同じタイトルの本が出る予定になっています。内容が改訂されるのでしょうか?興味ありますね。

2冊とも、広田 健一郎氏が翻訳して、東京電機大学から出版されています。

【和書】
PostScript&Acrobat/PDF
トーマス・マーツ 著 / 広田 健一郎 訳
B5変 488頁
定価5,775円(本体+税)
ISBN4-501-52890-7
発行元:東京電機大学出版局

インターネットのためのAcrobat/PDF
トーマス・マーツ 著 / 広田 健一郎 訳
B5変 288頁
定価3,675円(本体+税)
ISBN4-501-53020-0
発行元:東京電機大学出版局

【洋書(英語)】
Postscript & Acrobat/Pdf: Applications, Troubleshooting, and Cross-Platform Publishing
Thomas Merz (著)
発行年月:1996年10月
発行元:Springer-Verlag

Postscript and Acrobat/Pdf Bible: Applications, Troubleshooting and Cross-Platform Publishing
Thomas Merz (著)
発行年月:2005年12月31日(予定)
発行元:Springer-Verlag

Web Publishing With Acrobat/Pdf
Thomas Merz (著)
ペーパーバック
発行年:1998年03月30日
発行元:Springer Verlag

ドイツ語の本は他にもあるようですが、省略します。

また、PlanetPDFにインタビュー(2004年9月8日)が載っています。
PDF Master: Thomas Merz's Take on PDF and Acrobat

○ポイント
・引用(1):
In 1996 I started working on a software library called PDFlib, and created the slogan "PDF on the fly"

1996年にPDFLibの開発を開始、PDF on the flyというスローガンを創造した。

・引用(2):
I believe that the ability to store document structure information within PDF (Tagged PDF) will be perceived as the most significant change in the long term.

TaggedPDFが、長期的にみて最も重要になるだろうと考えている。

う~ん。それにしても、PDF on the fly というコンセプトを1996年に考えるというのはたいしたものですね。

投票をお願いいたします

投稿者 koba : 08:00 | コメント (0) | トラックバック

2005年11月12日

PDFの作成方法(9) – PDF出力ライブラリー

PDFの仕様は公開されているのだから、自分のプログラムの中から直接PDFファイルを書くことはできないだろうか?そのように考える人もいると思います。

もちろん、そのようなこともできます。つまり、PostSciptを経由しなくてもPDFを作ることができるのです。今日はそのことをお話してみましょう。

PDF Referenceを参考にしながら、自前のプログラムから、直接、PDFファイルを書くことは、スキルのあるプログラマならやればできます。しかし、実際に、その人が、自分ですべてをまかなおうとしますとPDFに関する深い知識が必要になります。PDFの仕様は膨大(PDF1.6のReferenceは、本体だけで、1200ページ強!)ですので、簡単なものならともかく、高度なものになりますと、やらなければならないことが多くなり、仕事の生産性もあがりません。

こうしたことから、PDFに関することをまとめて任せてしまえる部品の必要性が生まれます。一般に、こういうプログラム部品をライブラリーと言います。PDFを作成するライブラリーは、全体の仕組み(11月1日)の絵の中の「PDF出力ライブラリー」がそれに相当します。

この種のライブラリーで昔から有名なものに、PDFLibがあります。PDFLib社の創業者Thomas Merz氏は、PDFに関する著書もいくつかあり、PDF業界では有名な方です。PDFLibは、最初のころはソースプログラムが公開されていたような記憶がありますが、今は、みあたりません。バイナリのみの配布で、試用であれば無料ですが、実際に使用するときはライセンス料金を払わねばなりません。

PDFLibは、PostScriptにはまったく依存しないで、上位のプログラムから指示された命令によってPDFを作り出します。これは、現在は、企業内システムやWebシステムに組み込んで、ユーザから入力されたデータ、あるいはデータベースから取り出したデータを使って、サーバサイドで、即時にPDFを作り出すというシステムを構築するのに使われています。

私は一番最初に、Thomas Merz氏の著書を読んだとき、中に書かれている例の中で、on-the-flyでPDFを作る、という概念が理解できず「一体なにに使うんだろう?」と思った覚えがあります。

しかし、今では、WebシステムでPDFを作成するという考えがかなりポピュラーになってきています。一般にWebシステムでは、高速な応答性が要求されます。このため、on-the-flyでPDFを作るためには、PDF生成ライブラリーも高速なものでなければなりません。

PostScriptファイルは大きくなり、また、それを解読するにも処理時間がかかるということで、Webシステムで使うにはあまり適切ではありません。PDFLibの市場性もその辺りにあったと言えます。

ところで、PDFLibは、最初のころはソースプログラムが公開されていたかどうか、記憶に自信がありませんが、どなたかご存知でしょうか?

投票をお願いいたします

投稿者 koba : 08:00 | コメント (4) | トラックバック

2005年11月11日

PDF資料の紹介

PDFの資料 2点のご紹介です。

1.新しい書籍
  「Word+Acrobat DTP出力実践ガイドブック」毎日コミュニケーションズ刊
  (山木大志著、2,940円(税込)、B5変型判 272ページ、ISBN4-8399-1839-2 2005年10月21日発売)

2.PDFConferenceのプレゼンテーション資料
PlanetPDFに公開されてます。

・「Word+Acrobat DTP出力実践ガイドブック」 については、 MYCOMBOOKS立ち読みコーナーにあらましがあります。

Microsoft Wordで作成した文書を、そのまま印刷にもっていきたい、という人のための本だそうです。このようなことを考えている人は多いと思いますが、読んでみたい本です。

・2005年9月に米国ワシントンDCで開かれた「PDF Conference」のプレゼンテーション資料は、参加者には、9月下旬にオリジナル資料のURLを送ってきたのですが、PDF ConferenceのWebページには公開されてないので、てっきり、非公開と思っていました。最近、PlanetPDFのWebページに一部が公開されているのを見つけました。PlanetPDFは、PDF ConferenceのGold Sponsorですものね。

"Adobe Acrobat 7 PDF Bible" 、"Adobe Reader 7 Revealed"の著者 Ted Padovaさん(この人は会議での講演者の主演級)の資料など、貴重な資料です。

投票をお願いいたします

投稿者 koba : 08:00 | コメント (0) | トラックバック

2005年11月10日

PDFの作成方法(8) – PostScriptにない機能は

ところでPDFはPostScriptにはない、データの交換・共有機能をもたせるために発明されたと話しました(11月5日)。このため、PDFは、しおり、注釈、ハイパーリンクなどPostScriptにはない機能をもっています。

PostScriptファイルからPDFを作成する場合は、当然のことながら、PostScriptファイルの中に存在しない情報は、PDFに入れることができないわけです。これを考えますと、PostScriptを経由してPDFを作る方法についてはひとつ疑問がわきます。

つまり、「PDFを作るのに、古いPostScriptに依存するやり方で十分なのだろうか?」、「PostScriptが持っていなくて、PDFで必要とする情報はどうやって受け渡しているのだろうか?」という疑問です。

そのためには、原理的に、次のようなことが必要になるはずです。


  1. PostScriptファイルに、PostScriptの印刷処理では不要だけれども、PDF作成では使う情報を持たせる仕組みが必要

  2. 前段でPostScriptファイルを準備するとき、予めPDFを作ることを意識してそういう情報を出力する

  3. PostScriptからPDFへの変換プログラムは、PDFを生成するとき、そういうPDF専用の命令をも解読して、PDFに出せる必要がある

これについては、「PDFMark」という、しおり、注釈、ハイパーリンクなどPDF独自の機能をPostScript ファイル内に記述する仕組みが用意されています。しかし、アプリケーションからPDFを作成するときに、この仕組みを実際に使えるかどうか、となるとまた話は別になります。仕組みは仕様として用意されていても、プログラムがそれを使えるように作られていないと、普通のユーザは実際には使えないからです。

では、Postscriptプリンタ・ドライバを前提とした場合、しおりやハイパーリンクなどPDF専用の機能を使うことができるのでしょうか?あるいは、プリンタ・ドライバでできないとしたら、どうやったらできるようになるのでしょうか?このあたりは、やや高度な話になりますので、後日、まとめてお話してみたいと思います。

PDFMarkに関する仕様:
pdfmark Reference Manual (PDF: 985k)

投票をお願いいたします

投稿者 koba : 08:00 | コメント (0) | トラックバック

2005年11月09日

PDFの作成方法(7) – Distiller互換ソフト

前に話しましたように、アドビはPostScriptインタープリターを、いろいろなプリンタメーカに対して提供しています。しかし、アドビのライセンス料が高額だったことから、他のソフトウェア開発会社から、PostScriptを読んで、PostScritpファイルを描画してイメージにできる互換ソフトがいくつか提供されるようになりました。

そして、それらのPostScriptインタープリター互換ソフトをベースにして作られたAcrobat Distiller互換のPDF作成ソフトがあります。

その中の一社が、Globalgraphics社Jaws PDF Creatorです。同社のPDF変換ソフトはジャストシステムからもJustSystem PDF Creatorとして販売されています。

PostScriptインタープリターの互換品にはGhostscriptという無償でも入手できるものがあります。(Ghostscriptには商用の有償ライセンス版もあります)。
http://www.ghostscript.com/

GhostscriptにはPDF生成機能も同梱されています。

この無償版を利用して、PostScriptからPDF変換を行なっているのが、無償のPDF作成ソフトとして良く紹介されるPrimoPDFです。

PrimoPDFは、米国のサーバサイドPDFのメーカActivePDF社が、自社の宣伝を主な目的として作成・配布しているようです。

ところで、Ghostscriptは以前から有名ですが「あまり開発が進んでないなあ」と思っていたのですが、いま見たところ、バグを取ると賞金を出すプログラムを発表していますね。よほど人手が足りないのかな?

Ghostscript Bug Bounty programより引用:
「As before we're paying US $500 for bugs marked bountiable in the tracker; $1000 for those set with priority P1 or P2! So if you're a coder, here's your chance for a little extra cash.」

普通の賞金付きバグ 500 USドル、優先度の高いP1、P2バグは、1000 USドルだそうです。お金を稼ぐチャンス?

腕に覚えのあるプログラマは挑戦してみたら如何でしょうか。

投票をお願いいたします

投稿者 koba : 08:00 | コメント (2) | トラックバック

2005年11月08日

PDFの作成方法(6) – Acrobat PDF

Acrobat6から、PDFを作成するプリンタ・ドライバの名前は、Adobe PDFになっています。実は、これは、PostScriptプリンタ・ドライバとDistillerを連続で動かすものです。

これを確かめてみましょう。

まず、Wordで簡単な文書を作成し「印刷」メニューからAdobe PDFを選びます。Adobe PDFの印刷ダイヤログで、「ファイルに印刷」を選択します。

○Adobe PDF の印刷ダイヤログで、「Print to file(ファイルに印刷)」をチェックしたところ:
AdobePDF.jpg
(ここで使用しているのは、Acrobat6(英語版)、WindowsはXPです。)

○出力されたファイルをテキスト編集ソフトで開いてみます。すると先頭の部分に次のように書いてあります。

Content.jpg

ですので、これは、PostScriptレベル3のファイルなんですね。つまり、Adobe PDFは、PostScriptプリンタ・ドライバと同じ機能をもつことがわかります。

さらに、このファイルをDistillerでPDFに変換することもできます。

また、Adobe PDFで「ファイルに印刷」にチェックしない(既定値)で実行しますと、PDFファイルができます。

以上のことから、Adobe PDFプリンタを指定すると、ユーザに見えないところでPostScriptを作り出し、それをDistillerを使って、PostScriptからPDF変換を行なっているのだろうと推測できます。

ということは、Acrobat Distillerプリンタ・ドライバの後継がAdobe PDFで、PDFWriterはなくなったらしい、といえます。

投票をお願いいたします

投稿者 koba : 00:08 | コメント (0) | トラックバック

2005年11月07日

PDFの作成方法(5) – AcrobatでPDF

さて、今までの説明ではPostScriptに焦点をあててきましたので、「それじゃあ、PDFを作るには、PostScritptファイルを自分で作らないとだめなのだろうか?」という印象をもたれたかもしれません。

しかし、エンドユーザが簡単に使うだけなら、PostScriptについて特に意識しなくても大丈夫になっています。

最新のAcrobat7では、アプリケーションの「印刷」メニューから表示する「印刷ダイヤログ」で、プリンタ名Adobe PDF を選んで「OK」ボタンを押せば、PDFができるようになっています。

Acrobatがここまで来るには、歴史的変遷もあり、かなりややこしいことになっています。

プリンタの名前は、以前にも言いましたが、メーカが分かりやすく付けることができます。そこで、Acrobat4から以降のプリンタ・ドライバの名前の変遷を辿ると次の表のようになっています。(以下はWindows版についての話です。)

バージョン プリンタ・ドライバ名 インストール時カスタマイズの既定値
Acrobat4 Acrobat Distiller 既定値で on
Acrobat Writer 既定値で on
Acrobat5 Acrobat Distiller 既定値で on
Acrobat Writer 既定値で off
Acrobat6 Adobe PDF
Acrobat7 Adobe PDF

Acrobat4では、PDFWriterとDistillerの2種類のプリンタ・ドライバがあり、両方とも既定値でインストールされました。

Acrobat5で、Acrobat Distillerがプリンタ・ドライバの主流になり、PDFWriterは既定値ではインストールされなくなりました。

Acrobat6以降では、プリンタ・ドライバがAdobe PDFという名前のものひとつだけになりました。

最初、アドビシステムズはDistillerをプリンタ・ドライバではなく、PostScriptからPDFへの変換を行うアプリケーションとして用意しました。Acrobat4、5では、それが、プリンタ・ドライバの名前にも使われていたのですが、Acrobat6以降、Distillerという名前は、プリンタの名前ではなくなり、PostScriptからPDFへの変換を行うアプリケーションのみとなりました。

ほかに、Acrobatには、PDFMakerというものがありますので、さらにややこしくなっています。

なぜ、昔はAcrobat DistillerとPDFWriterの2種類のプリンタ・ドライバがあったのか?そして、今はひとつになってしまったのかなど、いろいろ疑問が沸きますね。

投票をお願いいたします

投稿者 koba : 08:00 | コメント (2) | トラックバック

2005年11月06日

Acrobat2のパッケージ

Acrobatの変遷を調べていましたら、書庫に、Acrobat2のパッケージがありました。もはや歴史的な意味しかないかもしれませんが、紹介してみます。

米国のラスベガスで行われたComdexというショウを見に行った機会に購入してきたものと思いますが、145ドルのラベルが張ってあります。

○Acrobat2のパッケージ写真
Acrobat2.jpg

ショップのラベルで145ドルなのを見て、「ん?安いな」と思ったのですが、Acrobatは、当時、Acrobat、Acrobat Pro、Acrobat Wordkgroupの3製品に分かれていて、このパッケージはAcrobatなので安いんですね。
Acrobat2.0には次のプログラムが入っています。

Acrobat Proには、これにDistillerが追加になります。Acrobat Wordkgroupは10人分のライセンスをセットにしたものです。

なお、Acrobat2は、1994年に発売されたもので、Windows3.1で動きます。英語版のみで日本語版はありませんし、日本語を扱うこともできません。

日本語版が出たのは、次のAcrobat3.0Jからになります。

投票をお願いいたします

投稿者 koba : 08:00 | コメント (0) | トラックバック

2005年11月05日

PDFの作成方法(4) – PostScriptからPDFへ

昨日お話しましたように、PostScriptファイルがアプリケーションから独立したデータとして流通するようになってきました。しかし、PostScriptファイルには問題もあり、データの交換・共有をもっと簡単にする方法が望まれていたのです。

PostScriptは、出力するのは比較的簡単ですが読むのはとても大変です。加えて、紙への印刷用の一方的出力のために設計されたものですので、例えば画面に表示して、内容をナビゲーションしたり、注釈をつけたりする機能もありませんでした。

PostScriptを元にして、さらにデータを交換する形式として適切なように、またナビゲーションなどが簡単にできるように設計されたのがPDFです。そして、PostScriptをPDFに変換するプログラムとしてAcrobat Distillerが用意されました。

Acrobat Distillerを使うと、PostScriptファイルをPDFに変換することができます。(次の図)

Distilling.jpg

PostScriptファイルには、1ページ毎に、その内容をPostSript言語を使って記述した命令情報が入っています。この命令情報をPostScriptインタープリターというプログラムで解読して、ページの内容を描画していきます。プリンタメーカ各社から出ているPostScriptプリンタには、このPostScriptインタープリターが搭載されている訳です。このPostScriptインタープリターを開発するのは相当に大変です。

しかし、PDFではプログラム言語的な要素が取り除かれているので解読するのは比較的簡単になっています。

アドビのAcrobat Distillerは、プリンタ用のPostScriptインタープリターをベースにして作られているのではないかと思います。

ところで、distillというのは英語で蒸留するという意味なんですが、 Distillerを使ってPostscriptからPDFへの変換することを、distillと表現する人もいます。こんな具合ですね:

In the distilled version, there is... This is using Acrobat 6 for distilling.

これは、一般にも通じる表現なんでしょうか?それとも業界人だけの言葉なんでしょうか?

投票をお願いいたします

投稿者 koba : 08:00 | コメント (0) | トラックバック

2005年11月04日

PDFの作成方法(3) – PostScriptファイルを作る

DTPはMacintoshと共に、華やかに登場し、大人気となりました。それを支えたのがPostScript技術ということになります。アドビシステムズは、アップル以外の多くのプリンタメーカに対してPostScript技術を供給したことで、PostScriptは1990年代には高級なレーザプリンタ向けのページ記述言語として標準的な地位を占めるようになりました。

それだけではなく、さらに高品質が要求される印刷分野では、ほぼ独占的な地位を占めるようになり、ひいては印刷業界の仕事をがらっと変えてしまったわけです。

そして、Macintoshで始まったDTPの波はWindowsにも押し寄せました。

Windows上で動くアプリケーションからPostScriptプリンタを使って印刷するときは、ユーザがページアップした結果は、プログラム内部でPostScript言語で記述されて、プリンタに送られます。

この役割を負うのがPostScriptプリンタ・ドライバです。上述のようにPostScriptが高級DTP分野で事実上の標準になっていることから、Windowsには標準的なPostScriptプリンタ・ドライバが同梱されていますし、また、多くのプリンタメーカから各社専用のPostScriptプリンタ・ドライバを提供しています。また、Acrobatを含め、アドビの製品には同社製のPostScriptプリンタ・ドライバが付いています。

アプリケーションの印刷メニューは、普通、プリンタで紙に印刷する時に使うのですが、プリンタに出力する代わりに、PostScriptプリンタ・ドライバでファイルに出力するとPostScriptファイルができます。PostScriptをファイルに出すことで、印刷会社などとのデータ交換ができるようになります。

具体的には、次の図のように「ファイルへ出力」にチェックします。
GenPS-File.jpg

なお、Windowsの「印刷ダイヤログ」で表示される、プリンターの名前は、分かりやすい名前をつけることができますので「PostScriptプリンタ・ドライバ」とは書いてないこともあるかもしれません。

PostScriptファイルは、プリンタ・ドライバを使わないで直接作ることもできます。アドビシステムズはPostScriptの言語仕様を公開し、第三者の開発者がいろいろなアプリケーションを開発することを奨励しました。そこで、パソコンのいろいろなアプリケーションからPostScriptファイルを出力することができるようになりました。また、Unixでは、PostScriptファイルでドキュメントを流通させる習慣がありましたので、古いWebでは資料をPostScriptファイルで公開しているケースもあります。

このようにして、前PDF時代には、PostScriptファイルが、大量に作られて、流通していました。

【参考】
日本印刷とDTPの歴史について
澤田善彦 著作集:印刷100年の変革

投票をお願いいたします

投稿者 koba : 08:00 | コメント (0) | トラックバック

2005年11月03日

PDFの作成方法(2) – PostScriptの登場

PDFの作成方法のひとつめは、PostScriptファイルを経由してPDFを作成する方法です。第一段階でPostScriptプリンタ・ドライバでPostScriptファイルを作成し、第二段階で、PostScriptファイルからPDFへの変換を行う方式です。

さて、「PDF千夜一夜」でPostScriptという単語がでてきたのは3回目になります。そこで、少し回り道して、PostScriptとはなにかについて簡単に説明しましょう。

回り道が長くなるかもしれませんが、今日の話は、PDFが生まれる前の歴史、いわば前PDF時代のことになります。

プリンタの一種にレーザプリンタがあります。私が初めてレーザプリンタを買ったのは1987年頃だったと思います。アップルのMacintosh Plusに接続するもので、名前はLaser Writerと言い、確か100万円位したものです。それも当時は日本語が使えませんでした。

ここに写真と説明があります:
http://www.mac512.com/lw.htm

Laser Writerはページプリンタの一種ですが、ページプリンタは次のような働き方をします: A4、B4など大きさの決まった用紙の1ページ分に印刷する内容のイメージをプリンタ内のメモリに形成し、そのイメージをプリンタのドラムに転写し、ついで紙に焼き付けます。簡単にいうと複写機のプリンタ版ですね。

ページプリンタでは、用紙1ページの上に描画する内容を、ページ記述言語という言語を使って記述します。主要なプリンタメーカは、それぞれ独自のページ記述言語をもっています。エプソンのESC/Page、キヤノンのLIPS、ヒューレット・パッカード(HP)のPCLなどが有名ですね。

プリンタで印刷するページの内容を作り出すのはパソコンです。パソコン側では、ユーザが画面を見ながらページアップした結果を、相手のプリンタがどこのものかによって、ESC/Page、LIPS、PCLなどの中で適合する言語を使って組み立て直して、プリンタに送信します。プリンタ側ではその情報を受け取って、プリンタに埋め込まれたコンピュータで解読してページのイメージを作り出すわけです。

PostScriptというのはアドビシステムズが開発したページ記述言語の製品名です。最初にアップルがMacintoshのLaser Writer用にPostScriptを採用しました。これは、Macintoshの上で動く、PageMakerというページアップ・ソフトとともに売り出されて、大人気となり、DTPという概念を作り出したわけです。件の100万円のプリンタもDTPをするために購入したものなんです。

PageMakerは、1985年にアルダス社が発売したものですが、1994年に、アドビシステムズがアルダス社を買収したことにより、現在は、アドビシステムズより販売されています。

投票をお願いいたします

投稿者 koba : 08:00 | コメント (0) | トラックバック

2005年11月02日

サーバでOfficeからPDF、PDFからSVGとイメージ

サーバベース・コンバータ(SBC)が(Windows版だけですが)V1.1になりました。

SBCは、Microsoft Office文書をサーバサイドで PDF、SVG、あるいはJPEG/PNG画像ファイルへ変換するミドルウェアです。グループウェアやWebメールシステム等のサーバにSBCを組み込むことにより、 Officeがインストールされていない、および動作しない環境でもOffice文書を表示可能なシステムを構築できます。

変換できるOffice文書は、Word、Excel、Powerpointの97以降です。PDFは、SBCV1.1では1.3~1.5まで変換可能です。

サーバ側で、Office文書からPDFへ自動変換するシステムは、既に、企業内システムでは沢山使われていると思いますが、これらは、ほぼ全てMicrosoft Officeをサーバサイドで動かしてPDFに印刷するサーバサイド・オートメーション方式と思われます。

しかし、Officeのサーバサイド・オートメーションは技術的にも問題が多数あり、Microsoftは、Officeをサーバサイドで動かすことを保証も推奨もしていません。詳しくは、Mircosoftのサポートオンラインをどうぞ:
[OFF2003] [INFO] Office のサーバーサイド オートメーションについて

みんな、マイクロソフトの警告を知らないか、知ってても万やむを得ずやっているか、無視しているか?なんでしょうね。

また、ライセンス的にも問題があります。原則的には、接続クライアント台数分のライセンスが必要らしいのですが。そうでない場合もあるようです。いづれにせよ、このあたりはMicrosoftの考え方次第なので、私が言うべきことではないですが。

SBCは、Microsoft Officeはまったく必要としませんので、上のような問題はありません。

また、OfficeやPDFをSVG/SVG-Tinyに変換できます。SVG-Tinyは携帯電話で使えるものもありますので、Office文書やPDFを携帯電話でも見ることができるようになります。

このブログ「PDF 千夜一夜」は、本文は携帯でご覧頂くことができますが。いずれは、ブログ上のPDFやOffice文書を携帯で見えるようにしたいと思っています。

【参考】
サーバベース・コンバータWebページ

評価版ダウンロード

Mobile SVG Profiles: SVG Tiny and SVG Basic(英文)

投票をお願いいたします

投稿者 koba : 08:00 | コメント (0) | トラックバック

2005年11月01日

PDFの作成方法(1) – 全体の仕組み

今日は、PDFファイルを作成する仕組みについて簡単に説明しましょう。自分は、仕組みを知らなくても使えれば良いという人も多いとは思いますが、PDF製品を選択する上でも、仕組みを知っておいても損はないのではないでしょうか。

PDFファイルを作るソフトは世界中に一杯ありますが、それぞれの仕組みは公開されていません。また、使いやすいソフトは、内部が複雑な仕組みになっていても、それをユーザに隠して簡単に使えるようにしています。このことは、ユーザに見える、表面的に現れる名前からだけでは、仕組みは分からないことを意味します。

また、ソフトウェアは機械と違って分解して仕組みを調べることができません。しかし、大雑把に言って、Windowsの環境では、次の図の、①と②の組み合わせ、③、④の経路のどれかで作成する仕組みになっていると考えて間違いないでしょう。

※アップルのMac OS Xでは、Quartzという描画エンジンからPDFへの直接変換ができますので、少し事情が違うと思います。

CreatePDF.png

②PostScriptファイルをPDFファイルに変換する。PostScriptファイルは①アプリケーションからPostScriptプリンタ・ドライバを使って作る。また、Webなどで流通しているPostScriptファイルを使うこともある。
③アプリケーションの「印刷」メニューで見えるPDF生成用のプリンタ・ドライバを使ってPDFファイルを生成する。
④アプリケーションから、プリンタ・ドライバを通さずにPDFを生成する。

①から④については、これから、順を追って説明したいと考えています。

ところで、ドライバ(Driver)って、運転手ではありません。パソコン用語ではドライバは周辺機器を動作させるためのソフトウェアのこと。プリンタを動作させるのがプリンタ・ドライバですが、PDFの場合は周辺機器を使わないのにプリンタ・ドライバということが多いのは、歴史的なものじゃないでしょうか。

投票をお願いいたします

投稿者 koba : 08:00 | コメント (2) | トラックバック