MyWebUniversity.com Home Page
 



OpenSolaris man pages main menu


mediaLib Library Functions             mlibImageComposite(3MLIB)



NAME
     mlibImageComposite - image composition

SYNOPSIS
     cc [ flag... ] file... -lmlib [ library... ]
     #include 

     mlibstatus mlibImageComposite(mlibimage *dst, const mlibimage *src1,
          const mlibimage *src2, mlibblend bsrc1, mlibblend bsrc2,
          mlibs32 cmask);


DESCRIPTION
     The mlibImageComposite() function  supports  digital  image
     composition.


     It is a wrapper of the mlibImageBlendBSCR1BSRC2 group  of
     functions and can perform various types of composition based
     on the parameters passed in, whereas each function  in  that
     group  can  perform only the one kind of composition denoted
     by its name.


     The image type must  be  MLIBYTE.  The  input  and  output
     images  must  contain  three  or  four  channels. For three-
     channel images, the alpha value is as if the alpha value  is
     1.


     The following are predefined  blend  factor  types  used  in
     mediaLib image composition functions.

       /* image blend factors */
       typedef enum {
           MLIBLENDZERO,
           MLIBLENDONE,
           MLIBLENDSTCOLOR,
           MLIBLENDSRCOLOR,
           MLIBLENDONEMINUSDSTCOLOR,
           MLIBLENDONEMINUSRCOLOR,
           MLIBLENDSTALPHA,
           MLIBLENDSRCALPHA,
           MLIBLENDONEMINUSDSTALPHA,
           MLIBLENDONEMINUSRCALPHA,
           MLIBLENDSRCALPHASATURATE
       } mlibblend;



     See the following table for the  definitions  of  the  blend
     factors.



SunOS 5.11           Last change: 2 Mar 2007                    1






mediaLib Library Functions             mlibImageComposite(3MLIB)



                  Type                   Blend Factor [*]        Abbr.
     
     MLIBLENDZERO                  (0,0,0,0)                 ZERO
     MLIBLENDONE                   (1,1,1,1)                 ONE
     MLIBLENDSTCOLOR             (Rd,Gd,Bd,Ad)             DC
     MLIBLENDSRCOLOR             (Rs,Gs,Bs,As)             SC
     MLIBLENDONEMINUSDSTCOLOR   (1,1,1,1)-(Rd,Gd,Bd,Ad)   OMDC
     MLIBLENDONEMINUSRCOLOR   (1,1,1,1)-(Rs,Gs,Bs,As)   OMSC
     MLIBLENDSTALPHA             (Ad,Ad,Ad,Ad)             DA
     MLIBLENDSRCALPHA             (As,As,As,As)             SA
     MLIBLENDONEMINUSDSTALPHA   (1,1,1,1)-(Ad,Ad,Ad,Ad)   OMDA
     MLIBLENDONEMINUSRCALPHA   (1,1,1,1)-(As,As,As,As)   OMSA
     MLIBLENDSRCALPHASATURATE    (f,f,f,1)                 SAS



     [*]: The components of the  first  source  image  pixel  are
     (Rd,Gd,Bd,Ad), and the components of the second source pixel
     are (Rs,Gs,Bs,As). Function f = min(As, 1-Ad).


     The blending formula for non-in-place processing is:

       Cd = Cs1*S1 ] Cs2*S2



     where Cd is the destination pixel (Rd,Gd,Bd,Ad), Cs1 is  the
     first  source  pixel  (Rs1,Gs1,Bs1,As1),  Cs2  is the second
     source pixel (Rs2,Gs2,Bs2,As2), and S1 and S2 are the  blend
     factors for the first and second sources, respectively.

PARAMETERS
     The function takes the following arguments:

     dst      Pointer to destination image.


     src1     Pointer to the first source image.


     src2     Pointer to the second source image.


     bsrc1    Blend factor type for the first source image.


     bsrc2    Blend factor type for the second source image.


     cmask    Channel mask to indicate the  alpha  channel.  Each
              bit  of the mask represents a channel in the image.



SunOS 5.11           Last change: 2 Mar 2007                    2






mediaLib Library Functions             mlibImageComposite(3MLIB)



              The channel corresponding to the 1 bit is the alpha
              channel. cmask must be either 0x01 or 0x08.


RETURN VALUES
     The function returns MLIBSUCES if  successful.  Otherwise
     it returns MLIBFAILURE.

ATRIBUTES
     See attributes(5) for descriptions of the  following  attri-
     butes:



     
           ATRIBUTE TYPE               ATRIBUTE VALUE       
    
     Interface Stability          Committed                   
    
     MT-Level                     MT-Safe                     
    


SEE ALSO
     mlibImageBlendBSRC1BSRC2(3MLIB),
     mlibImageBlendBSRC1BSRC2Inp(3MLIB),
     mlibImageCompositeInp(3MLIB), attributes(5)




























SunOS 5.11           Last change: 2 Mar 2007                    3



OpenSolaris man pages main menu

Contact us      |       About us      |       Term of use      |       Copyright © 2000-2010 MyWebUniversity.com ™