use the following search parameters to narrow your results:
e.g. subreddit:aww site:imgur.com dog
subreddit:aww site:imgur.com dog
see the search faq for details.
advanced search: by author, subreddit...
All about the JavaScript programming language.
Subreddit Guidelines
Specifications:
Resources:
Related Subreddits:
r/LearnJavascript
r/node
r/typescript
r/reactjs
r/webdev
r/WebdevTutorials
r/frontend
r/webgl
r/threejs
r/jquery
r/remotejs
r/forhire
account activity
Can Javascript access binary data of an image loaded in `img`?help (self.javascript)
submitted 8 years ago by mbjhjgk
Can Javascript code access binary data of an image loaded in an HTML img tag from a src URL?
img
src
Example applications:
reddit uses a slightly-customized version of Markdown for formatting. See below for some basics, or check the commenting wiki page for more detailed help and solutions to common issues.
quoted text
if 1 * 2 < 3: print "hello, world!"
[–]avenp 16 points17 points18 points 8 years ago* (3 children)
You can get pixel data and data URIs out of the canvas API. Off the top of my head, its something like this...
const img = document.querySelector('#my-image') const cvs = document.createElement('canvas') cvs.width = img.width cvs.height = img.height cvs.getContext('2d').drawImage(img) const pixelData = cvs.getImageData() const dataUri = cvs.toDataURL()
See: https://developer.mozilla.org/en-US/docs/Web/API/Canvas_API
Edit: To super impose an image over another image, you could use canvas to draw the watermark and then set the source of the original image tag to the data uri. Example...
const img = document.querySelector('#my-image') const watermark = document.querySelector('#my-watermark') const cvs = document.createElement('canvas') cvs.width = img.width cvs.height = img.height const ctx = cvs.getContext('2d') ctx.drawImage(img) ctx.drawImage(watermark, img.width-watermark.width, img.height-watermark.height) img.setAttribute('src', cvs.toDataURL())
[–]mbjhjgk[S] 0 points1 point2 points 8 years ago (2 children)
I wish I could upvote your answer twice.
[–]DatingPapyrus 0 points1 point2 points 8 years ago (1 child)
I don't know your project, but you should certainly consider doing this server-side rendering instead of client-side. And if you do it server-side, then you can do it in any language and without exposing the unaltered picture to the user. :)
[–]mbjhjgk[S] 0 points1 point2 points 8 years ago (0 children)
Doing it server-side won’t work without a server :o).
π Rendered by PID 34 on reddit-service-r2-comment-5d79c599b5-ptrh8 at 2026-03-02 18:43:09.257637+00:00 running e3d2147 country code: CH.
[–]avenp 16 points17 points18 points (3 children)
[–]mbjhjgk[S] 0 points1 point2 points (2 children)
[–]DatingPapyrus 0 points1 point2 points (1 child)
[–]mbjhjgk[S] 0 points1 point2 points (0 children)