Set Superscript and Subscript - C#
PDF SDK sample in C# demonstrating ‘Set Superscript and Subscript’
Program.cs
using System.Diagnostics;
using Bytescout.PDF;
namespace SuperscripAndSubscript
{
/// <summary>
/// This example demonstrates how to draw subscript or superscript text adjusting the text baseline.
/// </summary>
class Program
{
static void Main()
{
// Create new document
Document pdfDocument = new Document();
pdfDocument.RegistrationName = "demo";
pdfDocument.RegistrationKey = "demo";
// If you wish to load an existing document uncomment the line below and comment the Add page section instead
// pdfDocument.Load(@".\existing_document.pdf");
// Add page
Page page = new Page(PaperFormat.A4);
pdfDocument.Pages.Add(page);
Font font = new Font("Arial", 16);
Brush brush = new SolidBrush();
StringFormat stringFormat = new StringFormat();
float xPosition = 20;
// Draw normal string
page.Canvas.DrawString("Normal text ", font, brush, xPosition, 50, stringFormat);
xPosition += font.GetTextWidth("Normal text ");
// Draw subscript string
stringFormat.Rise = -5;
page.Canvas.DrawString("Subscript", font, brush, xPosition, 50, stringFormat);
xPosition += font.GetTextWidth("Subscript");
// draw superscript string
stringFormat.Rise = +5;
page.Canvas.DrawString("Superscript", font, brush, xPosition, 50, stringFormat);
xPosition += font.GetTextWidth("Superscript");
// Draw the baseline
Pen pen = new SolidPen(new ColorRGB(0, 0, 255));
pen.Opacity = 50;
page.Canvas.DrawLine(pen, 20, 50 + font.Size, xPosition, 50 + font.Size);
// Save document to file
pdfDocument.Save("result.pdf");
// Cleanup
pdfDocument.Dispose();
// Open result document in default associated application (for demo purpose)
ProcessStartInfo processStartInfo = new ProcessStartInfo("result.pdf");
processStartInfo.UseShellExecute = true;
Process.Start(processStartInfo);
}
}
}