.NET Framework 4.5.2+
.NET Framework 4.5.2+
.NET Standard 2.0+

PdfDocumentProcessor.CreateEmptyDocument(Stream, PdfCreationOptions) Method

Creates an empty PDF with no pages using a stream and PDF creation options.

Namespace: DevExpress.Pdf

Assembly: DevExpress.Docs.v21.1.dll

Declaration

public void CreateEmptyDocument(
    Stream stream,
    PdfCreationOptions creationOptions
)

Parameters

Name Type Description
stream Stream

A Stream class descendant specifying the stream to which the PDF empty document should be written.

creationOptions PdfCreationOptions

A PdfCreationOptions object that contains PDF compatibility and font embedding options.

Remarks

Set the PdfCreationOptions.Compatibility property to one of the PdfCompatibility enumeration values to create an empty PDF document. The PdfCreationOptions.DisableEmbeddingAllFonts property allows you to disable embedding all fonts when the document is created. To disable embedding certain fonts, use the PdfCreationOptions.NotEmbeddedFontFamilies property.

Use the PDF document creation API to continue to generate the document layout (e.g., append pages with graphics to the PDF document, generate bookmarks, and attach files). Refer to the following topic for more information: Additional Content

Note

When all operations with a created document are completed, close the document either by the PdfDocumentProcessor.CloseDocument method call or dispose of the PdfDocumentProcessor instance.

The PDF specification does not describe empty documents. For this reason, most third-party PDF viewers cannot open such files. This does not apply to the DevExpress WinForms PDF Viewer and WPF PDF Viewer, which are less demanding concerning the validity of opened documents, and are capable of opening documents containing no pages.

This CreateEmptyDocument method overload writes generated document content into the stream specified as this method’s parameter. The SaveDocument method call rewrites this stream.

Example

This example shows how to programmatically create a document with graphics using the PDF Document API.

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