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,
  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".

style

value of style_types for example "italic"

weight

thickness of the font, 400 is normal and 700 is bold.

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)

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.

See also

Examples

logo <- image_read("logo:") logo <- image_background(logo, 'white') image_fill(logo, "pink", point = "+450+400")
#> # A tibble: 1 × 7 #> format width height colorspace matte filesize density #> <chr> <int> <int> <chr> <lgl> <int> <chr> #> 1 GIF 640 480 sRGB FALSE 0 72x72
image_fill(logo, "pink", point = "+450+400", fuzz = 25)
#> # A tibble: 1 × 7 #> format width height colorspace matte filesize density #> <chr> <int> <int> <chr> <lgl> <int> <chr> #> 1 GIF 640 480 sRGB FALSE 0 72x72
# Add some text to an image image_annotate(logo, "This is a test")
#> # A tibble: 1 × 7 #> format width height colorspace matte filesize density #> <chr> <int> <int> <chr> <lgl> <int> <chr> #> 1 GIF 640 480 sRGB TRUE 0 72x72
image_annotate(logo, "CONFIDENTIAL", size = 50, color = "red", boxcolor = "pink", degrees = 30, location = "+100+100")
#> # A tibble: 1 × 7 #> format width height colorspace matte filesize density #> <chr> <int> <int> <chr> <lgl> <int> <chr> #> 1 GIF 640 480 sRGB TRUE 0 72x72
# Setting fonts requires fontconfig support (and that you have the font) image_annotate(logo, "The quick brown fox", font = "monospace", size = 50)
#> # A tibble: 1 × 7 #> format width height colorspace matte filesize density #> <chr> <int> <int> <chr> <lgl> <int> <chr> #> 1 GIF 640 480 sRGB TRUE 0 72x72