Was this page helpful?
Your feedback about this content is important. Let us know what you think.
Additional feedback?
1500 characters remaining
IXpsFixedDocumentWriter Interface

IXpsFixedDocumentWriter Interface

Defines methods and properties for writing a FixedDocument.

Namespace:  System.Windows.Xps.Packaging
Assembly:  ReachFramework (in ReachFramework.dll)

public interface IXpsFixedDocumentWriter : IDocumentStructureProvider

The IXpsFixedDocumentWriter type exposes the following members.

  NameDescription
Public propertyDocumentNumberGets the zero-based position of the FixedDocument in the FixedDocumentSequence.
Public propertyPrintTicketSets default print options for the FixedDocument.
Public propertyUriGets the URI of the FixedDocument.
Top

  NameDescription
Public methodAddDocumentStructureAdds theDocumentStructure part of XML Paper Specification (XPS) to an XPS package. (Inherited from IDocumentStructureProvider.)
Public methodAddFixedPageAdds a new FixedPage to the FixedDocument.
Public methodAddThumbnailAdds an XpsThumbnail image for the FixedDocument.
Public methodCommitFlushes and closes the FixedDocument writer.
Top

The following example shows how to use the AddFixedDocument method in order to obtain a fixed-document writer for adding FixedPage content to an XpsDocument.

// ------------------------- AddPackageContent ---------------------------- 
/// <summary> 
///   Adds a predefined set of content to a given XPS document.</summary> 
/// <param name="xpsDocument">
///   The package to add the document content to.</param> 
/// <param name="attachPrintTicket">
///   true to include a PrintTicket with the 
///   document; otherwise, false.</param> 
private void AddPackageContent(
    XpsDocument xpsDocument, bool attachPrintTicket)
{
    try
    {
        PrintTicket printTicket = GetPrintTicketFromPrinter();
        // PrintTicket is null, there is no need to attach one. 
        if (printTicket == null)
            attachPrintTicket = false;

        // Add a FixedDocumentSequence at the Package root
        IXpsFixedDocumentSequenceWriter documentSequenceWriter =
            xpsDocument.AddFixedDocumentSequence();

        // Add the 1st FixedDocument to the FixedDocumentSequence. - - - - -
        IXpsFixedDocumentWriter fixedDocumentWriter =
            documentSequenceWriter.AddFixedDocument();

        // Add content to the 1st document
        AddDocumentContent(fixedDocumentWriter);

        // Commit the 1st Document
        fixedDocumentWriter.Commit();

        // Add a 2nd FixedDocument to the FixedDocumentSequence. - - - - - -
        fixedDocumentWriter = documentSequenceWriter.AddFixedDocument();

        // Add content to the 2nd document.
        AddDocumentContent(fixedDocumentWriter);

        // If attaching PrintTickets, attach one at the FixedDocument level. 
        if (attachPrintTicket)
            fixedDocumentWriter.PrintTicket = printTicket;

        // Commit the 2nd document.
        fixedDocumentWriter.Commit();

        // If attaching PrintTickets, attach one at 
        // the package FixedDocumentSequence level. 
        if (attachPrintTicket)
            documentSequenceWriter.PrintTicket = printTicket;

        // Commit the FixedDocumentSequence
        documentSequenceWriter.Commit();
    }
    catch (XpsPackagingException xpsException)
    {
        throw xpsException;
    }
}// end:AddPackageContent()

.NET Framework

Supported in: 4.6, 4.5, 4, 3.5, 3.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1
Show:
© 2015 Microsoft