ParagraphFormatting.vb
'' 
'' このコードは、DioDocs for PDF のサンプルの一部として提供されています。
'' © MESCIUS inc. All rights reserved.
'' 
Imports System.IO
Imports System.Drawing
Imports GrapeCity.Documents.Pdf
Imports GrapeCity.Documents.Text
Imports GrapeCity.Documents.Drawing

'' このサンプルは、最も基本的な段落書式設定オプションを示します。
'' - 最初の行のインデント
'' - 行間
Public Class ParagraphFormatting
    Function CreatePDF(ByVal stream As Stream) As Integer

        Dim makePara As Func(Of String) =
            Function()
                Return Util.getString_ja(0, 0, 5, 6, 15)
            End Function

        Dim doc = New GcPdfDocument()
        Dim g = doc.NewPage().Graphics
        '' Graphics.CreateTextLayout() を使用すると、TextLayout の解像度は
        '' グラフィックスの解像度と同じ値(デフォルトでは 72 dpi)に設定されます。
        Dim tl = g.CreateTextLayout()
        '' デフォルトのフォント。
        tl.DefaultFormat.FontName = "Yu Gothic"
        tl.DefaultFormat.FontSize = 12
        '' TextLayout をページ全体に設定します。
        tl.MaxWidth = doc.PageSize.Width
        tl.MaxHeight = doc.PageSize.Height
        '' ...そして、ページマージンを管理します(外周に 1 インチ)。
        tl.MarginAll = tl.Resolution
        '' 最初の行のオフセットを 1/2 インチにします。
        tl.FirstLineIndent = 72 / 2
        '' 行間を 1.5 行にします。
        tl.LineSpacingScaleFactor = 1.5F
        ''
        tl.Append(makePara())
        tl.PerformLayout(True)
        '' (0,0)の位置にテキストを描画します(余白は TextLayout によって追加されます)。
        g.DrawTextLayout(tl, PointF.Empty)
        ''
        '' PDF ドキュメントを保存します。
        doc.Save(stream)
        Return doc.Pages.Count
    End Function
End Class