PdlPassthroughProvider Class

Definition

Represents a page description language (PDL) pass-through provider.

public ref class PdlPassthroughProvider sealed
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 983040)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
class PdlPassthroughProvider final
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 983040)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
public sealed class PdlPassthroughProvider
Public NotInheritable Class PdlPassthroughProvider
Inheritance
Object Platform::Object IInspectable PdlPassthroughProvider
Attributes

Windows requirements

Device family
Windows 11 Insider Preview (introduced in 10.0.23504.0)
API contract
Windows.Foundation.UniversalApiContract (introduced in v15.0)

Remarks

A page description language (PDL) is a formal way of describing a printed page at a high level (whereas a low-level way of describing a printed page might be a bitmap or raster). One well-known example of a PDL is the PDF format. The default format for Windows printing is XPS. And by default all printing content is converted to XPS before being converted to the particular PDL format that the printer supports. When the PDL is PDF, for example, converting by way of XPS causes some quality loss. And that's because XPS doesn't support the color fidelity that's supported by PDF.

But you can perform high-quality printing by what's called PDL pass-through. For example, you can pass a PDF document from a PDF printing application directly to an Internet Printing Protocol (IPP) printer whose PDL is PDF. And that process bypasses any intermediary and lossy conversion to XPS. The PDL in question needn't necessarily be PDF; you can perform PDL pass-through with any PDL.

The target printers for PDL pass-through are IPP Printers. With IPP Printers, there are no custom drivers; and print support applications (PSAs) can be added in order to provide customization. Also, the Windows print system can identify the PDL formats that are supported by the printer.

You can check whether a printer is an IPP by calling IppPrintDevice.IsIppPrinter; and you can check whether an IPP printer supports PDL pass-through by getting the value of the IppPrintDevice.IsPdlPassthroughSupported property. Then, you can begin a print job by using a PdlPassthroughProvider, and write PDL content via PDL pass-through.

Properties

SupportedPdlContentTypes

Gets a vector of strings containing all PDL formats supported by the printer.

Methods

StartPrintJobWithPrintTicket(String, String, IInputStream, PageConfigurationSettings)

Starts a PDL pass-through print job with a print ticket.

StartPrintJobWithTaskOptions(String, String, PrintTaskOptions, PageConfigurationSettings)

Starts a PDL pass-through print job with Print Task options.

Applies to