ImageGear for C and C++ on Windows v21.0 - Updated
API Reference Guide / Core Component API Reference / Core Component Functions Reference / Image Processing Functions / IG_IP_flip
In This Topic
    IG_IP_flip
    In This Topic

    Flips the image referenced by hIGear either horizontally or vertically.

    Declaration:

     
    Copy Code
    AT_ERRCOUNT ACCUAPI IG_IP_flip(
       HIGEAR hIGear,
       AT_MODE nDirection
    );
    

    Arguments:

    Name Type Description
    hIGear HIGEAR HIGEAR handle of image to flip.
    nDirection AT_MODE IG_FLIP_HORIZONTAL or IG_FLIP_VERTICAL, indicating whether to flip horizontally or vertically.

    Return Value:

    Returns 0 if successful. Otherwise, returns the number of ImageGear errors that occurred during this function call.

    Supported Raster Image Formats:

    All pixel formats supported by ImageGear for C and C++.

    Sample:

    Image Processing, ArtX, Medical, Timing.

    Example:

     
    Copy Code
    HIGEAR hIGear;            // HIGEAR handle of the image
    AT_ERRCOUNT nErrcount;    // Count of errs on stack upon ret from func
    
    // Load image file "picture.bmp" from working directory
    nErrcount = IG_load_file("picture.bmp", &hIGear);
    if(nErrcount == 0)
    {
        nErrcount = IG_IP_flip(hIGear, IG_FLIP_VERTICAL);
        // ...
        // Destroy the image
        IG_image_delete(hIGear);
    }
    

    Remarks:

    Flipping horizontally exchanges the right-most pixel column of the image bitmap with the left-most. Flipping vertically exchanges the topmost pixel row (raster) of the image bitmap with the bottom-most. The dimensions of the image do not change.

    If you want to turn the image upside-down (not the same as a vertical flip), use function IG_IP_rotate_multiple_90, with rotation mode set to IG_ROTATE_180.