composite {magick} | R Documentation |
Image Composite
Description
Similar to the ImageMagick composite
utility: compose an image on top of another one using a
CompositeOperator.
Usage
image_composite(
image,
composite_image,
operator = "atop",
offset = "+0+0",
gravity = "northwest",
compose_args = ""
)
image_border(image, color = "lightgray", geometry = "10x10", operator = "copy")
image_frame(image, color = "lightgray", geometry = "25x25+6+6")
image_shadow_mask(image, geometry = "50x10+30+30")
image_shadow(
image,
color = "black",
bg = "none",
geometry = "50x10+30+30",
operator = "copy",
offset = "+20+20"
)
image_shade(image, azimuth = 30, elevation = 30, color = FALSE)
Arguments
image |
magick image object returned by |
composite_image |
composition image |
operator |
string with a composite operator from compose_types() |
offset |
string with either a gravity_type or a geometry_point to set position of top image. |
gravity |
string with gravity value from gravity_types. |
compose_args |
additional arguments needed for some composite operations |
color |
Set to true to shade the red, green, and blue components of the image. |
geometry |
a geometry string
to set height and width of the border, e.g. |
bg |
background color |
azimuth |
position of light source |
elevation |
position of light source |
Details
The image_composite
function is vectorized over both image arguments: if the first image has
n
frames and the second m
frames, the output image will contain n
* m
frames.
The image_border function creates a slightly larger solid color frame and then composes the original frame on top. The image_frame function is similar but has an additional feature to create a shadow effect on the border (which is really ugly).
See Also
Other image:
_index_
,
analysis
,
animation
,
attributes()
,
color
,
defines
,
device
,
edges
,
editing
,
effects()
,
fx
,
geometry
,
morphology
,
ocr
,
options()
,
painting
,
segmentation
,
transform()
,
video
Examples
# Compose images using one of many operators
imlogo <- image_scale(image_read("logo:"), "x275")
rlogo <- image_read("https://jeroen.github.io/images/Rlogo-old.png")
# Standard is atop
image_composite(imlogo, rlogo)
# Same as 'blend 50' in the command line
image_composite(imlogo, rlogo, operator = "blend", compose_args="50")
# Offset can be geometry or gravity
image_composite(logo, rose, offset = "+100+100")
image_composite(logo, rose, gravity = "East")
# Add a border frame around the image
image_border(imlogo, "red", "10x10")
image_frame(imlogo)
image_shadow(imlogo)
image_shade(imlogo)