When designing magazines or newspapers, you may need to display content in multiple columns on a single page to improve readability. In this article, you will learn how to programmatically create a two-column PDF from scratch using Spire.PDF for .NET.
Install Spire.PDF for .NET
To begin with, you need to add the DLL files included in the Spire.PDF for .NET package as references in your .NET project. The DLLs files can be either downloaded from this link or installed via NuGet.
PM> Install-Package Spire.PDF
Create a Two-Column PDF from Scratch in C# and VB.NET
Spire.PDF for .NET allows you to create a two-column PDF by drawing text at two separate rectangle areas in a PDF page. Below are the detailed steps to achieve the task.
- Create a PdfDocument instance.
- Add a new page in the PDF using PdfDocument.Pages.Add() method.
- Define paragraph text, then set the text font and text alignment.
- Draw text at two separate rectangle areas in the PDF using PdfPageBase.Canvas.DrawString (String, PdfFontBase, PdfBrush, RectangleF, PdfStringFormat) method.
- Save the result file using PdfDocument.SaveToFile() method.
- C#
- VB.NET
using Spire.Pdf; using Spire.Pdf.Graphics; using System.Drawing; namespace CreateTwoColumnPDF { class Program { static void Main(string[] args) { //Create a PdfDocument instance PdfDocument doc = new PdfDocument(); //Add a new page PdfPageBase page = doc.Pages.Add(); //Define paragraph text string s1 = "Spire.PDF for .NET is a professional PDF component applied to creating, writing, " + "editing, handling and reading PDF files without any external dependencies within " + ".NET application. Using this .NET PDF library, you can implement rich capabilities " + "to create PDF files from scratch or process existing PDF documents entirely through " + "C#/VB.NET without installing Adobe Acrobat."; string s2 = "Many rich features can be supported by the .NET PDF API, such as security setting " + "(including digital signature), PDF text/ attachment/ image extract, PDF merge/ split " + ", metadata update, section, graph/ image drawing and inserting, table creation and " + "processing, and importing data etc.Besides, Spire.PDF for .NET can be applied to easily " + "converting Text, Image and HTML to PDF with C#/VB.NET in high quality."; //Get width and height of page float pageWidth = page.GetClientSize().Width; float pageHeight = page.GetClientSize().Height; //Create a PdfSolidBrush instance PdfSolidBrush brush = new PdfSolidBrush(new PdfRGBColor(Color.Black)); //Create a PdfFont instance PdfFont font = new PdfFont(PdfFontFamily.TimesRoman, 14f); //Set the text alignment via PdfStringFormat class PdfStringFormat format = new PdfStringFormat(PdfTextAlignment.Left); //Draw text page.Canvas.DrawString(s1, font, brush, new RectangleF(0, 20, pageWidth / 2 - 8f, pageHeight),format); page.Canvas.DrawString(s2, font, brush, new RectangleF(pageWidth / 2 + 8f, 20, pageWidth / 2, pageHeight), format); //Save the result document doc.SaveToFile("CreateTwoColumnPDF.pdf.pdf"); } } }
Apply for a Temporary License
If you'd like to remove the evaluation message from the generated documents, or to get rid of the function limitations, please request a 30-day trial license for yourself.