- - PR -
PDF出力するには?
| 投稿者 | 投稿内容 | ||||
|---|---|---|---|---|---|
|
投稿日時: 2002-02-10 17:33
JSPを使用してPDF出力をしたいのですが
初心者なもので何をしたらいいのか全く分かりません。 必要なもの、またはサンプルソースなどがありましたら 教えていただけないでしょうか? よろしくお願いします。 | ||||
|
投稿日時: 2002-02-10 21:07
サンプルコードではないのですが、技術評論社の『Software Design 2002年1月号』ではJavaを使ってのPDF出力が特集されてました。
雑誌自体が手に入らないかもしれませんが・・・。 | ||||
|
投稿日時: 2002-02-10 23:40
JSPでPDFかぁ…。
JSP から出すとなると、バイナリができないので、テキストで書くことになるかな。 <%@page contentType="application/pdf" %>ではじめて、中身は http://www.kobu.com/pdf/pdfxhand.htm あたりを参考に、ですかねぇ。 --- # え?そういうことじゃない?FO? # ん〜、まじめに PDF タグライブラリとかおもしろそう?もしかして? | ||||
|
投稿日時: 2002-02-13 11:21
バイナリで出す場合、私はiTextというライブラリを使用しています。
ただしライセンスはGPLなのでプログラムに組み込む場合は気をつけた方が よいかもしれません。 また日本語フォントの表示に関してはライブラリ内には用意されているものの 私はうまくフォント名を取得できずに書くことはできませんでした。 http://www.lowagie.com/iText/ 内にサンプルコードなどがあります。 | ||||
|
投稿日時: 2002-02-14 14:32
回答ありがとうございます。
なんとかサンプルを使用してPDF出力に成功しました。 しかし、日本語を出力させようとするとやはり文字化け が起きてしまいます。 海外からライブラリを落としてきたのでしょうがないとは 思いますが、どなたか解決方法を教えて頂けないでしょうか? よろしくお願いします。 | ||||
|
投稿日時: 2002-02-16 12:07
ちょっと状況がわかりませんが、iTextを使用されたのだと判断してお答えします。
その後私も日本語の出力についてドキュメントを読みましたが、平成角ゴシックと 平成明朝の2フォンとは日本語出力ができるようです。 以下にあまり整理してありませんが、サンプルを書いておきます。 import com.lowagie.text.*; import com.lowagie.text.pdf.*; import java.io.*; public class JpFontTest { public static BaseFont sharedFont = getDefaultFont(); /** 使用可能な日本語フォントを取得する */ public static BaseFont getDefaultFont() { try { return BaseFont.createFont( "HeiseiKakuGo-W5", "UniJIS-UCS2-HW-H", BaseFont.EMBEDDED ); } catch ( Exception e ) { e.printStackTrace(); return null; } } /** ドキュメント内に文字を書く */ public static void writeText( PdfContentByte content, String text, int x, int y, float size ) { content.beginText(); content.moveText( x, y ); content.setFontAndSize( sharedFont, size ); content.showText( text ); content.endText(); } public static void main( String[] arg ) { String filename = "pdftest.pdf"; if ( arg.length > 0 ) filename = arg[ 0 ]; try { FileOutputStream out = new FileOutputStream( new File( filename ) ); Document pdfDoc = new Document(); PdfWriter writer = PdfWriter.getInstance( pdfDoc, out ); PdfContentByte content = writer.getDirectContent(); pdfDoc.open(); // PDFドキュメントの作成を開始する pdfDoc.add( new Paragraph( "iText Example with Japanese Font" ) ); writeText( content, "このプログラムはBruno LowagieとPaulo SoaresによるiTextライブラリを使用しています", 100, 500, 10 ); writeText( content, "iTextはGPLの元で配布されています", 100, 400, 20 ); writeText( content, "詳しい情報はhttp://www.lowagie.com/iText/を参照してください", 100, 300, 15 ); pdfDoc.close(); // PDFドキュメントの作成を終了する } catch ( Exception e ) { e.printStackTrace(); } } } | ||||
|
投稿日時: 2002-02-17 01:32
JSP で、というのとはちがいますが、Java で作る方法。
http://jpfop.sourceforge.net/index_jp.html | ||||
|
投稿日時: 2002-02-18 13:10
kahoさんありがとうございます。
記述していただいたソースで日本語を出力できました。 しかし、開発で使用するということになるとリファレンスが 英語であるなど、若干使いづらい部分がありますね。 日本語版みたいなものはないんですかね??? なんならシェアウェアでもしょうがないかも・・・ | ||||
