ONLINE HELP
 WINDEVWEBDEV AND WINDEV MOBILE

Help / WLanguage / WLanguage functions / Standard functions / Print functions
  • Modifying the print parameters via constants
  • Reinitializing the print module
  • Number of copies
  • Parameters defined by default
  • Custom paper format
  • Miscellaneous
  • Printing in Java and Android
  • iConfigure and iParameter
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
Retrieves the configuration of the printer and configures the print. To configure the print:
  • open the window for print configuration: quality, number of copies, ...
    If the information is validated by the user, the changes are performed for the current application only.
    WEBDEV - Server code This option is not available. Indeed, no window can be displayed on the server.
  • configure the print characteristics (quality, number of copies, ...) without opening the configuration window.
    By default, the setting is valid until the next call to iParameter or to iReset (in this last case, the default Windows settings will be used during the next print).
    To save the parameters modified by iParameter so that they become the default parameters of Windows, use iParameter associated with the iPrinterDefault constant.
Calling iConfigure after iParameter reinitializes the print module: the settings made are reset.
WINDEVWEBDEV - Server codeReports and QueriesUser code (UMC)Ajax
// Print in portrait mode
iParameter(iOrientation, iOrientation_Portrait)
// Modify the page height
iParameter(iPaperHeight, 2000)
// Modify the number of copies
iParameter(iCopies, 2)
// Modifies the collate mode
iParameter(iCollate, True)
WINDEVWEBDEV - Server codeReports and QueriesAndroidAndroid Widget JavaUser code (UMC)Ajax
// The user configures the printer
iParameter()
// Display the printer parameters
Trace("------------------------------------------------------------------")
Trace("Orientation = " + iParameter(iOrientation))
Trace("PaperSize = " + iParameter(iPaperSize))
Trace("PageHeight = " + iParameter(iPaperHeight))
Trace("PageWidth = " + iParameter(iPaperWidth))
Trace("NbCopies = " + iParameter(iCopies))
Trace("PaperSource = " + iParameter(iPaperSource))
Trace("YResolution = " + iParameter(iYResolution))
Trace("Color = " + iParameter(iColor))
Trace("Collate = " + iParameter(iCollate))
SpecialParameters is Buffer = iParameter(iExtraParameters)
Trace("Special size = " + Length(SpecialParameters))
Trace("Special = " + SpecialParameters)
Trace("------------------------------------------------------------------")
Syntax
WINDEVReports and QueriesUser code (UMC)

Opening the standard window for configuring the print Hide the details

<Result> = iParameter()
<Result>: Boolean
  • True if the information typed in the configuration window was validated by the user,
  • False if the user has not validated the information entered in the validation window.

Retrieving the print parameters Hide the details

<Result> = iParameter(<Parameter to retrieve>)
<Result>: Type of parameter to retrieve (constant, integer, boolean, character string)
Value of the desired parameter for the current printer.
<Parameter to retrieve>: Constant
Specifies the parameter to retrieve from the current printer configuration. The result will depend on the parameter retrieved.
iCollateDefines how the pages are collated. If this parameter is used, <Result> is a boolean that can hold one of the following values:
  • True if the pages are collated (print the pages 1, 2, 3 ... of the first set, then the pages 1, 2, 3, ... of the second set, ...).
  • False if the pages are not collated (print all the copies of page 1, then all the copies of page 2, ...). Caution: This option consumes a lot of memory.
LinuxUniversal Windows 10 AppiPhone/iPad This parameter is ignored.
iColorUsed to find out the management mode of colors. If this parameter is used, <Result> can take one of the following constants as value:
iColor_ColorPrint in color
iColor_MonoPrint in grayscale
LinuxUniversal Windows 10 AppiPhone/iPad This parameter is ignored.
iCopiesAllows you to find out the number of copies by default. In this case, <Result> is an integer. If this parameter is used, <Result> corresponds to a buffer.
LinuxUniversal Windows 10 AppiPhone/iPad This parameter is ignored.
iDuplexUsed to find out the parameters for duplex printing. If this parameter is used, <Result> can take one of the following constants as value:
iDuplex_HorizontalPrint in horizontal duplex mode
iDuplex_SimplePrint on a single side
iDuplex_VerticalPrint in vertical duplex mode
LinuxUniversal Windows 10 AppiPhone/iPad This parameter is ignored.
iExtraParametersUsed to find out the parameters specific to the printer (if the printer is also a scanner for example).
LinuxUniversal Windows 10 AppAndroidAndroid Widget iPhone/iPadJava This parameter is ignored.
iFormatCustomPaperAllows you to find out the size of custom paper used. The size is specified by the height and width. In this case, <Result> corresponds to a string.
LinuxUniversal Windows 10 AppAndroidAndroid Widget iPhone/iPadJava This parameter is ignored.
iMediaTypeAllows you to know the type of media used for the printout. If this parameter is used, <Result> can take one of the following constants as value:
iMediaType_GlossyPaperPrint on glossy paper.
iMediaType_PlainPaperPrint on plain paper.
iMediaType_TransparentFilmPrint on transparent film.
LinuxUniversal Windows 10 AppAndroidAndroid Widget iPhone/iPadJava This parameter is ignored.
iOrientationAllows you to find out the paper orientation. If this parameter is used, <Result> can take one of the following constants as value:
iOrientation_LandscapePrint in landscape mode
iOrientation_PortraitPrint in portrait mode
iPaperHeightAllows you to find out the height of paper used (in tenth of millimeter). In this case, <Result> is an integer.
LinuxUniversal Windows 10 AppiPhone/iPad This parameter is ignored.
iPaperSizeAllows you to find out the paper format used. If this parameter is used, <Result> can take one of the following constants as value:
iPaperSize_10x1410 x 14 inch paper
AndroidAndroid Widget Java Not available.
iPaperSize_11x1711 x 17 inch paper
AndroidAndroid Widget Java Not available.
iPaperSize_A3A3 paper (297 x 420 mm)
iPaperSize_A4A4 paper (210 x 297 mm)
iPaperSize_A4SmallSmall A4 paper (210 x 297 mm)
AndroidAndroid Widget Java Not available.
iPaperSize_A5A5 paper (148 x 210 mm)
iPaperSize_B4B4 paper (250 x 354 mm)
iPaperSize_B5B5 paper (182 x 257 mm)
iPaperSize_CSheetSize C sheet
AndroidAndroid Widget Java Not available.
iPaperSize_DSheetSize D sheet
AndroidAndroid Widget Java Not available.
iPaperSize_Envelope9Envelope #9 (3.875 x 8.875 inches)
iPaperSize_Envelope10Envelope #10 (4.125 x 9.5 inches)
iPaperSize_Envelope11Envelope #11 (4.5 x 10.375 inches)
iPaperSize_Envelope12Envelope #12 (4.5 x 4.5 x 11 inches)
iPaperSize_Envelope14Envelope #14 (5 x 11.5 inches)
iPaperSize_EnvelopeB4B4 envelope (250 x 353 mm)
iPaperSize_EnvelopeB5B5 envelope (176 x 250 mm)
iPaperSize_EnvelopeB6B6 envelope (176 x 125 mm)
iPaperSize_EnvelopeC3C3 envelope (324 x 458 mm)
AndroidAndroid Widget Java Not available.
iPaperSize_EnvelopeC4C4 envelope (229 x 324 mm)
AndroidAndroid Widget Java Not available.
iPaperSize_EnvelopeC5C5 envelope (162 x 229 mm)
AndroidAndroid Widget Java Not available.
iPaperSize_EnvelopeC6C6 envelope (114 x 162 mm)
AndroidAndroid Widget Java Not available.
iPaperSize_EnvelopeC65C65 envelope (114 x 229 mm)
AndroidAndroid Widget Java Not available.
iPaperSize_EnvelopeDLDL envelope (110 x 220 mm)
AndroidAndroid Widget Java Not available.
iPaperSize_EnvelopeItalyEnvelope 110 x 230 mm
iPaperSize_EnvelopeMonarchEnvelope 3.875 x 7.5 inches
iPaperSize_EnvelopePersoEnvelope 3.625 x 6.5 inches
iPaperSize_ESheetSize E sheet
AndroidAndroid Widget Java Not available.
iPaperSize_ExecutiveExecutive paper (7.5 x 10.5 inches)
iPaperSize_FanfoldUSFanfold paper (14.875 x 11 inches)
AndroidAndroid Widget Java Not available.
iPaperSize_FolioFolio paper (8.5 x 13 inches)
iPaperSize_GermanLGLFanfold paper (8.5 x 13 inches)
AndroidAndroid Widget Java Not available.
iPaperSize_GermanSTDFanfold paper (8.5 x 12 inches)
AndroidAndroid Widget Java Not available.
iPaperSize_LedgerLedger paper (17 x 11 inches)
AndroidAndroid Widget Java Not available.
iPaperSize_LegalLegal paper (8.5 x 14 inches)
iPaperSize_LetterLetter paper (8.5 x 11 inches)
iPaperSize_LetterSmallSmall letter paper (8.5 x 11 inches)
AndroidAndroid Widget Java Not available.
iPaperSize_NoteNote paper (8.5 x 11 inches)
iPaperSize_QuartoQuarto paper (215 x 275 mm)
iPaperSize_StatementStatement paper (5.5 x 8.5 inches)
iPaperSize_TabloidTabloid paper (11 x 17 inches)
iPaperSourceDefines the paper source for the printer. If this parameter is used, <Result> can take one of the following constants as value:
iPaperSource_AutoAutomatic sheet feed
iPaperSource_CassetteTray paper feed
AndroidAndroid Widget Java Not available.
iPaperSource_EnvelopeEnvelope feed
iPaperSource_EnvelopeManualManual envelope feed
AndroidAndroid Widget Java Not available.
iPaperSource_LargeCapacityLarge capacity paper feed
iPaperSource_LargeFormatLarge format paper feed
AndroidAndroid Widget Java Not available.
iPaperSource_LowerLower tray paper feed
iPaperSource_ManualManual feed
iPaperSource_MiddleMiddle tray paper feed
iPaperSource_OnlyOneOnly one feed
AndroidAndroid Widget Java Not available.
iPaperSource_SmallFormatSmall format paper feed
AndroidAndroid Widget Java Not available.
iPaperSource_TractorTractor paper feed
AndroidAndroid Widget Java Not available.
iPaperSource_UpperUpper tray paper feed
LinuxUniversal Windows 10 AppiPhone/iPad This parameter is ignored.
iPaperWidthAllows you to find out the width of paper used (in tenth of millimeter). In this case, <Result> is an integer.

LinuxUniversal Windows 10 AppiPhone/iPad This parameter is ignored.
iQualityUsed to find out the parameters for print quality. If this parameter is used, <Result> can take one of the following constants as value:
iQuality_DraftPrint in draft mode
iQuality_HighPrint in high quality
iQuality_LowPrint in low quality
iQuality_MediumPrint in medium quality

The quality of the print can also correspond to the print resolution (300, 600, 1200 or 1600 depending on the printer).
LinuxUniversal Windows 10 AppiPhone/iPad This parameter is ignored.
iRTFWithImagesAndTablesAllows you to find out whether the print uses the optimized mode for managing the images and tables in the RTF controls found in the reports. If this parameter is used, <Result> is a boolean:
  • True if the print uses the optimized mode for managing the images and tables in the RTF controls found in the reports.
  • False otherwise.
Universal Windows 10 AppiPhone/iPad This parameter is ignored.
iScaleAllows you to find out the scale used during the print. In this case, <Result> corresponds to an integer.
LinuxUniversal Windows 10 AppAndroidAndroid Widget iPhone/iPadJava This parameter is ignored.
iTrueTypeUsed to find out the parameters for printing the True Type fonts. If this parameter is used, <Result> can take one of the following constants as value:
iTrueType_BitmapTrue Type font printed in bitmap
iTrueType_DownloadDownloaded TrueType font
iTrueType_SubdevTrueType font of device
LinuxUniversal Windows 10 AppAndroidAndroid Widget iPhone/iPadJava This parameter is ignored.
iYResolutionUsed to find out the vertical resolution (in dots per inch). If this parameter is used, <Result> is an integer.
LinuxUniversal Windows 10 AppiPhone/iPad This parameter is ignored.

Modifying the print parameters Hide the details

<Result> = iParameter(<Parameter to modify> , <Parameter value>)
<Result>: Boolean
  • True if the modification was performed,
  • False if a problem occurred (parameter not recognized).
<Parameter to modify>: Constant
Specifies the parameter to retrieve from the current printer configuration. The result will depend on the parameter retrieved.
iCollateUsed to modify how the pages are collated. If this parameter is used, <Parameter value> is a boolean that can take for value:
  • True if the pages are collated (print the pages 1, 2, 3 ... of the first set, then the pages 1, 2, 3, ... of the second set, ...).
  • False if the pages are not collated (print all the copies of page 1, then all the copies of page 2, ...). Caution: This option consumes a lot of memory.
LinuxUniversal Windows 10 AppiPhone/iPad This parameter is ignored.
iColorUsed to modify the management mode of colors. If this parameter is used, <Parameter value> can hold one of the following constants:
iColor_ColorPrint in color
iColor_MonoPrint in grayscale
LinuxUniversal Windows 10 AppiPhone/iPad This parameter is ignored.
iCopiesUsed to modify the number of copies by default. In this case, <Parameter value> is an integer.
LinuxUniversal Windows 10 AppiPhone/iPad This parameter is ignored.
iDrawTextMultiplatformUsed to change the print algorithm used for printing PDF files. If this parameter is used, <Parameter value> is a boolean that can take for value:
  • True to use the default PDF print algorithm used in Android. In this case, the limitations are as follows:
    • Reports cannot contain edit controls.
    • It is not possible to manage the orientation of captions.
  • False to use the standard PDF print algorithm.
iDuplexUsed to modify the parameters for printing in duplex mode. If this parameter is used, <Parameter value> can hold one of the following constants:
iDuplex_HorizontalPrint in horizontal duplex mode
iDuplex_SimplePrint on a single side
iDuplex_VerticalPrint in vertical duplex mode
LinuxUniversal Windows 10 AppiPhone/iPad This parameter is ignored.
iExtraParametersUsed to modify the parameters specific to a printer (if the printer is also a scanner for example). If this parameter is used, <Parameter value> must be a buffer.
LinuxUniversal Windows 10 AppAndroidAndroid Widget iPhone/iPadJava This parameter is ignored.
iFormatCustomPaperAllows you to modify the size of custom paper used. The size is specified by the height and width. In this case, <Parameter value> corresponds to a string.
LinuxUniversal Windows 10 AppAndroidAndroid Widget iPhone/iPadJava This parameter is ignored.
iMediaTypeAllows you to change the type of media used for the printout. If this parameter is used, <Result> can take one of the following constants as value:
iMediaType_TransparentFilmPrint on glossy paper.
iMediaType_GlossyPaperPrint on glossy paper.
iMediaType_PlainPaperPrint on plain paper
LinuxUniversal Windows 10 AppAndroidAndroid Widget iPhone/iPadJava This parameter is ignored.
iOrientationUsed to modify the paper orientation. If this parameter is used, <Parameter value> can hold one of the following constants:
iOrientation_LandscapePrint in landscape mode
iOrientation_PortraitPrint in portrait mode
This parameter is ignored when printing in PCL format.
iPaperHeightAllows you to modify the height of paper used (in tenth of millimeter). In this case, <Parameter value> is an integer.
LinuxUniversal Windows 10 AppAndroidAndroid Widget iPhone/iPadJava This parameter is ignored.
iPaperSizeAllows you to modify the size of paper used. If this parameter is used, <Parameter value> can hold one of the following constants:
iPaperSize_10x1410 x 14 inch paper
AndroidAndroid Widget Java Not available.
iPaperSize_11x1711 x 17 inch paper
AndroidAndroid Widget Java Not available.
iPaperSize_A3A3 paper (297 x 420 mm)
iPaperSize_A4A4 paper (210 x 297 mm)
iPaperSize_A4SmallSmall A4 paper (210 x 297 mm)
AndroidAndroid Widget Java Not available.
iPaperSize_A5A5 (148 x 20 mm)
iPaperSize_B4B4 paper (250 x 354 mm)
iPaperSize_B5B5 paper (182 x 257 mm)
iPaperSize_CSheetSize C sheet
AndroidAndroid Widget Java Not available.
iPaperSize_DSheetSize D sheet
AndroidAndroid Widget Java Not available.
iPaperSize_Envelope9Envelope #9 (3.875 x 8.875 inches)
iPaperSize_Envelope10Envelope #10 (4.125 x 9.5 inches)
iPaperSize_Envelope11Envelope #11 (4.5 x 10.375 inches)
iPaperSize_Envelope12Envelope #12 (4.5 x 4.5 x 11 inches)
iPaperSize_Envelope14Envelope #14 (5 x 11.5 inches)
iPaperSize_EnvelopeB4B4 envelope (250 x 353 mm)
iPaperSize_EnvelopeB5B5 envelope (176 x 250 mm)
iPaperSize_EnvelopeB6B6 envelope (176 x 125 mm)
iPaperSize_EnvelopeC3C3 envelope (324 x 458 mm)
AndroidAndroid Widget Java Not available.
iPaperSize_EnvelopeC4C4 envelope (229 x 324 mm)
AndroidAndroid Widget Java Not available.
iPaperSize_EnvelopeC5C5 envelope (162 x 229 mm)
AndroidAndroid Widget Java Not available.
iPaperSize_EnvelopeC6C6 envelope (114 x 162 mm)
AndroidAndroid Widget Java Not available.
iPaperSize_EnvelopeC65C65 envelope (114 x 229 mm)
AndroidAndroid Widget Java Not available.
iPaperSize_EnvelopeDLDL envelope (110 x 220 mm)
AndroidAndroid Widget Java Not available.
iPaperSize_EnvelopeItalyEnvelope 110 x 230 mm
iPaperSize_EnvelopeMonarchEnvelope 3.875 x 7.5 inches
iPaperSize_EnvelopePersoEnvelope 3.625 x 6.5 inches
iPaperSize_ESheetSize E sheet
AndroidAndroid Widget Java Not available.
iPaperSize_ExecutiveExecutive paper (7.5 x 10.5 inches)
iPaperSize_FanfoldUSFanfold paper (14.875 x 11 inches)
AndroidAndroid Widget Java Not available.
iPaperSize_FolioFolio paper (8.5 x 13 inches)
iPaperSize_GermanLGLFanfold paper (8.5 x 13 inches)
AndroidAndroid Widget Java Not available.
iPaperSize_GermanSTDFanfold paper (8.5 x 12 inches)
AndroidAndroid Widget Java Not available.
iPaperSize_LedgerLedger paper (17 x 11 inches)
AndroidAndroid Widget Java Not available.
iPaperSize_LegalLegal paper (8.5 x 14 inches)
iPaperSize_LetterLetter paper (8.5 x 11 inches)
iPaperSize_LetterSmallSmall letter paper (8.5 x 11 inches)
AndroidAndroid Widget Java Not available.
iPaperSize_NoteNote paper (8.5 x 11 inches)
iPaperSize_QuartoQuarto paper (215 x 275 mm)
iPaperSize_StatementStatement paper (5.5 x 8.5 inches)
iPaperSize_TabloidTabloid paper (11 x 17 inches)
iPaperSourceUsed to modify the paper source of the printer. If this parameter is used, <Parameter value> can hold one of the following constants:
iPaperSource_AutoAutomatic sheet feed
iPaperSource_CassetteTray paper feed
AndroidAndroid Widget Java Not available.
iPaperSource_EnvelopeEnvelope feed
iPaperSource_EnvelopeManualManual envelope feed
AndroidAndroid Widget Java Not available.
iPaperSource_LargeCapacityLarge capacity paper feed
iPaperSource_LargeFormatLarge format paper feed
AndroidAndroid Widget Java Not available.
iPaperSource_LowerLower tray paper feed
iPaperSource_ManualManual feed
iPaperSource_MiddleMiddle tray paper feed
iPaperSource_OnlyOneOnly one feed
AndroidAndroid Widget Java Not available.
iPaperSource_SmallFormatSmall format paper feed
AndroidAndroid Widget Java Not available.
iPaperSource_TractorTractor paper feed
AndroidAndroid Widget Java Not available.
iPaperSource_UpperUpper tray paper feed
LinuxUniversal Windows 10 AppiPhone/iPad This parameter is ignored.
iPaperWidthAllows you to modify the width of paper used (in tenth of millimeter). In this case, <Parameter value> is an integer.
LinuxUniversal Windows 10 AppAndroidAndroid Widget iPhone/iPadJava This parameter is ignored.
iPrinterDefaultChanges the default printer settings. In this case, <Parameter value> is a boolean:
  • True to change the default printer settings.
  • False to keep the default printer settings.
LinuxUniversal Windows 10 AppiPhone/iPad This parameter is ignored.
iPrinterTypeAllows you to modify the printer used. If this parameter is used, <Parameter value> corresponds to one of the printer types recognized by WINDEV Mobile. For more details, see Types of printers recognized by WINDEV Mobile.
WINDEVWEBDEV - Server codeUniversal Windows 10 AppiPhone/iPad This parameter is ignored. It is used in WINDEV Mobile only.
iQualityUsed to modify the parameters for print quality. If this parameter is used, <Parameter value> can hold one of the following constants:
iQuality_DraftPrint in draft mode
iQuality_HighPrint in high quality
iQuality_LowPrint in low quality
iQuality_MediumPrint in medium quality
LinuxUniversal Windows 10 AppiPhone/iPad This parameter is ignored.
iRTFWithImagesAndTablesUsed to modify the management mode of images and tables in the RTF controls found in the reports. If this parameter is used, <Parameter value> is a boolean:
  • True to use the optimized mode for managing the images and tables in the RTF controls found in the reports.
  • False otherwise.
Universal Windows 10 AppAndroidAndroid Widget iPhone/iPadJava This parameter is ignored.
iScaleAllows you to modify the percentage of scale used during the print. In this case, <Parameter value> corresponds to an integer.
LinuxUniversal Windows 10 AppAndroidAndroid Widget iPhone/iPadJava This parameter is ignored.
iTrueTypeUsed to modify the parameters for printing TrueType fonts. If this parameter is used, <Parameter value> can hold one of the following constants:
iTrueType_BitmapTrueType font printed in bitmap
iTrueType_DownloadDownloaded TrueType font
iTrueType_SubdevTrueType font of device.
LinuxUniversal Windows 10 AppAndroidAndroid Widget iPhone/iPadJava This parameter is ignored.
iYResolutionUsed to modify the vertical resolution (in dots per inch). If this parameter is used, <Parameter value> is an integer.
LinuxUniversal Windows 10 AppiPhone/iPad This parameter is ignored.
<Parameter value>: Type of the parameter to modify (constant, integer, boolean, character string)
Value of parameter to modify. This value depends on the parameter to modify.
WINDEVWEBDEV - Server codeReports and QueriesUser code (UMC)Ajax

Modifying the print settings (former syntax kept for backward compatibility) Hide the details

<Result> = iParameter(<Parameter>)
<Result>: Boolean
  • True if the new parameters have been applied,
  • False otherwise.
<Parameter>: Character string
Used to define the new parameter. The following format is used: <Parameter> = <Value>. For example, "DEFAULT=YES". The table below presents the different options that can be configured.
ANIMATIONCLICKABLECONTROL=NOUsed to disable the star that appears on the clickable controls of a report.
ArialSubstitution=NoWhen printing in PDF format, the size of generated PDF file is optimized by replacing the "Arial" font by the Helvetica font. If the Helvetica font is not installed on the computer or if you do not want this substitution to be performed, all you have to do is use iParameter("ArialSubstitution=No").
COLLATE = <Yes/No>If "COLLATE = YES", when printing multiple copies, the pages will be collated (print the pages 1, 2, 3 ... of the first set, then the pages 1, 2, 3, ... of the second set, ...)
If "COLLATE = NO", when printing multiple copies, the pages will not be collated (print all copies of page 1, then print all copies of page 2, ...). Caution: This option consumes a lot of memory.
Linux Not available.
COLOR = COLORColor
Linux Not available.
COLOR = MONOMonochrome
Linux Not available.
COPIES = <Value>Integer indicating the number of copies
Linux Not available.
DEFAULT = <YesNo>If "DEFAULT = YES", the parameters are saved and they become the default parameters
If "DEFAULT = NO", the parameters are not saved
Linux Not available.
DUPLEX = HORIZONTALHorizontal duplex
Linux Not available.
DUPLEX = SIMPLEXPrint on a single side
Linux Not available.
DUPLEX = VERTICALVertical duplex
Linux Not available.
FREEZEThe printer selected by iConfigure will not be modified until the next call to iConfigure or iReset, or until the end of program execution
Linux Not available.
MEDIATYPE = GLOSSYPAPERPrint on a glossy paper.
Linux Not available.
MEDIATYPE = PLAINPAPERPrint on a plain paper.
Linux Not available.
MEDIATYPE = TRANSPARENTFILMPrint on a transparent film.
Linux Not available.
MODE55=<YES/NO>Used to restore the operating mode of WINDEV 5.5: The line break is performed according to the size of the largest font used in the current line (by default, the line break is performed according to the size of last font used in the current line).
Linux Not available.
ORIENTATION = LANDSCAPEPrint in landscape mode. This parameter is ignored when printing in PCL format.
ORIENTATION = PORTRAITPrint in portrait mode
OVERALLPERSISTENCE=YESUsed to keep the behavior of version 15:
  • Until version 15, the zoom value and the position of the report viewer (preview) were saved and restored by application.
  • From version 16, the zoom value and the position of the report viewer (preview) are saved by report.
PAGEHEIGHT = <Value>Height of page in 10th of millimeter
Linux Not available.
PAGEWIDTH = <Value>Width of page in 10th of millimeter
Linux Not available.
PAPERSIZE = 10X1410 x 14 inch paper
PAPERSIZE = 11X1711 x 17 inch paper
PAPERSIZE = A3A3 paper (297 x 420 mm)
PAPERSIZE = A4A4 paper (210 x 297 mm)
PAPERSIZE = A5A5 (148 x 20 mm)
PAPERSIZE = B4B4 paper (250 x 354 mm)
PAPERSIZE = B5B5 paper (182 x 257 mm)
PAPERSIZE = CSIZESize C sheet
PAPERSIZE = DSIZESize D sheet
PAPERSIZE = ENVELOPE9Envelope #9 (3.875 x 8.875 inches)
PAPERSIZE = ENVELOPE10Envelope #10 (4.125 x 9.5 inches)
PAPERSIZE = ENVELOPE11Envelope #11 (4.5 x 10.375 inches)
PAPERSIZE = ENVELOPE12Envelope #12 (4.5 x 4.5 x 11 inches)
PAPERSIZE = ENVELOPE14Envelope #14 (5 x 11.5 inches)
PAPERSIZE = ENVELOPEB4B4 envelope (250 x 353 mm)
PAPERSIZE = ENVELOPEB5B5 envelope (176 x 250 mm)
PAPERSIZE = ENVELOPEB6B6 envelope (176 x 125 mm)
PAPERSIZE = ENVELOPEC3C3 envelope (324 x 458 mm)
PAPERSIZE = ENVELOPEC4C4 envelope (229 x 324 mm)
PAPERSIZE = ENVELOPEC5C5 envelope (162 x 229 mm)
PAPERSIZE = ENVELOPEC6C6 envelope (114 x 162 mm)
PAPERSIZE = ENVELOPEC65C65 envelope (114 x 229 mm)
PAPERSIZE = ENVELOPEDLDL envelope (110 x 220 mm)
PAPERSIZE = ENVELOPEITALYEnvelope 110 x 230 mm
PAPERSIZE = ENVELOPEMONARCHEnvelope 3.875 x 7.5 inches
PAPERSIZE = ENVELOPEPERSOEnvelope 3.625 x 6.5 inches
PAPERSIZE = ESIZESize E sheet
PAPERSIZE = EXECUTIVEExecutive paper (7.5 x 10.5 inches)
PAPERSIZE = FANFOLDGERMANLGLFanfold paper (8.5 x 13 inches)
PAPERSIZE = FANFOLDGERMANSTDFanfold paper (8.5 x 12 inches)
PAPERSIZE = FANFOLDUSFanfold paper (14.875 x 11 inches)
PAPERSIZE = FOLIOFolio paper (8.5 x 13 inches)
PAPERSIZE = LEDGERLedger paper (17 x 11 inches)
PAPERSIZE = LEGALLegal paper (8.5 x 14 inches)
PAPERSIZE = NOTENote paper (8.5 x 11 inches)
PAPERSIZE = QUARTOQuarto paper (215 x 275 mm)
PAPERSIZE = SMALLA4Small A4 paper (210 x 297 mm)
PAPERSIZE = STATEMENTStatement paper (5.5 x 8.5 inches)
PAPERSIZE = USERDEFINEDSize expressed in height and width
PAPERSIZE=LETTERLetter paper (8.5 x 11 inches)
PAPERSIZE=SMALLLETTERSmall letter paper (8.5 x 11 inches)
PAPERSIZE=TABLOIDTabloid paper (11 x 17 inches)
PAPERSOURCE = AUTOAutomatic sheet feed
Linux Not available.
PAPERSOURCE = CASSETTETray paper feed
Linux Not available.
PAPERSOURCE = ENVELOPEEnvelope feed
Linux Not available.
PAPERSOURCE = ENVELOPEMANUALManual envelope feed
Linux Not available.
PAPERSOURCE = LARGECAPACITYLarge capacity paper feed
Linux Not available.
PAPERSOURCE = LARGEFORMATLarge format paper feed
Linux Not available.
PAPERSOURCE = LOWERLower tray paper feed
Linux Not available.
PAPERSOURCE = MANUALManual feed
Linux Not available.
PAPERSOURCE = MIDDLEMiddle tray paper feed
Linux Not available.
PAPERSOURCE = ONLYONEOnly one feed
Linux Not available.
PAPERSOURCE = SMALLFORMATSmall format paper feed
Linux Not available.
PAPERSOURCE = TRACTORTractor paper feed
Linux Not available.
PAPERSOURCE = UPPERUpper tray paper feed
Linux Not available.
QUALITY = DRAFTDraft quality
Linux Not available.
QUALITY = HIGHHigh quality
Linux Not available.
QUALITY = LOWLow quality
Linux Not available.
QUALITY = MEDIUMMedium quality
Linux Not available.
RESOLUTIONY = <Value>Vertical resolution (in dots per inch)
Linux Not available.
RTFJustification=YesAllows you to keep the justification when printing an RTF area with iPrintAreaRTF.
RTFWINDOWS=NOUsed to properly manage the tables and images in the RTF controls found in the reports.
  • If RTFWINDOWS=YES: the tables and the images found in the RTF controls of reports are printed by Windows. In most cases, this print is not correct.
  • If RTFWINDOWS=NO: the tables and the images found in the RTF controls of reports are not printed by Windows but by the print module of WINDEV or WEBDEV. This print is optimized.
Remark: We recommend that you use the following syntax:
iParameter(iRTFWithImagesAndTables, True)
SCALE = <Value>Percentage of the scale
Linux Not available.
SPOOLER = OPTIMIZEOptimizes the speed of print. In this case, the preview has a lower quality and the display may change when the zoom factor is modified.
Linux Not available.
TRUETYPE = BITMAPTrue Type font in bitmap
Linux Not available.
TRUETYPE = DOWNLOADDownloaded TrueType font
Linux Not available.
TRUETYPE = SUBDEVTrueType font of device
Linux Not available.
Remarks

Modifying the print parameters via constants

If the printer does not support the requested settings, the returned value will be different from the one passed as parameter.
For example, to use the A3 format with a printer that does not support the A3 format:
// Switch to A3 format
IF iParameter(iPaperSize, iPaperSize_A3) = False THEN
// failure switching to A3 format
END
The value passed as parameter and the result of iParameter can correspond to a constant or to a value corresponding to a specific parameter of printer driver. For example:
PaperSource is int
PaperSource = iParameter(iPaperSource)
SWITCH PaperSource
CASE iPaperSource_Auto
Info("Paper source: automatic mode")
CASE iPaperSource_Lower
Info("Paper source: bottom tray")
CASE iPaperSource_Cassette
Info("Paper source: cassette")
CASE iPaperSource_Manual
Info("Paper source: manually")
CASE iPaperSource_Envelope
Info("Paper source: envelope tray")
CASE iPaperSource_Middle
Info("Paper source: middle tray")
CASE iPaperSource_EnvelopeManual
Info("Paper source: manual envelope")
CASE iPaperSource_OnlyOne
Info("Paper source: a single page")
CASE iPaperSource_SmallFormat
Info("Paper source: small format")
CASE iPaperSource_LargeCapacity
Info("Paper source: large capacity")
CASE iPaperSource_Tractor
Info("Paper source: tractor mode")
CASE iPaperSource_LargeFormat
Info("Paper source: large format")
CASE iPaperSource_Upper
Info("The paper source is the upper tray")
OTHER CASE
// Retrieve a specific value of the driver:
// A non-standard paper tray
Info(StringBuild("Paper source: %1. " + ...
"Corresponds to a specific parameter " + ...
"of the printer driver.", PaperSource))
END
WINDEVWEBDEV - Server codeReports and QueriesAndroidAndroid Widget JavaUser code (UMC)Ajax

Reinitializing the print module

If iParameter returns True, the print module is reinitialized. Therefore, iParameter must be used before any other print function. Otherwise, all operations previously performed by the print functions will be ignored.
If a print is in progress, iParameter closes this print. Therefore, iParameter must be called before the start of print.
WINDEVWEBDEV - Server codeReports and QueriesAndroidAndroid Widget JavaUser code (UMC)Ajax

Number of copies

The number of copies to print is reset to 1 after each print. To avoid this, use the following code line before the next print:
iParameter(iCopies, 2)
Remark: If the user specifies a number of copies (using iParameter or iParameterReport) before printing the report, this number of copies will will take precedence over the number of copies specified with the NbCopy property.
WINDEVWEBDEV - Server codeAndroidAndroid Widget JavaUser code (UMC)Ajax

Parameters defined by default

To define the parameters modified by iParameter as being the default parameters, iParameter must be used as follows:
// Example: orientation in landscape mode by default
iParameter(iOrientation, iOrientation_Landscape)
iParameter(iPrinterDefault, True)
WINDEVWEBDEV - Server codeReports and QueriesUser code (UMC)Ajax

Custom paper format

To set custom paper sizes with iParameter (syntax using constants), simply use the iPaperHeight and iPaperWidth constants and specify the desired size.
// Specify a custom paper format
iParameter(iPaperHeight, 200)
iParameter(iPaperWidth, 300)

Miscellaneous

  • iParameter must not be called in the processes of a report created with the report editor.
  • All the parameters supported by this function are not necessarily supported by all the printers.
  • If iParameter is used with a network printer (especially to modify the default parameters of the printer), make sure the computer that performs this operation has "Printer management" rights. Otherwise, the modification will not be performed.
  • It is not possible to change to another paper tray during the print job. In this case, you must perform several prints, each one using a different paper tray.
AndroidAndroid Widget Java

Printing in Java and Android

Printing can be less precise because in this language, the print resolution is set to 72 dot per inch (dpi) even if the printer supports higher resolutions.
Consequence: The calculations of points in images and in drawings (lines for example) are rounded during the position calculations when printing, especially for small values. During the print job, calculations are performed in points (depending on the print resolution) instead of mm (or cm).
Example: Printing lines: if the spacing between the lines is set to 0.5 mm, how many points will be found between each line (resolution set to 72 ppp)?
The first line is positioned at 0.5 mm which means (0.5/25.4) inches with a resolution of 72 points per inch (ppp): (0.5/25.4) x 72 = 1.42 point. The point being the base unit, it cannot be divided: the result is automatically rounded to 1 point less or greater according to the case.
This is a succession of lines printed with a spacing set to 05 mm:
  • 0.5 mm --> (1.42) 1 point
  • 1.0 mm --> (2.84) 3 points
  • 1.5 mm --> (4.25) 4 points. Caution: the line found at 1.5 mm is stuck to the line found at 1 mm (no spacing between these two lines)
  • 2.0 mm --> (5.67) 6 points
  • 2.5 mm --> (7.09) 7 points. Caution: the line found at 2.5 mm is stuck to the line found at 2 mm (no spacing between these two lines)
  • 3.0 mm --> (8.50) 9 points
  • 3.5 mm --> (9.92) 10 points. Caution: the line found at 3.5 mm is stuck to the line found at 3 mm (no spacing between these two lines)
  • 4.0 mm --> (11.33) 11 points. Caution: the line found at 4 mm is stuck to the line found at 3.5 mm (no spacing between these two lines)
  • etc.
To get a proper representation (no rounding), the size and/or the position in mm for a resolution set to 72 ppp must be a multiple of 127/360.
1 point --> (1/72) inches --> (1/72) x 25.4 mm = 127/360 = 0.3527778 mm
WINDEVReports and QueriesAndroidAndroid Widget JavaUser code (UMC)

iConfigure and iParameter

WINDEV The dialog box displayed by iConfigure can be called from the dialog box opened by iParameter.
Related Examples:
WD Printout Parameters Sample components (WINDEV): WD Printout Parameters
[ + ] This example is used to illustrate the iParameter function.
This function is used to retrieve the different settings defined for a given printer.

The default printer settings can be modified in Windows directly.
Caution, these settings will be used in all your applications.

Managing the network printers:
To modify the default settings of a printer network, make sure that you have the rights for "Managing printers". Otherwise, the modifications made will be ignored.
Business / UI classification: Neutral code
Component: wd290prn.dll
Minimum version required
  • Version 9
This page is also available for…
Comments
Click [Add] to post a comment

Last update: 06/23/2023

Send a report | Local help