Adicionar e manipular tíquetes de impressão

Crie, edite, vincule e obtenha tíquetes de impressão de arquivos XPS via C#

 

Todos os formatos de linguagem de descrição de página suportam impressão. Alguns deles, como PDF, suportam impressão de alta qualidade com uma variedade de espaços de cores e ambientes independentes de resolução. Como o XPS foi projetado para ser impresso em impressoras de escritório comuns, ele suporta menos espaços de cores e apenas 2 tipos de fontes. A solução API Aspose.Page entre as diversas outras funcionalidades permite trabalhar com impressão de tickets. Aqui você encontrará informações que explicam como criar, editar, obter e vinculá-los.

Para manipular tíquetes de impressão de arquivos XPS, precisamos:

  • Aspose.Page for .NET API, que é uma API de manipulação e conversão de documentos rica em recursos, poderosa e fácil de usar para plataforma C#.

  • Abra o gerenciador de pacotes NuGet, pesquise Aspose.Page e instale. Você também pode usar o seguinte comando do Console do Gerenciador de Pacotes.

Package Manager Console Command


    PM> Install-Package Aspose.Page

Etapas para criar um ticket de impressão personalizado C# .NET.

  1. Defina o caminho para o diretório de documentos.
  2. Crie um arquivo XPS usando a XpsDocument Class .
  3. Adicione um tíquete de impressão de trabalho personalizado usando o construtor JobPrintTicket .
  4. Adicione um inicializador de parâmetro de página personalizado e uma opção de resolução de página personalizada ao ticket.
  5. Salve o documento XPS alterado usando o método XPsDocument.Save() .

Código C# para imprimir tickets em um arquivo XPS

    using Aspose.Page.XPS;
    using Aspose.Page.XPS.XpsMetadata;
    using Aspose.Page.XPS.XpsModel;
    using System.Drawing;
    using System;
    // The path to the documents directory.
    string dir = RunExamples.GetDataDir_WorkingWithPrintTickets();

    // Create a new XPS document
    XpsDocument xDocs = new XpsDocument();

    // Add a custom job print ticket
    xDocs.JobPrintTicket = new JobPrintTicket(
        new PageDevModeSnaphot("SABlAGwAbABvACEAAAA="),             // Custom page parameter initializer
        new DocumentCollate(Collate.CollateOption.Collated),
        new JobCopiesAllDocuments(1),
        new PageICMRenderingIntent(PageICMRenderingIntent.PageICMRenderingIntentOption.Photographs),
        new PageColorManagement(PageColorManagement.PageColorManagementOption.None),
        new JobNUpAllDocumentsContiguously(
            new NUp.PresentationDirection(NUp.PresentationDirection.PresentationDirectionOption.RightBottom),
            new Borders(Borders.BordersOption.On) /* Custom nested feature */).AddPagesPerSheetOption(1),
        new PageMediaSize(PageMediaSize.PageMediaSizeOption.NorthAmericaLetter),
        new JobInputBin(InputBin.InputBinOption.AutoSelect),
        new JobDuplexAllDocumentsContiguously(Duplex.DuplexOption.OneSided),
        new PageOrientation(PageOrientation.PageOrientationOption.Portrait),
        new PageResolution(
            new PageResolution.PageResolutionOption("ns0000:ESDL300x300")             // Custom page resolution option
                .SetResolutionX(300).SetResolutionY(300)),
        new PageMediaType(PageMediaType.PageMediaTypeOption.Plain),
        new PageOutputColor(PageOutputColor.PageOutputColorOption.Color.Clone().SetDeviceBitsPerPixel(0).SetDriverBitsPerPixel(24)));


    // Save the document with the custom job print ticket.
    xDocs.Save(dir + "output1.xps");

Etapas para editar tíquete de impressão XPS via C# .NET.

  1. Defina o caminho para o diretório de documentos.
  2. Abra o documento XPS com tíquetes de impressão usando a XpsDocument Class.
  3. Para remover os parâmetros desnecessários do ticket, use o método Remove() .
  4. Salve o documento com o tíquete de impressão do trabalho alterado por meio do método XPsDocument.Save().

Código C# para editar tickets de impressão em um arquivo XPS

    // The path to the documents directory.
    string dir = RunExamples.GetDataDir_WorkingWithPrintTickets();

    // Open the XPS Document with print tickets
    XpsDocument xDocs = new XpsDocument(dir + "input3.xps");

    JobPrintTicket pt = xDocs.JobPrintTicket;

    // Remove some parameters from the job print ticket
    pt.Remove(
        "ns0000:PageDevmodeSnapshot",
        "ns0000:JobInterleaving",
        "ns0000:JobImageType");

    // Add some parameters to the job print ticket
    pt.Add(
        new JobCopiesAllDocuments(2),
        new PageMediaSize(PageMediaSize.PageMediaSizeOption.ISOA4));

    // Save the document with the changed job print ticket.
    xDocs.Save(dir + "output3.xps");

Etapas para obter o ticket de impressão via C# .NET.

  1. Defina o caminho para o diretório de documentos.
  2. Abra o documento XPS com tíquetes de impressão usando a XpsDocument Class.
  3. Crie o tíquete de impressão do trabalho com o construtor JobPrintTicket.
  4. Crie o ticket de impressão do documento usando o método GetDocumentPrintTicket() .
  5. Obtenha o ticket de impressão da página usando o método GetPagePrintTicket() .
  6. Salve o documento com o tíquete de impressão do trabalho alterado por meio do método XPsDocument.Save().

Código C# para obter bilhetes de impressão em um arquivo XPS

    // The path to the documents directory.
    string dir = RunExamples.GetDataDir_WorkingWithPrintTickets();

    // Open the XPS Document without print tickets
    XpsDocument xDocs = new XpsDocument(dir + "input1.xps");

    // Get the job print ticket
    JobPrintTicket jobPrintTicket = xDocs.JobPrintTicket; // must be null for this document

    // Get the document print ticket
    DocumentPrintTicket docPrintTicket = xDocs.GetDocumentPrintTicket(1); // must be null for this document

    // Get the page print ticket
    PagePrintTicket pagePrintTicket = xDocs.GetPagePrintTicket(1, 1); // must be null for this document


    // Save the document. Default print tickets are automatically added to document while saving.
    xDocs.Save(dir + "output1.xps");

    // Open the saved earlier XPS Document with print tickets
    XpsDocument xDocs2 = new XpsDocument(dir + "output1.xps");

    // Print tickets must not be null

    Console.WriteLine(xDocs2.JobPrintTicket);

    Console.WriteLine(xDocs2.GetDocumentPrintTicket(1));

    Console.WriteLine(xDocs2.GetPagePrintTicket(1, 1));

Etapas para vincular tíquetes de impressão do arquivo XPS via C# .NET.

  1. Defina o caminho para o diretório de documentos.
  2. Crie um novo arquivo XPS e abra o Documento XPS com tíquetes de impressão usando XpsDocument Class.
  3. Abra o documento XPS com tíquetes de impressão usando XpsDocument Class
  4. Vincule o tíquete de impressão do trabalho ao construtor JobPrintTicket.
  5. Vincule o ticket de impressão do documento usando os métodos GetDocumentPrintTicket() e SetDocumentPrintTicket()
  6. Vincule o ticket de impressão da página usando os métodos GetPagePrintTicket() e SetPagePrintTicket() .
  7. Salve o documento com o tíquete de impressão do trabalho alterado por meio do método XPsDocument.Save().

Código C# para vincular tickets de impressão em um arquivo XPS

    // The path to the documents directory.
    string dir = RunExamples.GetDataDir_WorkingWithPrintTickets();

    // Create a new XPS document
    XpsDocument xDocs1 = new XpsDocument();

    // Open the XPS Document with print tickets
    XpsDocument xDocs2 = new XpsDocument(dir + "input2.xps");

    // Link the job print ticket
    xDocs1.JobPrintTicket = xDocs2.JobPrintTicket;

    // Link the document print ticket
    xDocs1.SetDocumentPrintTicket(1, xDocs2.GetDocumentPrintTicket(2));

    // Link the page print ticket
    xDocs1.SetPagePrintTicket(1, 1, xDocs2.GetPagePrintTicket(3, 2));


    // Save the document with linked print tickets.
    xDocs1.Save(dir + "output1.xps");



Perguntas frequentes

1. Como posso criar um ticket de impressão para um arquivo XPS?

Para fazer um ticket de impressão (ou impressão de informações) do documento antes de enviá-lo para a impressora, utilize o JobPrintTicket Classe.

2. Quais operações com impressão de tickets estão disponíveis na solução API Aspose.Page?

Com esta solução .NET você pode criar, editar, obter e vincular informações de impressão.

3. Como posso editar as informações de impressão do arquivo XPS?

Defina o caminho e abra um documento XPS com tickets de impressão. Use métodos da classe PrintTicket.

XPS O que é XPS Formato de Arquivo

O formato XPS é semelhante ao formato PDF. Ambos são formatos de linguagem de descrição de página (PDL). EPS é baseado em HTML e não em linguagem PostScript. O arquivo .eps é capaz de conter uma marcação da estrutura do documento junto com as informações de como o documento ficaria. Há também instruções adicionadas sobre como imprimir e renderizar o documento. A característica do formato é que ele corrige a descrição do documento, o que significa que ele terá a mesma aparência, não importa quem e de qual sistema operacional o abra.