印刷チケットの追加と操作

C# を介して XPS ファイルの印刷チケットを作成、編集、リンク、および取得する

 

すべてのページ記述言語形式が印刷をサポートしています。それらの一部 (PDF など) は、さまざまな色空間と解像度に依存しない環境で高品質の印刷をサポートします。 XPS は通常のオフィス プリンターで印刷することを意図していたため、サポートされる色空間は少なく、2 種類のフォントしかサポートされていません。 Aspose.Page API ソリューションは、他のさまざまな機能の中で印刷チケットを扱うことができます。ここでは、それらを作成、編集、取得、およびリンクする方法を説明する情報を見つけることができます。

XPS ファイルの印刷チケットを操作するには、次のものが必要です。

  • Aspose.Page for .NET API は、C# プラットフォーム向けの機能豊富で強力で使いやすいドキュメント操作および変換 API です。

  • NuGet パッケージ マネージャーを開き、Aspose.Page を検索してインストールします。パッケージ マネージャー コンソールから次のコマンドを使用することもできます。

Package Manager Console Command


    PM> Install-Package Aspose.Page

カスタム印刷チケット C# .NET を作成する手順。

  1. ドキュメント ディレクトリへのパスを設定します。
  2. XpsDocument クラス を使用して XPS ファイルを作成します。
  3. JobPrintTicket コンストラクターを使用してカスタム ジョブ印刷チケットを追加します。
  4. カスタム ページ パラメータ初期化子とカスタム ページ解決オプションをチケットに追加します。
  5. XPsDocument.Save() メソッドを使用して、変更された XPS ドキュメントを保存します。

XPS ファイルで印刷チケットを作成する C# コード

    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");

C# .NET 経由で XPS 印刷チケットを編集する手順。

  1. ドキュメント ディレクトリへのパスを設定します。
  2. XpsDocument クラスを使用して、印刷チケットで XPS ドキュメントを開きます。
  3. チケットから不要なパラメーターを削除するには、 Remove() メソッドを使用します。
  4. XPsDocument.Save() メソッドを使用して、ジョブ印刷チケットを変更したドキュメントを保存します。

XPS ファイルで印刷チケットを編集する C# コード

    // 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");

C# .NET 経由で印刷チケットを取得する手順。

  1. ドキュメント ディレクトリへのパスを設定します。
  2. XpsDocument クラスを使用して、印刷チケットで XPS ドキュメントを開きます。
  3. JobPrintTicket コンストラクターでジョブ印刷チケットを作成します。
  4. GetDocumentPrintTicket() メソッドを使用して、ドキュメントの印刷チケットを作成します。
  5. GetPagePrintTicket() メソッドを使用してページ印刷チケットを取得します。
  6. XPsDocument.Save() メソッドを使用して、ジョブ印刷チケットを変更したドキュメントを保存します。

XPS ファイルで印刷チケットを取得する C# コード

    // 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));

C# .NET 経由で XPS ファイルの印刷チケットをリンクする手順。

  1. ドキュメント ディレクトリへのパスを設定します。
  2. 新しい XPS ファイルを作成し、XpsDocument クラス を使用して印刷チケットで XPS ドキュメントを開きます。
  3. XpsDocument Class を使用して、印刷チケットで XPS ドキュメントを開く
  4. ジョブ印刷チケットを JobPrintTicket コンストラクターにリンクします。
  5. GetDocumentPrintTicket() および SetDocumentPrintTicket() メソッドを使用して、ドキュメントの印刷チケットをリンクします。
  6. GetPagePrintTicket() および SetPagePrintTicket() メソッドを使用してページ印刷チケットをリンクします。
  7. XPsDocument.Save() メソッドを使用して、ジョブ印刷チケットを変更したドキュメントを保存します。

XPS ファイルで印刷チケットをリンクする C# コード

    // 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");



よくある質問

1. XPS ファイルの印刷チケットを作成するにはどうすればよいですか?

ドキュメントをプリンターに送信する前に、ドキュメントに対する印刷チケット (または印刷情報) を作成するには、 JobPrintTicket を使用します。 クラス。

2. Aspose.Page API ソリューション内では、印刷チケットを使用したどのような操作が利用できますか?

この .NET ソリューションを使用すると、印刷情報を作成、編集、取得、リンクできます。

3. XPSファイルの印刷情報を編集するにはどうすればよいですか?

パスを設定し、印刷チケットのある XPS ドキュメントを開きます。 PrintTicket クラスのメソッドを使用します。

XPS XPS ファイル形式とは

XPS 形式は PDF 形式に似ています。どちらもページ記述言語 (PDL) 形式です。 EPS は PostScript 言語ではなく、HTML に基づいています。 .eps ファイルには、ドキュメントの構造のマークアップと、ドキュメントがどのように見えるかに関する情報を含めることができます。また、ドキュメントを印刷およびレンダリングする方法についての説明も追加されています。この形式の特徴は、ドキュメントの説明を修正することです。つまり、誰が、どのオペレーティング システムからドキュメントを開いたとしても、同じように表示されます。