ParagraphAlign.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

'' このサンプルは、段落の配置オプションを示します
'' (水平 LTR テキストの場合は top/center/justified/bottom)。
Public Class ParagraphAlign
    Function CreatePDF(ByVal stream As Stream) As Integer
        Dim doc = New GcPdfDocument()
        Dim page = doc.NewPage()
        Dim g = page.Graphics
        Dim tl = g.CreateTextLayout()
        tl.DefaultFormat.FontName = "Yu Gothic"
        tl.DefaultFormat.FontSize = 12
        Dim borderColor = Color.FromArgb(217, 217, 217)

        Dim h = (page.Size.Height - 72) / 5
        Dim bounds = New RectangleF(36, 36, page.Size.Width - 72, h)

        tl.MaxWidth = bounds.Width
        tl.MaxHeight = bounds.Height

        Dim para = Util.getString_ja(0, 0, 1, 7, 10)

        '' 1: ParagraphAlignment.Near
        tl.ParagraphAlignment = ParagraphAlignment.Near
        tl.Append("ParagraphAlignment.Near: ")
        tl.Append(para)
        tl.PerformLayout(True)
        g.DrawTextLayout(tl, bounds.Location)
        g.DrawRectangle(bounds, borderColor)

        '' 2: ParagraphAlignment.Center
        bounds.Offset(0, h)
        tl.Clear()
        tl.ParagraphAlignment = ParagraphAlignment.Center
        tl.Append("ParagraphAlignment.Center: ")
        tl.Append(para)
        tl.PerformLayout(True)
        g.DrawTextLayout(tl, bounds.Location)
        g.DrawRectangle(bounds, borderColor)

        '' 3: ParagraphAlignment.Justified
        bounds.Offset(0, h)
        tl.Clear()
        tl.ParagraphAlignment = ParagraphAlignment.Justified
        tl.Append("ParagraphAlignment.Justified: ")
        tl.Append(para)
        tl.PerformLayout(True)
        g.DrawTextLayout(tl, bounds.Location)
        g.DrawRectangle(bounds, borderColor)

        '' 4: ParagraphAlignment.Distributed
        bounds.Offset(0, h)
        tl.Clear()
        tl.ParagraphAlignment = ParagraphAlignment.Distributed
        tl.Append("ParagraphAlignment.Distributed: ")
        tl.Append(para)
        tl.PerformLayout(True)
        g.DrawTextLayout(tl, bounds.Location)
        g.DrawRectangle(bounds, borderColor)

        '' 5: ParagraphAlignment.Far
        bounds.Offset(0, h)
        tl.Clear()
        tl.ParagraphAlignment = ParagraphAlignment.Far
        tl.Append("ParagraphAlignment.Far: ")
        tl.Append(para)
        tl.PerformLayout(True)
        g.DrawTextLayout(tl, bounds.Location)
        g.DrawRectangle(bounds, borderColor)
        ''
        '' PDF ドキュメントを保存します。
        doc.Save(stream)
        Return doc.Pages.Count
    End Function
End Class