前々回と前回に渡った「バーチャルリストによるレポート生成」の中の、レポート2とレポート8で使われていた「カスタム用紙サイズのトリック」について解説した記事を、今回はご紹介します。
PDF Trickery
(元記事はこちら)
Kevin Frank
2016/2/28
集計レポートやその他のFileMakerの出力をPDF形式にする場合、開発時に時間を大いに節約できる小さなトリックを紹介します。
このような状況を想定してください。依頼者は、夜間バッチでPDF形式の集計レポートを電子メールで受信します。このときに、横向きの出力が必ず1ページに収まることを希望しています。レポートには常に、3つのグループの中にそれぞれ12レコードあり、各グループの前部に小計があり、縦横の罫線でレイアウトされています。
文字がぎっしり詰まったレポートですが、根気よく微調整を繰り返し、どうにかぎりぎり1ページに収めることができました。
さて今度は、依頼者が各グループの下に後部小計を追加したいと言ってきました。もちろん1ページに収めるという条件はそのままです。レポートのフォントサイズはすでに8ポイントで、縦方向の行間に余裕はありません。がんばって時間をかけてこのリクエストに対応するのも気が進みません。そんな時は以下のトリックを使います。
9.5″ x 11″のカスタム用紙サイズを定義します。ここには後部小計も十分収まります。依頼者がPDFを画面で見る場合は、これで問題ありません。印刷出力したい場合は、きれいに8.5 x 11の用紙に合わせて縮小されます。
詳細はプリンタやOSによって異なりますが、一般的なルールとして、「印刷設定」の「詳細設定」(あるいはプリンタドライバの「詳細設定」)でカスタム用紙サイズを設定できます。
以下の2つのデモは、レイアウトサイズとカスタム用紙サイズの設定以外は同じものです。
手順:デモを開き、以下のスクリプトを実行します。
すると以下のようなPDFが生成されます。
注意:一度「印刷設定」スクリプトステップでカスタム用紙サイズが設定されたあと、そのファイルを配付(あるいはサーバでホスト)します。その後は、ユーザがカスタム用紙サイズの設定をしなくてもPDFを正しく生成できます。