Mnemonics
'PICTURE' Define / Draw Picture
  GUI Display/Printer
   
Format 1. Define Picture: 'PICTURE'(x,y,x,y,{name$|#chan}[,transp_opt][,display_opt])
2. List Embedded Pictures: variable$='PICTURE'(*)
 
Where:
* (asterisk) To have ProvideX return a list of its embedded pictures; e.g.,

X$='PICTURE'(*) PRINT X$

#chan String consisting of a # plus the channel containing the graphic; i.e, the channel opened via *BITMAP* .
display_opt Numeric code used to define style and alignment for use when displaying graphic. Supported options include:

0=Align at top-left
1=Center/crop within region
2=Scale to fit
3=Tile bitmaps to fill the given area
4=Halftone for enhanced legibility (may lighten black images)
5=Scale with proper aspect ratio but output in top left of region
6=Scale with proper aspect ratio but centered in the region.

For options 0, 2, and 3, the image is cropped to fit within the region for the screen and *WINPRT* output. Cropping is not supported with *PDF* thu,s pictures sent to *PDF* that are larger than their defined region (based on 72 pixels to the inch) will be auto-scaled to avoid displaying outside the defined region. For option 3 (tiled) when sending to *PDF*, only images that fit completely inside the region will be output (based on 72 pixels per inch).

name$ Name of graphic (e.g., C:\your_PATH\your.bmp). String expression. The icon filename must have .ico as an extension.
transp_opt Transparency option:
  • G specifies that all colours of RGB value 192,192,192 (Light Gray) are considered to be transparent.
  • T specifies that the colour of the first pixel in the upper left corner of the image is to be transparent.
x,y,x,y Point / position coordinates for top left and bottom right, in graphical units. Numeric expression.

 

   
Description Use 'PICTURE' to draw (print) a picture on the device (e.g., terminal). x,y,x,y coordinates define placement and size (top left and bottom right corners).

Use graphical units or @X(col) and @Y(line) functions for the various coordinates. For displaying image transparency, place a G or T at the end of the image filename;

PRINT 'PICTURE'(1,1,100,100,"myimage.bmp,T",0)
BUTTON 10,@(40,2,10,1.6)="{myicon.ico,T}&Name"

For internal images (i.e., those specified with an exclamation within braces {!imagename}), it is not necessary to use the G option because ProvideX always assumes this transparency on an internal bitmap, unless it is overridden with T. Transparent images are only supported when the picture does not need to be scaled. ProvideX cannot mask a scaled bitmap since the scaling process may alter colour codes.



* Note * The transparency options are not intended for printed output (i.e., *WINPRT*, *BITMAP*, *PDF*) and can produce incorrect results. Under UNIX/Linux, the use of these options with *PDF* will generate an Error #99:Feature not supported.


To remove an image at x,y,x,y coordinates, use a null pathname;

PRINT 'PICTURE'(1,1,100,100,"")

The null pathname is a +PxPlus Exclusive feature