NonSoft

PDFファイルを出力するサンプル(VB.NET)


 サンプル(ソース/コード)
PDFファイルにMSゴシックの漢字(全角)と画像を書き込むサンプルです。
PDF出力ライブラリとしてiText.NET(iText.NET.2005-dll-1.4.6-1.cab)を使用しています。
iText.NETのダウンロードサイト:http://sourceforge.net/projects/itextdotnet/

iText.NETはvjslib.dll(J#.NET)を参照設定して使用します。
iText.NETのiText.dllとJSharpLib.dllを参照設定して使用します。

PDF関係のプログラムを最初から作るより、こちらのPDF出力ツールと連携した方が早いかもしれません。
このPDF出力ツールエクセルを使用した帳票印刷のサンプル(VB.NET)の組み合わせでPDF出力が出来ます。

PDF関係のサンプルソースは他にもあります。
PDFファイルを分割するサンプル(VB.NET)
PDFファイルを結合するサンプル(VB.NET)
画像ファイルをPDF変換するサンプル(VB.NET)

C#.NET版はこちらです。
PDFファイルを出力するサンプル(C#.NET)
PDFファイルを分割するサンプル(C#.NET)
PDFファイルを結合するサンプル(C#.NET)
画像ファイルをPDF変換するサンプル(C#.NET)

関連ツールはこちらです。
PDF出力・分割・結合(ツール/ソフト)

★フォームモジュール(Form1.vb)
'--PDF出力サンプル--↓↓--PDF作成サンプル--↓↓--PDF出力サンプル--↓↓--PDF作成サンプル--
Imports System.io
Imports com.lowagie.text
Imports com.lowagie.text.pdf
Public Class Form1
    ' (注意1)vjslib.dll(J#.NET)を参照設定する必要があります。
    ' (注意2)iText.dllを参照設定する必要があります。
    ' (注意3)JSharpLib.dllを参照設定する必要があります。
    Private Sub Button1_Click( _
        ByVal sender As System.Object, ByVal e As System.EventArgs) _
        Handles Button1.Click
        ' PDFオブジェクトの生成
        Dim dc As New Document(PageSize.A4)

        ' PDFファイルのオープン
        Dim fs As FileStream = New FileStream("test.pdf", FileMode.Create, FileAccess.Write)

        ' PDFオブジェクトとPDFファイルの関連付け
        PdfWriter.getInstance(dc, fs)

        ' PDF出力開始
        dc.open()

        ' フォント設定(MSゴシック)
        Dim bf As BaseFont = BaseFont.createFont("c:\windows\fonts\msgothic.ttc,0", _
            BaseFont.IDENTITY_H, True)
        Dim f As New com.lowagie.text.Font(bf, 30, com.lowagie.text.Font.NORMAL)

        ' PDF出力
        ' 1ページ目(A4縦)
        dc.setPageSize(PageSize.A4)
        dc.newPage()
        dc.add(New Paragraph("Page1-ABCあいうPDF出力1PDF出力2PDF出力3PDF出力4", f))

        ' 2ページ目(A4横)
        dc.setPageSize(PageSize.A4.rotate)
        dc.newPage()
        dc.add(New Paragraph("Page2-ABCあいうPDF出力1PDF出力2PDF出力3PDF出力4", f))

        ' 画像出力
        Dim img As Image = Image.getInstance("test.jpg")
        img.scalePercent(150)
        dc.add(img)

        ' 3ページ目(A4縦)
        dc.setPageSize(PageSize.A4)
        dc.newPage()
        dc.add(New Paragraph("Page3-ABCあいうPDF出力1PDF出力2PDF出力3PDF出力4", f))

        ' PDF出力終了
        dc.close()
    End Sub
End Class
'--PDF出力サンプル--↑↑--PDF作成サンプル--↑↑--PDF出力サンプル--↑↑--PDF作成サンプル--