painting function

Image Painting

Image Painting

The image_fill() function performs flood-fill by painting starting point and all neighboring pixels of approximately the same color. Annotate prints some text on the image.

image_fill(image, color, point = "+1+1", fuzz = 0, refcolor = NULL) image_annotate( image, text, gravity = "northwest", location = "+0+0", degrees = 0, size = 10, font = "", style = "normal", weight = 400, kerning = 0, decoration = NULL, color = NULL, strokecolor = NULL, strokewidth = NULL, boxcolor = NULL )

Arguments

  • image: magick image object returned by image_read() or image_graph()

  • color: a valid color string such as "navyblue" or "#000080". Use "none" for transparency.

  • point: a geometry_point string indicating the starting point of the flood-fill

  • fuzz: relative color distance (value between 0 and 100) to be considered similar in the filling algorithm

  • refcolor: if set, fuzz color distance will be measured against this color, not the color of the starting point. Any color (within fuzz color distance of the given refcolor), connected to starting point will be replaced with the color. If the pixel at the starting point does not itself match the given refcolor

    (according to fuzz) then no action will be taken.

  • text: character vector of length equal to 'image' or length 1

  • gravity: string with gravity

    value from gravity_types .

  • location: geometry string with location relative to gravity

  • degrees: rotates text around center point

  • size: font-size in pixels

  • font: string with font family such as "sans", "mono", "serif", "Times", "Helvetica", "Trebuchet", "Georgia", "Palatino" or "Comic Sans". See magick_fonts() for what is available.

  • style: value of style_types for example "italic"

  • weight: thickness of the font, 400 is normal and 700 is bold, see magick_fonts().

  • kerning: increases or decreases whitespace between letters

  • decoration: value of decoration_types for example "underline"

  • strokecolor: a color string

    adds a stroke (border around the text)

  • strokewidth: set the strokewidth of the border around the text

  • boxcolor: a color string

    for background color that annotation text is rendered on.

Details

Note that more sophisticated drawing mechanisms are available via the graphics device using image_draw .

Setting a font, weight, style only works if your imagemagick is compiled with fontconfig support.

Examples

logo <- image_read("logo:") logo <- image_background(logo, 'white') image_fill(logo, "pink", point = "+450+400") image_fill(logo, "pink", point = "+450+400", fuzz = 25) # Add some text to an image image_annotate(logo, "This is a test") image_annotate(logo, "CONFIDENTIAL", size = 50, color = "red", boxcolor = "pink", degrees = 30, location = "+100+100") # Setting fonts requires fontconfig support (and that you have the font) image_annotate(logo, "The quick brown fox", font = "monospace", size = 50)

See Also

Other image: _index_, analysis, animation, attributes(), color, composite, defines, device, edges, editing, effects(), fx, geometry, morphology, ocr, options(), segmentation, transform(), video

  • Maintainer: Jeroen Ooms
  • License: MIT + file LICENSE
  • Last published: 2025-03-23