• 締切済み

PDFファイルを作成したい

画面で入力されたデータ(項目名と内容)をPDFファイルとして保存したいのですが、以下の理由で悩んでいます。 ・入力されるデータ長が決まっていない ・入力されるデータ数が決まっていない この仕様により可変なPDFファイルを作成することになります。 PDFファイル作成用のライブラリがあることは知っているのですが、上記の様な可変なPDFファイルを作成することが困難では無いかと思います。 上記の様な可変なPDFファイルを作成するに何かよい方法をご存知でしたらお教え願います。 またどんなことでもよいのでアドバイス願います。

みんなの回答

  • briony
  • ベストアンサー率29% (323/1090)
回答No.2

#1です。 見出しの類が出現するたびにページ末かどうかの判断というよりも、画面をレイアウトするソフトに見出しのスタイルを適用した際、見出しがあるとその行の前後に行高(行X行分のスペース)ができ、そいうった見出しの前のスペースが行末にくると、ソフト自体の機能で次ページに送られていたと思います。 □□□□□□□□□□ □□□□□□□□□□           ←A  ■見出し■■   ←B           ←D □□□□□□□□□□←C □□□□□□□□□□ 上記でAの位置がページ末にくると改行され、Bがページ末にはこない。そんな感じでした。Cがページ末はいいのですが、Dがページ末に来ることはあった記憶があります。その場合は、手での改ページが必要でしが □□□□□□□□□□ □□□□□□□□□□           ←A  ■見出し■■   ←B □□□□□□□□□□←C □□□□□□□□□□ こんな仕様につくりかえ、手動をしなくてもすむようにしていたりもしていたと思います。 CSS自体はその機能をもっていません。ブラウザによって解釈が異なります。ですので、PDFを作る場合もレイアウトする機能を、一時的にでも(また不可視にしたりして)ブラウザのエンジンとかなにかに頼る必要はあるかと思います。 見出しの類でないデータが、ページを跨ぐ場合は、--B マニュアルや出版的な考え方からすると、そのま までも、なんら問題ないかと思っての答えでした 。--A  日本語特有の行頭行末の処理(段落のはじめのインデントや、「。、」などが次の行のあたまにこないこと-A)ぶらさがり-B などは、日本語の組版規則をうまく適用するところからはじまります。 これらはレイアウトソフトがお得意とするところですね。

  • briony
  • ベストアンサー率29% (323/1090)
回答No.1

数年前ですがローカライズの会社にいて、仕事でマニュアル担当で、AdobeのFrameMakerを使い、600~1000P近くあるマニュアルや論文などのデータを作っていました。ちょっと記憶で書きますが(現職は違うので)。 その際、入ってくる元の英語など外国語データは多種多用で、日本語にして文字数がすぐに確定せず、おっしゃるような状況とよく似ていました。 マニュアルや論文は、一般の雑誌や書籍ほど体裁を求められませんが、見出しのたぐい(大見出し、中見出し、各章の扉のタイトル)がページの一番下(横書きがほとんどでした)に来ては体裁がわるいので、スタイルシートで見出しの前に数行分の行間を設け(単なる改行ではない)、その部分がページ末にくると、改ページするようにしていました。 HTMLでもCSS(カスケードスタイルシート)で改ページのプロパティがあります。CSSをうまく利用して、ある条件の場合は改ページにする、ある記号やタグを含むものは、章のタイトルのみ(扉といいます)に出力し、それをPDFにするエンジンに自動的にかけてみてはどうでしょうか。 CGIがわからないため、はずしていたらすいません。

参考URL:
http://www.htmq.com/style/page-break-before.shtml
air-port1995
質問者

お礼

ありがとうございます。 自分はCSSにあまり詳しくないので改ページのプロパティについてはよくわからないのですが、教えていただいた内容ですと見出しの類が出現するたびにページ末かどうかの判断が必要にならないのでしょうか?もしかしてCSSの改ページプロパティがその機能を持っているのでしょうか? 問題は、PDFファイルに出力する際に、見出しの類でないデータがページを跨ぐ場合の改ページ処理になると思っています。 CSSについてひとつ詳しくなれました。 ほんとうにありがとうございました。

関連するQ&A