creation

The following routines are used to create and destroy bitmaps:

a32Dib0 dib = newDib(integer width, integer height)
a32Dib0 destdib = copyDib(a32Dib srcdib)
a32Dib0 newdib = extractDib(object src, integer x1, integer y1, integer x2, integer y2)
a32Dib0 newdib = loadDib(string fileName)
integer r = saveDib(a32Dib dib, string fileName, integer x1, integer y1, integer x2, integer y2)
integer r = saveDibGray(a32Dib dib, string fileName, integer x1, integer y1, integer x2, integer y2)
integer r = saveDibReduced(a32Dib dib, string fileName, integer x1, integer y1, integer x2, integer y2)
killDib(a32Dib dib)

You can load a bitmap from a BMP file with the loadDib function.
You can save (a region of) the bitmap to a 24-bit BMP file with the saveDib function, which returns 0 if successful, or 1 if the bitmap could not be saved.
You can also save (a region of) the bitmap as an 8-bit grayscale BMP file with the saveDibGray function (same parameters and return value like saveDib), or as an 8-bit websafe color BMP file with the saveDibReduced function.

Example:

    integer result
    a32Dib0 dib

    dib = loadDib("bitmap1.bmp")    -- loads the bitmap
    if integer(dib) then
        ...                         -- could not load the bitmap
        abort(0)
    end if

    -- save the rectangular region {10, 10} -> {100, 75} to the file "bitmap2.bmp".
    result = saveDib(dib, "bitmap2.bmp", 10, 10, 100, 75)

    if result!=0 then
        ...                         -- the bitmap could not be saved
    end if
See Also: getDibFromClipboard