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

NameDescription
System_CAPS_pubpropertyDocumentNumber

Gets the zero-based position of the FixedDocument in the FixedDocumentSequence.

System_CAPS_pubpropertyPrintTicket

Sets default print options for the FixedDocument.

System_CAPS_pubpropertyUri

Gets the URI of the FixedDocument.

NameDescription
System_CAPS_pubmethodAddDocumentStructure()

Adds theDocumentStructure part of XML Paper Specification (XPS) to an XPS package.(Inherited from IDocumentStructureProvider.)

System_CAPS_pubmethodAddFixedPage()

Adds a new FixedPage to the FixedDocument.

System_CAPS_pubmethodAddThumbnail(XpsImageType)

Adds an XpsThumbnail image for the FixedDocument.

System_CAPS_pubmethodCommit()

Flushes and closes the FixedDocument writer.

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
Available since 3.0
Return to top
Show:
© 2016 Microsoft