17.05.2014 Views

チュートリアル - PDFlib

チュートリアル - PDFlib

チュートリアル - PDFlib

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

あた り ます。 し か し、 圧 縮 オブジ ェ ク ト ス ト リ ーム を 用 いれば こ の 制 約 は 超 え る こ と<br />

がで き ます。 10 GB を 超 え る 出 力 文 書 を 作 成 し よ う と する と きは、 PDF_begin_<br />

document( ) で objectstreams={other} オプシ ョ ン を 設 定 する 必 要 があ り ます。 こ れには<br />

PDF 1.5 以 上 が 必 要 です。 圧 縮 オブジ ェ ク ト ス ト リ ームはいずれにせよ フ ァ イル 全 体 の<br />

サイズを 低 減 させますが、 objectstreams 実 装 の 一 部 であ る 圧 縮 相 互 参 照 ス ト リ ームは<br />

も はや 10 進 10 桁 の 制 限 下 には 置 かれず、 し たがって 10 GB を 超 え る PDF 文 書 の 作 成<br />

を 可 能 にします。<br />

> オブジ ェ ク ト の 数 : 一 文 書 内 のオブジ ェ ク ト の 数 は 全 般 的 には PDF に よ って 制 限 さ れ<br />

ていませんが、 PDF/A-1 ・ PDF/X-4 ・ PDF/X-5 規 格 では、 一 文 書 内 の 間 接 オブジ ェ ク<br />

ト の 数 を 8,388,607 個 に 制 限 し ています。 一 文 書 が こ の 制 限 を 超 え る オブジ ェ ク ト を 必<br />

要 と する と きは、 <strong>PDFlib</strong> は PDF/A-1 ・ PDF/X-4 ・ PDF/X-5 モー ド では 例 外 を 発 生 させ<br />

ます。 それ 以 外 の 場 合 であれば も っ と オブジ ェ ク ト の 多 い 文 書 を 作 成 で き ます。 生 成<br />

さ れたオブジ ェ ク ト の 数 は <strong>PDFlib</strong> で 直 接 取 得 する こ と はで き ませんが、 ク ラ イ ア ン ト<br />

アプ リ ケーシ ョ ンは 画 像 ハン ドルを 再 利 用 し、 画 像 をページス コープの 外 で 読 み 込 む<br />

こ とによって、 いく らかオブジェク ト を 減 らすこ とが 可 能 です。 PDF 内 のオブジェク<br />

ト の 数 は、 ページ 内 容 の 複 雑 さや、 相 互 参 照 要 素 の 数 な どに 依 存 し ます。 シンプルな<br />

内 容 の 大 容 量 文 書 は 通 常 ページあた り 4 ~ 10 個 のオブジ ェ ク ト を 持 ち ますので、 100<br />

~ 200 万 ページ 程 度 の 文 書 であれば こ のオブジ ェ ク ト 制 限 を 超 えずに 作 成 する こ と が<br />

できます。<br />

3.1.6 <strong>PDFlib</strong> を EBCDIC ベースのプラ ッ ト フ ォームで 利 用<br />

PDF フ ァ イル 形 式 の 中 のオペレータ と 制 御 構 造 は ASCII ベースであ り 、 z/OS ・ USS ・ MVS<br />

オペレーテ ィ ングシ ス テム を 搭 載 し た IBM iSeries ・ zSeries と いった EBCDIC ベースのプ<br />

ラ ッ ト フ ォームでは 正 し く 動 作 し ません (ただ し zLinux は ASCII ベースですので こ の 限<br />

り ではあ り ません)。 し か し、 特 別 な メ イ ン フ レームバージ ョ ンの <strong>PDFlib</strong> を 利 用 すれば、<br />

ASCII ベースの PDF オペレータ と EBCDIC の (ま たはそれ 以 外 の) テキ ス ト 出 力 と を 混 ぜ<br />

ることができます。こうしたEBCDICセーフなバージョンの<strong>PDFlib</strong>は、さまざまなオペ<br />

レーテ ィ ングシ ス テムやマシンアーキテ ク チャ で 利 用 可 能 です。<br />

<strong>PDFlib</strong> の さ ま ざ ま な 機 能 を EBCDIC ベースのプ ラ ッ ト フ ォームで 活 用 する ためには、<br />

以 下 に 挙 げる も のは EBCDIC テキ ス ト 形 式 で 与 え られる こ と が 期 待 さ れます(よ り 具 体 的<br />

には、 iSeries ではコー ド ページ 037 で、 zSeries ではコー ド ページ 1047 で)。<br />

> PFAフォントファイル・UPR 設 定 ファイル・AFMフォント メ ト リックファイル<br />

> エン コーデ ィ ン グ フ ァ イル ・ コー ド ページ フ ァ イル<br />

> <strong>PDFlib</strong> 関 数 の 文 字 列 引 数<br />

> 入 出 力 フ ァ イル 名<br />

> 環 境 変 数 ( 実 行 環 境 が 対 応 し てい る 場 合 )<br />

> <strong>PDFlib</strong> のエ ラー メ ッ セージ も EBCDIC 形 式 で 生 成 さ れます (Java 以 外 )。<br />

ASCII 形 式 の 入 力 テキ ス ト フ ァ イル (PFA ・ UPR ・ AFM ・ エン コーデ ィ ン グ) を 使 いたい<br />

場 合 は、 asciifile パラ メ タを true に 設 定 し ます (デフ ォル ト は false)。 する と <strong>PDFlib</strong> は、<br />

こ れ ら のフ ァ イルが ASCII エン コーデ ィ ン グで 書 かれてい る と 期 待 する よ う にな り ます。<br />

ただ し その 場 合 で も、 文 字 列 引 数 はやは り EBCDIC エン コーデ ィ ン グであ る と 期 待 さ れま<br />

す。<br />

こ れに 対 し、 以 下 の も のはつねにバイナ リ モー ド で 取 り 扱 う 必 要 があ り ます (すなわ<br />

ち、 いかな る 変 換 も 行 ってはいけ ません)。<br />

> PDF 入 出 力 フ ァ イル<br />

> PFB フォントアウ ト ラインファイル・PFM フォント メ ト リ ックファイル<br />

3.1 <strong>PDFlib</strong> プログ ラ ミ ングの 一 般 的 特 徴 65

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!