ONLINE HELP
 WINDEVWEBDEV AND WINDEV MOBILE

Help / WLanguage / WLanguage functions / Standard functions / Print functions
  • Preview of PDF print
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReports and QueriesUser code (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Browser code
WINDEV Mobile
AndroidAndroid Widget iPhone/iPadIOS WidgetApple WatchMac CatalystUniversal Windows 10 App
Others
Stored procedures
Prints the content:
  • of a PDF file.
  • WINDEVWEBDEV - Server codeAndroidAndroid Widget of a buffer containing a PDF.
  • WINDEVAndroid of a PDF Reader control.
What is the print destination?
  • iPhone/iPad When this function is called, a system window is displayed, allowing the user to select the printer to use, the number of copies, ...
  • AndroidAndroid Widget When this function is called, a system window appears to allow the user to select the printer to use, ...
    Caution: This function must be used in the main thread of the application.
  • WINDEVWEBDEV - Server code The default printer is used. The printer to use can be selected via iConfigure.
Example
IF iPrintPDF("MyFile.PDF") THEN
Info("Printed successfully")
END
iPhone/iPad
// Print the order form
FileName = fDataDir() + [fSep()] + StringBuild("ORF_%1.PDF", OrderNumber)
iDestination(iGenericPDF, FileName)
iPrintReport(RPT_OrderForm, OrderNumber, OrderNumber)
 
// Check the file existence
IF fFileExist(FileName) = False THEN
Error("The PDF file was not generated")
RETURN
END
 
// Confirmation to display the PDF
IF YesNo(Yes, "Display the generated order form (PDF format)?") = Yes THEN
// Display the generated order form
ShellExecute(FileName)
ELSE
iPrintPDF(FileName)
END
WINDEVWEBDEV - Server code
// Print a buffer
MyPDFBuffer is Buffer
MyPDFBuffer = fLoadBuffer("C:\temp\Myfile.pdf")
IF iPrintPDF(MyPDFBuffer) THEN
Info("Printed successfully")
END
Syntax

Printing a PDF file Hide the details

<Result> = iPrintPDF(<Name of PDF file> [, <Password> [, <Sizing> [, <List of pages>]]])
<Result>: Boolean
  • True if printed successfully,
  • False otherwise. To get more details on the error, use ErrorInfo with the errMessage constant.
AndroidAndroid Widget Caution: Printing is asynchronous: When the function is called, the print settings window appears. It is not possible to find out if the printout has been cancelled or if an error occurred during printing.
<Name of PDF file>: Character string
Name and path of PDF file to print. This parameter can correspond to a full path or a path relative to the current directory (returned by fCurrentDir). This parameter is case-sensitive.
Reminder: On iPhone/iPad, an application has the rights to write into its installation directory or into one of its subdirectories.
<Password>: Character string
  • Password for opening the PDF file,
  • Empty string ("") if the file has no password.
AndroidAndroid Widget iPhone/iPad This parameter is not available.
<Sizing>: Integer constant
Print size:
iHomotheticHomothetic enlargement or reduction of the PDF document pages to adapt them to the output format, ignoring physical margins.
This constant corresponds to the option "Fit to paper size" available in PDF printing software.
iHomotheticNoEnlargementHomothetic reduction of the PDF document pages to adapt them to the output format, ignoring physical margins. Pages with a smaller format keep their format and are centered.
This constant corresponds to the option "Shrink to fit paper size" available in PDF printing software.
iHomotheticNoEnlargementPrintableAreaHomothetic reduction of the PDF document pages to adapt them to the output format, taking into account physical margins. Pages with a smaller format keep their format and are centered.
This constant corresponds to the option "Fit to printer margins" available in PDF printing software.
Remark: This constant corresponds to iHomotheticNoEnlargementPrintableZone in previous versions.
iRealSizePrint in real size. The pages that use a format:
  • smaller than the output format are centered in the page.
  • bigger than the output format are truncated and are centered in the page.

AndroidAndroid Widget iPhone/iPad This parameter is not available.
<List of pages>: Character string
List of pages to print. You have the ability to specify the range of pages to print separated by a comma, each range being in 'X-Y' format where X and Y are numbers of pages.
AndroidAndroid Widget iPhone/iPad This parameter is not available.
WINDEVWEBDEV - Server codeReports and QueriesAndroidAndroid Widget User code (UMC)

Printing a buffer corresponding to a PDF file Hide the details

<Result> = iPrintPDF(<Buffer name> [, <Password> [, <Sizing> [, <List of pages>]]])
<Result>: Boolean
  • True if printed successfully,
  • False otherwise.
AndroidAndroid Widget Caution: Printing is asynchronous: When the function is called, the print settings window appears. It is not possible to find out if the printout has been cancelled or if an error occurred during printing.
<Buffer name>: Buffer
Name of Buffer variable corresponding to the PDF file to print.
<Password>: Character string
  • Password for opening the PDF file,
  • Empty string ("") if the file has no password.
<Sizing>: Integer constant
Print size:
iHomotheticHomothetic enlargement or reduction of the PDF document pages to adapt them to the output format, ignoring physical margins.
This constant corresponds to the option "Fit to paper size" available in PDF printing software.
iHomotheticNoEnlargementHomothetic reduction of the PDF document pages to adapt them to the output format, ignoring physical margins. Pages with a smaller format keep their format and are centered.
This constant corresponds to the option "Shrink to fit paper size" available in PDF printing software.
iHomotheticNoEnlargementPrintableAreaHomothetic reduction of the PDF document pages to adapt them to the output format, taking into account physical margins. Pages with a smaller format keep their format and are centered.
This constant corresponds to the option "Fit to printer margins" available in PDF printing software.
Remark: This constant corresponds to iHomotheticNoEnlargementPrintableZone in previous versions.
iRealSizePrint in real size. The pages that use a format:
  • smaller than the output format are centered in the page.
  • bigger than the output format are truncated and are centered in the page.

AndroidAndroid Widget This parameter is not available.
<List of pages>: Character string
List of pages to print. You have the ability to specify the range of pages to print separated by a comma, each range being in 'X-Y' format where X and Y are numbers of pages.
WINDEVReports and QueriesAndroidUser code (UMC)

Printing the content of a PDF Reader control Hide the details

<Result> = iPrintPDF(<PDF Reader control> [, <Sizing> [, <List of pages>]])
<Result>: Boolean
  • True if printed successfully,
  • False otherwise.
Android Caution: Printing is asynchronous: When the function is called, the print settings window appears. It is not possible to find out if the printout has been cancelled or if an error occurred during printing.
<PDF Reader control>: Character string
Name of PDF Reader control displaying the PDF file to print
<Sizing>: Integer constant
Print size:
iHomotheticHomothetic enlargement or reduction of the PDF document pages to adapt them to the output format, ignoring physical margins.
This constant corresponds to the option "Fit to paper size" available in PDF printing software.
iHomotheticNoEnlargementHomothetic reduction of the PDF document pages to adapt them to the output format, ignoring physical margins. Pages with a smaller format keep their format and are centered.
This constant corresponds to the option "Shrink to fit paper size" available in PDF printing software.
iHomotheticNoEnlargementPrintableAreaHomothetic reduction of the PDF document pages to adapt them to the output format, taking into account physical margins. Pages with a smaller format keep their format and are centered.
This constant corresponds to the option "Fit to printer margins" available in PDF printing software.
Remark: This constant corresponds to iHomotheticNoEnlargementPrintableZone in previous versions.
iRealSizePrint in real size. The pages that use a format:
  • smaller than the output format are centered in the page.
  • bigger than the output format are truncated and are centered in the page.

Android This parameter is not available.
<List of pages>: Character string
List of pages to print. You have the ability to specify the range of pages to print separated by a comma, each range being in 'X-Y' format where X and Y are numbers of pages.
Remarks
WINDEV

Preview of PDF print

The PDF file to print can be displayed in the report viewer. Simply use iDestination with the iViewer constant) before iPrintPDF.
For example:
// Print the PDF in the report viewer
iDestination(iViewer)
iPrintPDF("c:\tmp\Convention.pdf")
Business / UI classification: Neutral code
Component: wd300etatexe.dll
Minimum version required
  • Version 18
This page is also available for…
Comments
Click [Add] to post a comment

Last update: 06/21/2023

Send a report | Local help