How to: Generate a Document Layout from Scratch
- 3 minutes to read
Important
You require a license to the DevExpress Office File API or DevExpress Universal Subscription to use these examples in production code. Refer to the DevExpress Subscription page for pricing information.
This example shows how to programmatically create a document with graphics using the PDF Document API.
- Create an empty document with no pages by calling one of the PdfDocumentProcessor.CreateEmptyDocument overload methods (e.g., using a file path).
- Call the PdfDocumentProcessor.CreateGraphics method to create PDF graphics represented by the PdfGraphics class instance. Make sure that you have reference to the DevExpress.Pdf.Drawing assembly to access PdfGraphics.
- Draw the graphic content (e.g., an image, a string, lines, polygons) by calling the corresponding Draw method.
- Use the PdfDocumentProcessor.RenderNewPage method to render a page with created graphics.
Note
A complete sample project is available at https://github.com/DevExpress-Examples/how-to-generate-a-document-layout-from-scratch-t244516
using DevExpress.Pdf;
using System;
using System.Drawing;
namespace DocumentCreationAPI
{
class Program {
static void Main(string[] args)
{
using (PdfDocumentProcessor processor = new PdfDocumentProcessor())
{
// Create an empty document.
processor.CreateEmptyDocument("..\\..\\Result.pdf");
// Create and draw PDF graphics.
using (PdfGraphics graph = processor.CreateGraphics())
{
DrawGraphics(graph);
// Render a page with graphics.
processor.RenderNewPage(PdfPaperSize.Letter, graph);
}
}
}
static void DrawGraphics(PdfGraphics graph)
{
// Draw text lines on the page.
SolidBrush black = (SolidBrush)Brushes.Black;
using (Font font1 = new Font("Times New Roman", 32, FontStyle.Bold))
{
graph.DrawString("PDF Document Processor", font1, black, 180, 150);
}
using (Font font2 = new Font("Arial", 20))
{
graph.DrawString("Display, Print and Export PDF Documents", font2, black, 168, 230);
}
using (Font font3 = new Font("Arial", 10))
{
graph.DrawString("The PDF Document Processor is a non-visual component " +
"that provides the application programming interface of the PDF Viewer.", font3, black, 16, 300);
}
}
}
}
See Also