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.
Usage
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()orimage_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,
fuzzcolor distance will be measured against this color, not the color of the startingpoint. Any color (withinfuzzcolor distance of the givenrefcolor), connected to starting point will be replaced with thecolor. If the pixel at the starting point does not itself match the givenrefcolor(according tofuzz) 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". Seemagick_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")
#> # 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
