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ツールと連携した方が早いと思います。
このツールとエクセルを使用した帳票印刷のサンプル(VB.NET)の組み合わせでPDF出力が出来ます。

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

★フォームモジュール(Form1.vb)
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出力4PDF出力5PDF出力6PDF出力7PDF出力8", f))

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

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

        ' PDF出力終了
        dc.close()
    End Sub

End Class