|
概要
LaserWriter 8
のリリースのたび、新機能追加の要望があがりましたが、120
バイトのプリントレコードの制約のため、対応できないものもありました。たとえば「文書に
X
文字のスティッキーを付けたいのだが」といったものです。プリントレコードには未使用のビットが少なく、この要望へはずっと「いいえ」と答えざるを得ませんでした。ほかにも、特殊用紙サイズを使いたいとか、同じ物理サイズの用紙に複数サイズで印刷したいなどの要望がありましたが、いずれもプリントレコードの制約により実現できませんでした。
ここで述べるプリントレコードの拡張方法は LaserWriter 8
だけが該当します。Carbon
でのプリントレコードの拡張については、Carbon
Printing API
も参照する必要があります。(構造体の分割などの変更が加えられています。)
拡張プリントレコードのサポートには Carbon API
を使うのがよい方法です。拡張レコードを使用するドライバは
MacOS 7.6 以降提供されていますので、ここで説明する方法は
Carbon
をサポートしないアプリケーションだけに限定して使ってください。
拡張プリントレコードを使うアプリケーションにはさまざまな利点が考えられます。ひとつは、PrJobMerge
が実際に動くようになることです。これは大いにメリットがあります。それぞれ印刷設定の違う複数の文書を、アプリケーションから
(たとえば 'pdoc'
アップルイベントに応答するなどして)、単純な印刷ダイアログで印刷できるようになるからです。また、拡張プリントレコードを使うと、ドライバの特殊用紙サイズのサポートが向上したり、同じ物理サイズの用紙に異なるページサイズで印刷できるようになります。これはユーザにはたいへん便利です。アプリケーションのなかから社内便箋など特殊用紙サイズの設定を文書といっしょに保存できるようになるからです。
|