Provided by: libafterimage-dev_2.2.12-15build1_amd64 bug

NAME

       ximage - functionality for displaying ASImages on X display libAfterImage/ximage.h

NAMEximage

       - Defines conversion to and from XImages and Pixmaps.

DESCRIPTION

       ximage2asimage()     - convert XImage structure into ASImage pixmap2asimage()    - convert
       X11  pixmap   into   ASImage   asimage2ximage()      -   convert   ASImage   into   XImage
       asimage2mask_ximage() - convert alpha channel of ASImage into XImage asimage2pixmap()    -
       convert ASImage into Pixmap ( possibly using
                             precreated XImage )  asimage2mask()   -  convert  alpha  channel  of
       ASImage into 1 bit
                             mask Pixmap.

SEE ALSO

       Other libAfterImage modules :
                ascmap.h asfont.h asimage.h asvisual.h blender.h export.h
                import.h transform.h ximage.h

AUTHOR

       Sasha Vasko <sasha at aftercode dot net>
       libAfterImage/picture_ximage2asimage()

NAMEpicture_ximage2asimage()

SYNOPSIS

       ASImage *picture_ximage2asimage ( struct ASVisual *asv,
                                         XImage * xim, XImage *alpha_xim,
                                         unsigned int compression );

INPUTS

       asv    - pointer to valid ASVisual structure

       xim    - source XImage

       alpha_xim
              - source XImage for Alpha channel

       compression
              - degree of compression of resulting ASImage.

RETURN VALUE

       pointer to newly allocated ASImage, containing encoded data, on success. NULL on failure.

DESCRIPTION

       picture_ximage2asimage  will  attempt  to  create  new ASImage with the same dimensions as
       supplied XImage. If both XImages are supplied - they must  have  same  dimensions.  XImage
       will  be  decoded based on supplied ASVisual, and resulting scanlines will be encoded into
       ASImage.
       libAfterImage/ximage2asimage()

NAMEximage2asimage()

       - same as picture_ximage2asimage with alpha_ximage set to NULL. Supplied for compatibility
       with older versions and for convenience.

SYNOPSIS

       ASImage *ximage2asimage ( struct ASVisual *asv, XImage * xim,
                                 unsigned int compression );

INPUTS

       asv    - pointer to valid ASVisual structure

       xim    - source XImage

       compression
              - degree of compression of resulting ASImage.

RETURN VALUE

       pointer to newly allocated ASImage, containing encoded data, on success. NULL on failure.

DESCRIPTIONlibAfterImage/pixmap2asimage()

NAMEpixmap2asimage()

SYNOPSIS

       ASImage *pixmap2ximage( ASVisual *asv, Pixmap p, int x, int y,
                               unsigned int width, unsigned int height,
                                  unsigned long plane_mask,
                               unsigned int compression);

INPUTS

       asv    - pointer to valid ASVisual structure

       p      - source Pixmap

       x,     y,

       width, height- rectangle on Pixmap to be encoded into ASImage.

       plane_mask
              - limits color planes to be copied from Pixmap.

       keep_cache
              -  indicates  if  we should keep XImage, used to copy image data from the X server,
              and attached it to ximage member of resulting ASImage.

       compression
              - degree of compression of resulting ASImage.

RETURN VALUE

       pointer to newly allocated ASImage, containing data in XImage format, on success. NULL  on
       failure.

DESCRIPTION

       pixmap2ximage will obtain XImage of the requested area of the X Pixmap, and it will attach
       it to newly created ASImage using alt.ximage member.  After  that  newly  created  ASImage
       could be used in any transformations.
       libAfterImage/pixmap2asimage()

NAMEpixmap2asimage()

SYNOPSIS

       ASImage *pixmap2asimage ( struct ASVisual *asv, Pixmap p,
                                 int x, int y,
                                 unsigned int width,
                                 unsigned int height,
                                 unsigned long plane_mask,
                                 Bool keep_cache,
                                 unsigned int compression );

INPUTS

       asv    - pointer to valid ASVisual structure

       p      - source Pixmap

       x,     y,

       width, height- rectangle on Pixmap to be encoded into ASImage.

       plane_mask
              - limits color planes to be copied from Pixmap.

       keep_cache
              -  indicates  if  we should keep XImage, used to copy image data from the X server,
              and attached it to ximage member of resulting ASImage.

       compression
              - degree of compression of resulting ASImage.

RETURN VALUE

       pointer to newly allocated ASImage, containing encoded data, on success. NULL on failure.

DESCRIPTION

       same as picture2asimage() with alpha pixmap set to None. Supplied  for  compatibility  and
       convenience.
       libAfterImage/picture2asimage()

NAMEpicture2asimage()

SYNOPSIS

       ASImage *picture2asimage (struct ASVisual *asv,
                                 Pixmap rgb, Pixmap a,
                                 int x, int y,
                                 unsigned int width,
                                 unsigned int height,
                                 unsigned long plane_mask,
                                 Bool keep_cache,
                                 unsigned int compression );

INPUTS

       asv    - pointer to valid ASVisual structure

       rgb    - source Pixmap for red, green and blue channels

       a      - source Pixmap for the alpha channel

       x,     y,

       width, height- rectangle on Pixmap to be encoded into ASImage.

       plane_mask
              - limits color planes to be copied from Pixmap.

       keep_cache
              -  indicates  if  we should keep XImage, used to copy image data from the X server,
              and attached it to ximage member of resulting ASImage.

       compression
              - degree of compression of resulting ASImage.

RETURN VALUE

       pointer to newly allocated ASImage, containing encoded data, on success. NULL on failure.

DESCRIPTION

       picture2asimage will obtain XImage of the requested area of the X Pixmap, If alpha channel
       pixmap  is  supplied  -  it  will be used to encode ASImage's alpha channel. Alpha channel
       pixmap must be either 8 or 1 bit deep, and it  must  have  the  same  dimensions  as  main
       Pixmap.
       libAfterImage/asimage2ximage()

NAMEasimage2ximage()

SYNOPSIS

       XImage  *asimage2ximage  (struct ASVisual *asv, ASImage *im);

INPUTS

       asv    - pointer to valid ASVisual structure

       im     - source ASImage

RETURN VALUE

       On success returns newly created and encoded XImage of the same colordepth as the supplied
       ASVisual. NULL on failure.

DESCRIPTION

       asimage2ximage() creates new XImage of the exact same size as supplied ASImage, and  depth
       of  supplied  ASVisual.  REd,  Green  and  Blue channels of ASImage then gets decoded, and
       encoded into XImage.  Missing scanlines get filled with black color.

NOTES

       Returned pointer to XImage will also be stored in im->alt.ximage, and It will be destroyed
       when  XImage  is  destroyed, or reused in any subsequent calls to asimage2ximage(). If any
       other behaviour is desired - make sure you  set  im->alt.ximage  to  NULL,  to  dissociate
       XImage object from ASImage.

SEE ALSO

       create_visual_ximage()
       libAfterImage/asimage2alpha_ximage()

NAMEasimage2alpha_ximage()

SYNOPSIS

       XImage  *asimage2alpha_ximage (struct ASVisual *asv,
                                      ASImage *im, Bool bitmap);

INPUTS

       asv    - pointer to valid ASVisual structure

       im     - source ASImage

       bitmap - if True resulting XImage will have depth of 1 bit - traditional X mask; otherwise
              it will have depth of 8 (useful for XFree86 RENDER extension)

RETURN VALUE

       On success returns newly created and encoded XImage of the depth 1 or 8.  NULL on failure.

DESCRIPTION

       asimage2alpha_ximage() creates new XImage of the exact same size as supplied ASImage,  and
       depth  1  or  8.  Alpha channels of ASImage then gets decoded, and encoded into XImage. In
       case requested depth is 1 then alpha channel is interpreted like so:  127  or  greater  is
       encoded  as  1,  otherwise  as  0.   Missing  scanlines get filled with 1s as they signify
       absence of mask.

NOTES

       Returned pointer to XImage will also be stored in  im->alt.mask_ximage,  and  It  will  be
       destroyed   when   XImage   is   destroyed,   or   reused   in  any  subsequent  calls  to
       asimage2mask_ximage().  If  any  other  behaviour  is  desired  -  make   sure   you   set
       im->alt.mask_ximage to NULL, to dissociate XImage object from ASImage.
       libAfterImage/asimage2mask_ximage()

NAMEasimage2mask_ximage()

       -  same  as  asimage2alpha_ximage(). Supplied for convenience and compatibility with older
       versions.

SYNOPSIS

       XImage  *asimage2mask_ximage (struct ASVisual *asv, ASImage *im);

INPUTS

       asv    - pointer to valid ASVisual structure

       im     - source ASImage

RETURN VALUE

       On success returns newly created and encoded XImage of the depth 1.  NULL on failure.
       libAfterImage/asimage2pixmap()

NAMEasimage2pixmap()

SYNOPSIS

       Bool     asimage2drawable( struct ASVisual *asv, Drawable d, ASImage *im,
                               GC gc,
                              int src_x, int src_y, int dest_x, int dest_y,
                              unsigned int width, unsigned int height,
                                  Bool use_cached);

INPUTS

       asv    - pointer to valid ASVisual structure

       d      - destination drawable - Pixmap or Window

       im     - source ASImage

       gc     - precreated GC to use for XImage transfer. If NULL,  asimage2drawable()  will  use
              DefaultGC.

       src_x  -  Specifies the offset in X from the left edge of the image defined by the ASImage
              structure.

       src_y  - Specifies the offset in Y from the top edge of the image defined by  the  ASImage
              structure.

       dest_x,dest_y-
              Specify  the  x and y coordinates, which are relative to the origin of the drawable
              and are the coordinates of the subimage.

       width,height
              - Specify the width and height of the subimage, which define the dimensions of  the
              rectangle.

       use_cached
              -  If True will make asimage2pixmap() to use XImage attached to ASImage, instead of
              creating new one. Only works if ASImage->ximage data member is not NULL.

RETURN VALUE

       On success returns True.

DESCRIPTION

       asimage2drawable() creates will copy portion of ASImage onto the X Drawable. It checks  if
       it needs to encode XImage from ASImage data, and calls asimage2ximage() if yes, it has to.
       It then supplied gc or DefaultGC of the screen to transfer XImage to the server.   Missing
       scanlines get filled with black color.

SEE ALSO

       asimage2ximage() asimage2pixmap() create_visual_pixmap()
       libAfterImage/asimage2pixmap()

NAMEasimage2pixmap()

SYNOPSIS

       Pixmap   asimage2pixmap  ( struct ASVisual *asv, Window root,
                                  ASImage *im, GC gc, Bool use_cached);

INPUTS

       asv    - pointer to valid ASVisual structure

       root   - root window of destination screen

       im     - source ASImage

       gc     -  precreated  GC  to  use  for XImage transfer. If NULL, asimage2pixmap() will use
              DefaultGC.

       use_cached
              - If True will make asimage2pixmap() to use XImage attached to ASImage, instead  of
              creating new one. Only works if ASImage->ximage data member is not NULL.

RETURN VALUE

       On success returns newly pixmap of the same colordepth as ASVisual.  None on failure.

DESCRIPTION

       asimage2pixmap()  creates  new  pixmap  of  exactly same size as supplied ASImage. It then
       calls asimage2drawable to copy entire content of the ASImage onto that created pixmap.

EXAMPLE

       asview.c: ASView.5

SEE ALSO

       asimage2ximage() asimage2drawable() create_visual_pixmap()
       libAfterImage/asimage2mask()

NAMEasimage2mask()

SYNOPSIS

       Pixmap   asimage2mask ( struct ASVisual *asv, Window root,
                               ASImage *im, GC gc, Bool  use_cached);  asv         -  pointer  to
       valid  ASVisual  structure  root        -  root  window of destination screen im         -
       source ASImage gc         - precreated GC for 1 bit deep drawables to use for
                    XImage transfer. If NULL, asimage2mask() will create one.   use_cached  -  If
       True will make asimage2mask() to use mask XImage
                   attached to ASImage, instead of creating new one. Only
                   works if ASImage->alt.mask_ximage data member is not NULL.

RETURN VALUE

       On success returns newly created pixmap of the colordepth 1.  None on failure.

DESCRIPTION

       asimage2mask()  creates new pixmap of exactly same size as supplied ASImage. It then calls
       asimage2mask_ximage().  It then uses supplied gc, or creates new gc, to transfer XImage to
       the server and put it on Pixmap.  Missing scanlines get filled with 1s.

SEE ALSO

       asimage2mask_ximage()