Compartir vía


IXpsFixedDocumentWriter Interfaz

Definición

Define métodos y propiedades para escribir en FixedDocument.

public interface class IXpsFixedDocumentWriter : System::Windows::Xps::Packaging::IDocumentStructureProvider
public interface IXpsFixedDocumentWriter : System.Windows.Xps.Packaging.IDocumentStructureProvider
type IXpsFixedDocumentWriter = interface
    interface IDocumentStructureProvider
Public Interface IXpsFixedDocumentWriter
Implements IDocumentStructureProvider
Implementaciones

Ejemplos

En el ejemplo siguiente se muestra cómo usar el AddFixedDocument método para obtener un escritor de documentos fijos para agregar FixedPage contenido a .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>
void AddPackageContent (XpsDocument^ xpsDocument, bool attachPrintTicket)
{
   try
   {
      PrintTicket^ printTicket = GetPrintTicketFromPrinter();
      // PrintTicket is null, there is no need to attach one.
      if (printTicket == nullptr)
      {
         attachPrintTicket = false;
      }
      // Add a FixedDocumentSequence at the Package root
      IXpsFixedDocumentSequenceWriter^ documentSequenceWriter = xpsDocument->AddFixedDocumentSequence();

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

      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()
// ------------------------- 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()
' ------------------------- 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 Sub AddPackageContent(ByVal xpsDocument As XpsDocument, ByVal attachPrintTicket As Boolean)
    Try
        Dim printTicket As PrintTicket = GetPrintTicketFromPrinter()
        ' PrintTicket is null, there is no need to attach one.
        If printTicket Is Nothing Then
            attachPrintTicket = False
        End If

        ' Add a FixedDocumentSequence at the Package root
        Dim documentSequenceWriter As IXpsFixedDocumentSequenceWriter = xpsDocument.AddFixedDocumentSequence()

        ' Add the 1st FixedDocument to the FixedDocumentSequence. - - - - -
        Dim fixedDocumentWriter As IXpsFixedDocumentWriter = 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 Then
            fixedDocumentWriter.PrintTicket = printTicket
        End If

        ' Commit the 2nd document.
        fixedDocumentWriter.Commit()

        ' If attaching PrintTickets, attach one at
        ' the package FixedDocumentSequence level.
        If attachPrintTicket Then
            documentSequenceWriter.PrintTicket = printTicket
        End If

        ' Commit the FixedDocumentSequence
        documentSequenceWriter.Commit()
    Catch xpsException As XpsPackagingException
        Throw xpsException
    End Try
End Sub

Propiedades

DocumentNumber

Obtiene la posición de base cero de FixedDocument en FixedDocumentSequence.

PrintTicket

Establece las opciones de impresión predeterminadas para FixedDocument.

Uri

Obtiene el URI de FixedDocument.

Métodos

AddDocumentStructure()

Agrega la DocumentStructure parte de xml Paper Specification (XPS) a un paquete XPS.

(Heredado de IDocumentStructureProvider)
AddFixedPage()

Agrega un nuevo objeto FixedPage a la colección FixedDocument.

AddThumbnail(XpsImageType)

Agrega una imagen XpsThumbnail para FixedDocument.

Commit()

Vacía y cierra el sistema de escritura FixedDocument.

Se aplica a