Custom printing options
Foxit Quick PDF Library can print PDF files to installed physical printers (e.g. Lexmark S300 Series) or virtual printers (e.g. Microsoft XPS Document Writer). If you do not need granular control over the printer settings then you can use the PrintDocument and PrintOptions functions. However, if you need to control exactly what is happening when the document is printed then you can use the NewCustomPrinter and SetupCustomPrinter functions.
Here are examples written in C# and Delphi source code which demonstrate how to use the custom printer functions to customize the printing options:
C# Sample Code
/* Create a custom printer and specify your own settings */
// Load a sample file from the input folder
DPL.LoadFromFile("test.pdf", "");
// Create the custom printer
string CustomPrinter = DPL.NewCustomPrinter("Microsoft XPS Document Writer");
// Setup the settings for the customer printer
// Medium quality
DPL.SetupCustomPrinter(CustomPrinter, 5, 2);
// Monochrome
DPL.SetupCustomPrinter(CustomPrinter, 6, 1);
// Horizontal Duplex
DPL.SetupCustomPrinter(CustomPrinter, 7, 3);
// Configure print options
int iPrintOptions = DPL.PrintOptions(0, 0, "Printing Sample");
// Print the current document to the default printing
// using the options as configured above
DPL.PrintDocument(CustomPrinter, 1, 1, iPrintOptions);
Delphi Sample Code
procedure TForm6.PrintDocumentClick(Sender: TObject);
var
iPrintOptions: Integer;
CustomPrinter: AnsiString;
begin
DPL := TDebenuPDFLibrary1115.Create;
try
UnlockResult := DPL.UnlockKey('ji9zq4d57r78at8nk5d76gt9y'); // Add trial license key here
if UnlockResult = 1 then
begin
// Load a sample file from the input folder
DPL.LoadFromFile('test.pdf', '');
// Create the custom printer
CustomPrinter := DPL.NewCustomPrinter(DPL.GetDefaultPrinterName());
// Setup the settings for the customer printer
// Medium quality
DPL.SetupCustomPrinter(CustomPrinter, 5, 2);
// Monochrome
DPL.SetupCustomPrinter(CustomPrinter, 6, 1);
// Horizontal Duplex
DPL.SetupCustomPrinter(CustomPrinter, 7, 3);
// Configure print options
iPrintOptions := DPL.PrintOptions(0, 0, 'Printing Sample');
// Print the current document to the default printing
// using the options as configured above
DPL.PrintDocument(CustomPrinter, 1, 1, iPrintOptions);
end;
finally
DPL.Free;
end;
end;
This article refers to a deprecated product. If you are looking for support for Foxit PDF SDK, please click here.
Updated on May 16, 2022