Skip to main content

PdfDocumentProcessor.CreateEmptyDocument(Stream, PdfSaveOptions) Method

Creates an empty PDF document with no pages with specified save options (encryption and signature settings) and writes it to a stream.

Namespace: DevExpress.Pdf

Assembly: DevExpress.Docs.v23.2.dll

NuGet Package: DevExpress.Document.Processor

Declaration

public void CreateEmptyDocument(
    Stream stream,
    PdfSaveOptions saveOptions
)

Parameters

Name Type Description
stream Stream

A stream to write the empty PDF document.

saveOptions PdfSaveOptions

An object that contains settings to encrypt an empty document.

Remarks

Use this method to create an empty document from scratch. The PdfSaveOptions options allows you to specify the encryption settings (the PdfSaveOptions.EncryptionOptions property) to protect an empty document with a password and permissions.

Use the PDF document creation API to generate the document layout (e.g., append pages with graphics to the PDF document, generate bookmarks, and attach files). Refer to the following article 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 use PDF Graphics API to create a document with graphics content.

View Example

using DevExpress.Pdf;
using System;
using System.Drawing;
//...

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;

    DXFont font1 = new DXFont("Times New Roman", 32, DXFontStyle.Bold);
    graph.DrawString("PDF Document Processor", font1, black, 180, 150);

    DXFont font2 = new DXFont("Arial", 20);
    graph.DrawString("Display, Print and Export PDF Documents", font2, black, 168, 230);

    DXFont font3 = new DXFont("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