import java.io.*;
import com.pdflib.pdflib;
import com.pdflib.PDFlibException;
public class starter_basicj
{
public static void main (String argv[])
{
/* データファイルの場所です。必要なように適合させます */
String searchpath = "../data";
pdflib p = null;
String imagefile = "nesrin.jpg";
String optlist, data;
int font, image;
try {
p = new pdflib();
p.set_parameter("SearchPath", searchpath);
/* load_font()等からの戻り値を調べなければいけないことを
* 表しています。
*/
p.set_parameter("errorpolicy", "return");
if (p.begin_document("starter_basicj.pdf", "") == -1)
throw new Exception("Error: " + p.get_errmsg());
p.set_info("Creator", "PDFlib starter sample");
p.set_info("Title", "starter_basic");
/* 最初のページの前にイメージをロードし、それを全てのページに
* 使います。
*/
image = p.load_image("auto", imagefile, "");
if (image == -1)
throw new Exception("Error: " + p.get_errmsg());
/* ページ 1 */
p.begin_page_ext(595, 842, "");
/* "unicode" の "UniJIS-UCS2-H" に変えます */
font = p.load_font("HeiseiMin-W3", "UniJIS-UCS2-H", "");
if (font == -1)
throw new Exception("Error: " + p.get_errmsg());
p.setfont(font, 24);
p.set_text_pos(50, 700);
p.show("ようこそ!世界へ!");
p.fit_image(image, 0.0, 0.0, "scale=0.25");
p.end_page_ext("");
/* ページ 2 */
p.begin_page_ext(595, 842, "");
/* 赤い長方形 */
p.setcolor("fill", "rgb", 1.0, 0.0, 0.0, 0.0);
p.rect(200, 200, 250, 150);
p.fill();
/* 青い円 */
p.setcolor("fill", "rgb", 0.0, 0.0, 1.0, 0.0);
p.arc(400, 600, 100, 0, 360);
p.fill();
/* 太い灰色の線 */
p.setcolor("stroke", "gray", 0.5, 0.0, 0.0, 0.0);
p.setlinewidth(10);
p.moveto(100, 500);
p.lineto(300, 700);
p.stroke();
/* 同じイメージハンドルを使うことは、データがPDFの保存ス
* ペースにただ一度のみコピーされることを表しています。
*/
p.fit_image(image, 150.0, 25.0, "scale=0.25");
p.end_page_ext("");
/* ページ 3 */
p.begin_page_ext(595, 842, "");
/* イメージを(ゆがみ無しで)あらかじめ定められたサイズの
* ボックスに合わせます。
*/
optlist =
"boxsize={400 400} position={center} fitmethod=meet";
p.fit_image(image, 100, 200, optlist);
p.end_page_ext("");
p.close_image(image);
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();
}
}
}
}
|