パーソナルビジネスソフトとお役立ち情報のサイト
PDFlib
COOKBOOK - PDFlib サンプルプログラム

PDF タグの出力

JAVA コード

更新やアクセスがしやすい構成情報があるドキュメントを出力します。

使用するソフトウェア:PDFlib/PDFlib+PDI/PPS 7
使用するデータ:無し(プログラム内で作られるダミーテキスト)


import java.io.*;
import com.pdflib.pdflib;
import com.pdflib.PDFlibException;

public class starter_taggedj
{
  public static void main (String argv[])
  {
    /* データファイルの場所です。必要なように適合させます */
    String searchpath = "../data";

    pdflib p = null;
    int id, id_artifact, font;

    try {
      p = new pdflib();

      p.set_parameter("SearchPath", searchpath);

      /* load_font()等からの戻り値を調べなければいけないことを
       * 表しています。
       */
      p.set_parameter("errorpolicy", "return");

      /* "lang"は有力なドキュメント言語を含んでいます */
      if (p.begin_document("starter_taggedj.pdf", "tagged=true lang=en")
      == -1)
        throw new Exception("Error: " + p.get_errmsg());

      p.set_info("Creator", "PDFlib starter sample");
      p.set_info("Title", "starter_tagged");

      /* テキストの間にスペースを自動的に作ります */
      p.set_parameter("autospace", "true");

      /* 最初の構成要素をドキュメント構成ルートの結果 (=0)
       * として開きます。
       */
      id = p.begin_item("P", "Title = {Simple Paragraph}");

      p.begin_page_ext(0, 0, "width=a4.width height=a4.height");

      font = p.load_font("HeiseiMin-W3", "UniJIS-UCS2-H", "");

      if (font == -1)
        throw new Exception("Error: " + p.get_errmsg());

      p.setfont(font, 24.0);

      p.show_xy("ようこそ!Tagged PDF へ!", 50, 700);
      p.continue_text("このPDFはとてもシンプルな");
      p.continue_text("ドキュメント構造です。");

      p.end_item(id);

      /* ページナンバーは人工物として作られます。
       * よって、Acrobatのページを更新した時に反映されないでしょう。
       */
      id_artifact = p.begin_item("Artifact", "");
      p.show_xy("ページ 1", 250, 100);
      p.end_item(id_artifact);

      p.end_page_ext("");

      p.end_document("");

    } catch (PDFlibException e){
      System.err.print("PDFlib exception occurred:\n");
      System.err.print("[" + e.get_errnum() + "] " + e.get_apiname() +
        ": " + e.get_errmsg() + "\n");
    } catch (Exception e) {
      System.err.println(e.getMessage());
    } finally {
      if (p != null) {
        p.delete();
      }
    }
  }
}
JAVA1.5.0/PDFlib 7.0.0
(Decs 6, 2006)










■データファイルには「使用するデータ」と「CMap データ」が含まれます。




■「PDF 出力」はライセンスを取得されていない方がテストした結果と同様になるように、ライセンスキーを適用しない状態で出力したものです。そのため、「www.pdflib.com」スタンプが表示されていますが、ライセンスキーを適用すると表示されません。