ParagraphAlign.vb
''
'' This code is part of Document Solutions for PDF demos.
'' Copyright (c) MESCIUS inc. All rights reserved.
''
Imports System.IO
Imports System.Drawing
Imports GrapeCity.Documents.Pdf
Imports GrapeCity.Documents.Text
Imports GrapeCity.Documents.Drawing
'' This sample demonstrates paragraph alignment options
'' (top/center/justified/bottom for horizontal LTR text).
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.Font = StandardFonts.Times
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.LoremIpsum(1, 5, 5, 10, 12)
'' 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)
''
'' Done:
doc.Save(stream)
Return doc.Pages.Count
End Function
End Class