Export (0) Print
Expand All
This topic has not yet been rated - Rate this topic

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.5.1, 4.5, 4, 3.5, 3.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Did you find this helpful?
(1500 characters remaining)
Thank you for your feedback
Show:
© 2014 Microsoft. All rights reserved.