WordCharWrap.cs
C# VB
//// This code is part of Document Solutions for PDF .NET demos.// Copyright (c) MESCIUS inc. All rights reserved.//using System.IO;using System.Drawing;using GrapeCity.Documents.Pdf;using GrapeCity.Documents.Text;
namespace DsPdfWeb.Demos.Basics{ // This sample demonstrates the difference between WordWrap and CharWrap // text wrapping modes. public class WordCharWrap { public int CreatePDF(Stream stream) { var str = "Lose nothing in your documents! Document Solutions for PDF includes text and paragraph formatting, " + "special characters, multiple languages, RTL support, vertical and rotated text on all supported platforms.";
var doc = new GcPdfDocument(); var page = doc.NewPage(); var g = page.Graphics;
var tl = g.CreateTextLayout(); tl.Append(str); tl.DefaultFormat.Font = StandardFonts.Times; tl.DefaultFormat.FontSize = 12; tl.MaxWidth = 72 * 3;
tl.WrapMode = WrapMode.WordWrap; tl.PerformLayout(true);
var dy = tl.Lines[0].Height + 72 / 16; var rc = new RectangleF(72, 72 + dy, tl.MaxWidth.Value, 72 * 1.4F);
g.DrawString("WrapMode.WordWrap:", tl.DefaultFormat, new PointF(rc.Left, rc.Top - dy)); g.DrawTextLayout(tl, rc.Location); g.DrawRectangle(rc, Color.CornflowerBlue);
rc.Offset(0, 72 * 2); tl.WrapMode = WrapMode.CharWrap; tl.PerformLayout(false); g.DrawString("WrapMode.CharWrap:", tl.DefaultFormat, new PointF(rc.Left, rc.Top - dy)); g.DrawTextLayout(tl, rc.Location); g.DrawRectangle(rc, Color.CornflowerBlue);
// Done: doc.Save(stream); return doc.Pages.Count; } }}