(index ("font-load" 0) ("image-create" 212) ("image?" 389) ("image-destroy" 504) ("image-clone" 607) ("image-load" 739) ("image-save" 1025) ("make-image" 1313) ("image-format" 1438) ("image-format-set!" 1628) ("image-width" 1905) ("image-height" 2035) ("image-filename" 2168) ("image-alpha?" 2363) ("image-alpha-set!" 2479) ("image-track-changes-on-disk" 2615) ("image-get-data-for-reading-only" 3027) ("image-blend" 3192) ("image-blend!" 3192) ("image-flip-horizontal" 3950) ("image-flip-horizontal!" 3950) ("image-flip-vertical" 4160) ("image-flip-vertical!" 4160) ("image-flip-diagonal" 4360) ("image-flip-diagonal!" 4360) ("image-orientate" 4599) ("image-orientate!" 4599) ("image-sharpen" 5128) ("image-sharpen!" 5128) ("image-blur" 5484) ("image-blur!" 5484) ("image-tile" 5759) ("image-tile!" 5759) ("image-tile-horizontal" 5759) ("image-tile-horizontal!" 5759) ("image-tile-vertical" 5759) ("image-tile-vertical!" 5759) ("image-crop" 6372) ("image-crop!" 6372) ("image-scale" 6986) ("image-crop&scale" 7106) ("image-pixel/rgba" 7593) ("image-pixel/hsva" 7826) ("image-pixel/hlsa" 8065) ("image-pixel/cmya" 8308) ("color?" 8546) ("color/rgba" 8666) ("color/hsva" 8796) ("color/hlsa" 8926) ("color/cmya" 9056) ("image-draw-pixel" 9186) ("image-draw-line" 9362) ("image-draw-rectangle" 9565) ("image-fill-rectangle" 9833) ("image-draw-text" 9997))
(def (sig (procedure "(font-load filename size) => font" (id font-load))) (p "Load and return a true type font from file " (tt "filename") " sized " (tt "size") " pixels. This respects the system's font path."))
(def (sig (procedure "(image-create width height) => image" (id image-create))) (p "Returns a new imlib2 image object which represents a transparent image of the given size."))
(def (sig (procedure "(image? img) => boolean" (id image?))) (p "Determine if " (tt "img") " is an imlib image."))
(def (sig (procedure "(image-destroy img)" (id image-destroy))) (p "Destroy the given image object."))
(def (sig (procedure "(image-clone img) => image" (id image-clone))) (p "Create a fresh copy of the image object " (tt "img") "."))
(def (sig (procedure "(image-load filename) => image" (id image-load))) (p "Returns a new imlib image object which represents the image stored in the file " (tt "filename") ".  This automatically uses the correct loader, as determined by Imlib2 on the basis of the file's extension."))
(def (sig (procedure "(image-save img filename)" (id image-save))) (p "Store the imlib image object represented by " (tt "img") " in the file " (tt "filename") ".  The right loader is automatically selected by Imlib2 if you haven't set it explicitly with " (tt "image-format-set!") "."))
(def (sig (procedure "(make-image pointer)" (id make-image))) (p "Construct an imlib image object for " (tt "pointer") "."))
(def (sig (procedure "(image-format img) => string" (id image-format))) (p "Request the currently set format for the image, or " (tt "#f") " if no format has been associated with it yet."))
(def (sig (procedure "(image-format-set! img format)" (id image-format-set!))) (p "Explicitly set the file format on the image for subsequent calls to " (tt "image-save") ".  The " (tt "format") " argument is passed to the loaders in the same way a file extension would be."))
(def (sig (procedure "(image-width img) => integer" (id image-width))) (p "Returns the width of the supplied image, in pixels."))
(def (sig (procedure "(image-height img) => integer" (id image-height))) (p "Returns the height of the supplied image, in pixels."))
(def (sig (procedure "(image-filename img) => string" (id image-filename))) (p "Returns the original filename for the image, if it was loaded from a file.  Otherwise it returns " (tt "#f") "."))
(def (sig (procedure "(image-alpha? img) => boolean" (id image-alpha?))) (p "Does the image have an alpha layer?"))
(def (sig (procedure "(image-alpha-set! img value)" (id image-alpha-set!))) (p "Enable or disable alpha layer support for the image."))
(def (sig (procedure "(image-track-changes-on-disk img)" (id image-track-changes-on-disk))) (p "From now on, track changes on disk to the file that is associated with " (tt "img") ". By default, all images are cached by imlib2 in such a way that closing and reopening it just pulls it from cache instead of really loading it.  Unfortunately, there's no way to request the status of this option or disable it."))
(def (sig (procedure "(image-get-data-for-reading-only img)" (id image-get-data-for-reading-only))) (p "Get a read-only pointer on " (tt "img") "'s content data."))
(def (sig (procedure "(image-blend img src-img #!key (merge-alpha #t) (src-x 0) (src-y 0) (src-width (image-width src-img)) (src-height (image-height src-img)) (dest-x 0) (dest-y 0) (dest-width (image-width src-img)) (dest-height (image-height src-img)))" (id image-blend)) (procedure "(image-blend! img src-img #!key (merge-alpha #t) (src-x 0) (src-y 0) (src-width (image-width src-img)) (src-height (image-height src-img)) (dest-x 0) (dest-y 0) (dest-width (image-width src-img)) (dest-height (image-height src-img)))" (id image-blend!))) (p "Blend " (tt "src-img") " onto " (tt "img") ", possibly cropping and scaling it. The default behavior is to blend " (tt "src-img") " in total and in its original size onto the top left corner of " (tt "img") "."))
(def (sig (procedure "(image-flip-horizontal img) => image" (id image-flip-horizontal)) (procedure "(image-flip-horizontal! img) => image" (id image-flip-horizontal!))) (p "Horizontally flip " (tt "img") "."))
(def (sig (procedure "(image-flip-vertical img) => image" (id image-flip-vertical)) (procedure "(image-flip-vertical! img) => image" (id image-flip-vertical!))) (p "Vertically flip " (tt "img") "."))
(def (sig (procedure "(image-flip-diagonal img) => image" (id image-flip-diagonal)) (procedure "(image-flip-diagonal! img) => image" (id image-flip-diagonal!))) (p "Diagonally flip " (tt "img") ".  This works like transposing a matrix."))
(def (sig (procedure "(image-orientate img orientation) => image" (id image-orientate)) (procedure "(image-orientate! img orientation) => image" (id image-orientate!))) (p "Orientate " (tt "img") ". According to imlib2 documentation, this procedure rotates the image by 90 degrees " (tt "orientation") " times.  However, the procedure accepts values between 0 and 7, inclusive.  What values 4-7 do, I'm not really sure of.  They appear to rotate the image " (tt "(mod orientation 3)") " times 90 degrees, but flip it as well."))
(def (sig (procedure "(image-sharpen img radius) => image" (id image-sharpen)) (procedure "(image-sharpen! img radius) => image" (id image-sharpen!))) (p "Sharpen " (tt "img") ". The " (tt "radius") " argument is an integer number indicating the degree of sharpening that has to take place. I am not sure what a negative value means, but it is allowed."))
(def (sig (procedure "(image-blur img radius) => image" (id image-blur)) (procedure "(image-blur! img radius) => image" (id image-blur!))) (p "Blur " (tt "img") ". The " (tt "radius") " argument is a positive integer indicating the blur matrix radius, so 0 has no effect."))
(def (sig (procedure "(image-tile img) => image" (id image-tile)) (procedure "(image-tile! img) => image" (id image-tile!)) (procedure "(image-tile-horizontal img) => image" (id image-tile-horizontal)) (procedure "(image-tile-horizontal! img) => image" (id image-tile-horizontal!)) (procedure "(image-tile-vertical img) => image" (id image-tile-vertical)) (procedure "(image-tile-vertical! img) => image" (id image-tile-vertical!))) (p "Adjust " (tt "img") " in such a way around the edges, such that it is suitable for use in repeating (\"tiled\") patterns on all sides, only horizontally or only vertically."))
(def (sig (procedure "(image-crop img x y width height) => image" (id image-crop)) (procedure "(image-crop! img x y width height) => image" (id image-crop!))) (p "Crop " (tt "img") ".  The " (tt "x") " and " (tt "y") " parameters indicate the upper left pixel of the new image.  The " (tt "width") " and " (tt "height") " parameters indicate the size of the new image.  Returns " (tt "#f") " on failure.") (p (b "Note") ": This procedure will return an image of the requested size, but with undefined contents if you pass it arguments that lie outside the image!  I am still unsure if this is a bug or feature."))
(def (sig (procedure "(image-scale img width height)" (id image-scale))) (p "Create a new, scaled copy of the image."))
(def (sig (procedure "(image-crop&scale img src-x src-y src-width src-height dest-width dest-height)" (id image-crop&scale))) (p "Create a new, cropped " (i "and") " scaled copy of " (tt "img") ".  The arguments " (tt "src-x") ", " (tt "src-y") ", " (tt "src-width") " and " (tt "src-height") " indicate cropping dimensions as per " (tt "image-crop") ", in the original image.  The " (tt "dest-width") " and " (tt "dest-height") " arguments indicate the new image's width and height."))
(def (sig (procedure "(image-pixel/rgba img x y) => integer integer integer integer" (id image-pixel/rgba))) (p "Returns the RGBA (red, green, blue, alpha) color values for the image at the specified pixel coordinate as 4 values."))
(def (sig (procedure "(image-pixel/hsva img x y) => integer integer integer integer" (id image-pixel/hsva))) (p "Returns the HSVA (hue, saturation, value, alpha) color values for the image at the specified pixel coordinate as 4 values."))
(def (sig (procedure "(image-pixel/hlsa img x y) => integer integer integer integer" (id image-pixel/hlsa))) (p "Returns the HLSA (hue, lightness, saturation, alpha) color values for the image at the specified pixel coordinate as 4 values."))
(def (sig (procedure "(image-pixel/cmya img x y) => integer integer integer integer" (id image-pixel/cmya))) (p "Returns the CMYA (cyan, magenta, yellow, alpha) color values for the image at the specified pixel coordinate as 4 values."))
(def (sig (procedure "(color? color) => boolean" (id color?))) (p "Is the specified object an imlib color specifier?"))
(def (sig (procedure "(color/rgba r g b a) => color" (id color/rgba))) (p "Create a color specifier for the given RGBA values."))
(def (sig (procedure "(color/hsva h s v a) => color" (id color/hsva))) (p "Create a color specifier for the given HSVA values."))
(def (sig (procedure "(color/hlsa h l s a) => color" (id color/hlsa))) (p "Create a color specifier for the given HLSA values."))
(def (sig (procedure "(color/cmya c m y a) => color" (id color/cmya))) (p "Create a color specifier for the given CMYA values."))
(def (sig (procedure "(image-draw-pixel img color x y)" (id image-draw-pixel))) (p "Draw a pixel in the given image on the given coordinates with the given color specifier."))
(def (sig (procedure "(image-draw-line img color x1 y1 x2 y2)" (id image-draw-line))) (p "Draw a line in the image from the coordinates (" (tt "x1") "," (tt "y1") ") to (" (tt "x2") "," (tt "y2") ")."))
(def (sig (procedure "(image-draw-rectangle img color x y width height)" (id image-draw-rectangle))) (p "Draw a one-pixel wide outline of a rectangle with the given color. The " (tt "x") " and " (tt "y") " coordinates are of the upper left corner of the rectangle."))
(def (sig (procedure "(image-fill-rectangle img color x y width height)" (id image-fill-rectangle))) (p "Same as " (tt "image-draw-rectangle") ", but filled in."))
(def (sig (procedure "(image-draw-text img font color x y text #!optional (direction 'to-right) (angle #f))" (id image-draw-text))) (p "Draw the string " (tt "text") " on " (tt "img") " at coordinates " (tt "x") " / " (tt "y") " with " (tt "color") " and " (tt "font") ". Possible " (tt "direction") " symbols are " (tt "to-right") ", " (tt "to-left") ", " (tt "to-down") ", " (tt "to-up") " and " (tt "to-angle") ". The optional " (tt "angle") " argument must be supplied when " (tt "direction") " is " (tt "to-angle") "."))
