upload_imgur {xfun} | R Documentation |
Upload an image to imgur.com
Description
This function uses the curl package or the system command curl
(whichever is available) to upload a image to https://imgur.com.
Usage
upload_imgur(
file,
key = env_option("xfun.upload_imgur.key", "9f3460e67f308f6"),
use_curl = loadable("curl"),
include_xml = FALSE
)
Arguments
file |
Path to the image file to be uploaded. |
key |
Client ID for Imgur. It can be set via either the global option
|
use_curl |
Whether to use the R package curl to upload the image.
If |
include_xml |
Whether to include the XML response in the returned value. |
Details
One application is to upload local image files to Imgur when knitting a
document with knitr: you can set the knitr::opts_knit$set(upload.fun = xfun::upload_imgur
, so the output document does not need local image files
any more, and it is ready to be published online.
Value
A character string of the link to the image. If include_xml = TRUE
,
this string carries an attribute named XML
, which is the XML response
from Imgur (it will be parsed by xml2 if available). See Imgur API in
the references.
Note
Please register your own Imgur application to get your client ID; you can certainly use mine, but this ID is in the public domain so everyone has access to all images associated to it.
Author(s)
Yihui Xie, adapted from the imguR package by Aaron Statham
References
A demo: https://yihui.org/knitr/demo/upload/
Examples
## Not run:
f = tempfile(fileext = ".png")
png(f)
plot(rnorm(100), main = R.version.string)
dev.off()
res = imgur_upload(f, include_xml = TRUE)
res # link to original URL of the image
attr(res, "XML") # all information
if (interactive())
browseURL(res)
# to use your own key
options(xfun.upload_imgur.key = "your imgur key")
## End(Not run)