Ajouter et manipuler des tickets d’impression

Créer, modifier, lier et obtenir des tickets d’impression de fichiers XPS via C#

 

Tous les formats de langage de description de page prennent en charge l'impression. Certains d'entre eux, comme PDF, prennent en charge une impression de haute qualité avec une variété d'espaces colorimétriques et d'environnements indépendants de la résolution. Comme XPS était destiné à être imprimé sur des imprimantes de bureau ordinaires, il prend en charge moins d'espaces colorimétriques et seulement 2 types de polices. La solution API Aspose.Page parmi les différentes autres fonctionnalités permet de travailler avec des tickets imprimés. Vous trouverez ici des informations expliquant comment les créer, les modifier, les obtenir et les lier.

Pour manipuler les tickets d'impression des fichiers XPS, nous avons besoin de :

  • Aspose.Page pour l'API .NET qui est une API de manipulation et de conversion de documents riche en fonctionnalités, puissante et facile à utiliser pour la plate-forme C#.

  • Ouvrez le gestionnaire de packages NuGet, recherchez Aspose.Page et installez. Vous pouvez également utiliser la commande suivante à partir de la console du gestionnaire de packages.

Package Manager Console Command


    PM> Install-Package Aspose.Page

Étapes pour créer un ticket d'impression personnalisé C# .NET.

  1. Définissez le chemin d’accès au répertoire des documents.
  2. Créez un fichier XPS à l’aide de XpsDocument Class .
  3. Ajoutez un ticket d’impression de travail personnalisé à l’aide du constructeur JobPrintTicket .
  4. Ajoutez un initialiseur de paramètre de page personnalisé et une option de résolution de page personnalisée au ticket.
  5. Enregistrez le document XPS modifié à l’aide de la méthode XPsDocument.Save() .

Code C# pour imprimer des tickets dans un fichier 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");

Étapes pour modifier le ticket d'impression XPS via C# .NET.

  1. Définissez le chemin d’accès au répertoire des documents.
  2. Ouvrez un document XPS avec des tickets d’impression à l’aide de la classe XpsDocument.
  3. Pour supprimer les paramètres inutiles du ticket, utilisez la méthode Remove() .
  4. Enregistrez le document avec le ticket d’impression de travail modifié à l’aide de la méthode XPsDocument.Save().

Code C# pour modifier les tickets d'impression dans un fichier 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");

Étapes pour obtenir un ticket d'impression via C# .NET.

  1. Définissez le chemin d’accès au répertoire des documents.
  2. Ouvrez un document XPS avec des tickets d’impression à l’aide de la classe XpsDocument.
  3. Créez le ticket d’impression de travail avec le constructeur JobPrintTicket.
  4. Créez le ticket d’impression de document à l’aide de la méthode GetDocumentPrintTicket() .
  5. Obtenez le ticket d’impression de page à l’aide de la méthode GetPagePrintTicket() .
  6. Enregistrez le document avec le ticket d’impression de travail modifié à l’aide de la méthode XPsDocument.Save().

Code C# pour obtenir des billets d'impression dans un fichier 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));

Étapes pour lier les tickets d'impression du fichier XPS via C# .NET.

  1. Définissez le chemin d’accès au répertoire des documents.
  2. Créez un nouveau fichier XPS et ouvrez le document XPS avec des tickets d’impression à l’aide de la classe XpsDocument.
  3. Ouvrir un document XPS avec des tickets d’impression à l’aide de XpsDocument Class
  4. Liez le ticket d’impression de travail au constructeur JobPrintTicket.
  5. Liez le ticket d’impression du document à l’aide des méthodes GetDocumentPrintTicket() et SetDocumentPrintTicket()
  6. Liez le ticket d’impression de page à l’aide des méthodes GetPagePrintTicket() et SetPagePrintTicket() .
  7. Enregistrez le document avec le ticket d’impression de travail modifié à l’aide de la méthode XPsDocument.Save().

Code C# pour lier les tickets d'impression dans un fichier 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");



FAQ

1. Comment puis-je créer un ticket d’impression pour un fichier XPS ?

Pour créer un ticket d’impression (ou des informations d’impression) sur le document avant de l’envoyer à l’imprimante, utilisez le JobPrintTicket Classe.

2. Quelles opérations avec les tickets d’impression sont disponibles dans la solution API Aspose.Page ?

Avec cette solution .NET, vous pouvez créer, modifier, obtenir et lier des informations d’impression.

3. Comment puis-je modifier les informations d’impression du fichier XPS ?

Définissez le chemin et ouvrez un document XPS avec des tickets d’impression. Utilisez les méthodes de la classe PrintTicket.

XPS Qu'est-ce que le format de fichier XPS

Le format XPS est similaire au format PDF. Les deux sont des formats de langage de description de page (PDL). EPS est basé sur HTML et non sur le langage PostScript. Le fichier .eps est capable de contenir un balisage de la structure du document ainsi que des informations sur l'apparence du document. Il existe également des instructions supplémentaires sur la façon d'imprimer et de rendre le document. La caractéristique du format est qu'il fixe la description du document, ce qui signifie qu'il aura le même aspect, peu importe qui et à partir de quel système opérationnel l'ouvre.