rsvg (version 1.3)

rsvg: Render SVG into Bitmap

Description

Render svg image into a high quality bitmap. When both width and height are NULL, the output resolution matches that of the input. When either width or height is specified, the image is scaled proportionally. When both width and height are specified, the image is stretched into the requested size.

Usage

rsvg(svg, width = NULL, height = NULL)

rsvg_raw(svg, width = NULL, height = NULL)

rsvg_webp(svg, file = NULL, width = NULL, height = NULL)

rsvg_png(svg, file = NULL, width = NULL, height = NULL)

rsvg_pdf(svg, file = NULL, width = NULL, height = NULL)

rsvg_svg(svg, file = NULL, width = NULL, height = NULL)

rsvg_ps(svg, file = NULL, width = NULL, height = NULL)

Arguments

svg

path/url to svg file or raw vector with svg data. Use charToRaw to convert an SVG string into raw data.

width

output width in pixels or NULL for default.

height

output height in pixels or NULL for default

file

path to output file or NULL to return content as raw vector

Examples

Run this code
# NOT RUN {
# create some svg
options(example.ask=FALSE)
tmp <- tempfile()
svglite::svglite(tmp, width = 10, height = 7)
ggplot2::qplot(mpg, wt, data = mtcars, colour = factor(cyl))
dev.off()

# render it into a bitmap array
bitmap <- rsvg(tmp, height = 1440)
dim(bitmap) # h*w*c

png::writePNG(bitmap, "bitmap.png", dpi = 144)
jpeg::writeJPEG(bitmap, "bitmap.jpg", quality = 1)
webp::write_webp(bitmap, "bitmap.webp", quality = 100)


# render straight to output format
rsvg_pdf(tmp, "out.pdf")
rsvg_png(tmp, "out.png")
rsvg_svg(tmp, "out.svg")
rsvg_ps(tmp, "out.ps")
# }

Run the code above in your browser using DataLab