How to convert text to PDF using C# and VB.NET?
Syncfusion Essential® PDF is a .NET PDF library used to create, read, and edit PDF documents. Using this library, you can convert text document to PDF or create PDF with text in different string formats in C# and VB.NET.
Steps to convert text document to PDF programmatically:
- Create a new C# console application project.
- Install the Syncfusion.Pdf.WinForms NuGet packages as reference to your .NET Framework application from NuGet.org.
- Include the following namespaces in the Program.cs file.
C#
using Syncfusion.Pdf; using Syncfusion.Pdf.Graphics;
VB.NET
Imports Syncfusion.Pdf Imports Syncfusion.Pdf.Graphics
- Use the following code snippet to create PDF and draw text.
C#
//Create a new PDF document PdfDocument document = new PdfDocument(); //Add a page to the document PdfPage page = document.Pages.Add(); //Create PDF graphics for the page PdfGraphics graphics = page.Graphics; //set the standard font PdfFont font = new PdfStandardFont(PdfFontFamily.Helvetica, 12); //Read the text from the text file StreamReader reader = new StreamReader("input.txt", Encoding.ASCII); string text = reader.ReadToEnd(); reader.Close(); //Set the formats for the text PdfStringFormat format = new PdfStringFormat(); format.Alignment = PdfTextAlignment.Justify; format.LineAlignment = PdfVerticalAlignment.Top; format.ParagraphIndent = 15f; //Draw the text graphics.DrawString(text, font, PdfBrushes.Black, new RectangleF(new PointF(0,0), page.GetClientSize()), format); //Save the document document.Save("OutputText.pdf"); //Close the document document.Close(true); //This will open the PDF file so, the result will be seen in default PDF viewer Process.Start("OutputText.pdf");
VB.NET
‘Create a new PDF document Dim document As PdfDocument = New PdfDocument() ‘Add a page to the document Dim page As PdfPage = document.Pages.Add() ‘Create PDF graphics for the page Dim graphics As PdfGraphics = page.Graphics ‘set the standard font Dim font As PdfFont = New PdfStandardFont(PdfFontFamily.Helvetica, 12) ‘Read the text from the text file Dim reader As StreamReader = New StreamReader(("input.txt"), Encoding.ASCII) Dim text As String = reader.ReadToEnd() reader.Close() ‘Set the formats for the text Dim format As PdfStringFormat = New PdfStringFormat() format.Alignment = PdfTextAlignment.Justify format.LineAlignment = PdfVerticalAlignment.Top format.ParagraphIndent = 15.0 'Draw the text graphics.DrawString(text, font, PdfBrushes.Black, New RectangleF(New PointF(0, 0), page.GetClientSize), format) 'Save the document document.Save("OutputText.pdf") 'Close the document document.Close(True) 'This will open the PDF file so, the result will be seen in default PDF viewer Process.Start("OutputText.pdf")
A complete working sample can be downloaded from TextToPDFSample.zip
By executing the program, you will get the PDF document as follows.
Take a moment to peruse the documentation for working with text, where you will find other options like drawing text using different font, drawing right to left text, embedding font, and working with unicode text.
An online sample link demonstrating the use of text in PDF document.
Refer here to explore the rich set of Syncfusion Essential® PDF features.
Starting with v16.2.0.x, if you reference Syncfusion® assemblies from trial setup or from the NuGet feed, include a license key in your projects. Refer to link to learn about generating and registering Syncfusion® license key in your application to use the components without trail message.
Conclusion
I hope you enjoyed learning about how to convert text to PDF using C# and VB.NET.
You can refer to our PDF feature tour page to know about its other groundbreaking feature representations. You can also explore our documentation to understand how to create and manipulate data.
For current customers, you can check out our components from the License and Downloads page. If you are new to Syncfusion®, you can try our 30-day free trial to check out our other controls.
If you have any queries or require clarifications, please let us know in the comments section below. You can also contact us through our support forums, Direct-Trac, or feedback portal. We are always happy to assist you!