Hogyan tudok canvasból képet lementeni?
Üdv! Van egy live stream img tag alatt:
<img id="camera" width="1100" height="680" src="http://168.255.0.1:8081/" />
Gombnyomásra megrajzolom canvasba a képet, majd ezt le akarom menteni a canvas ID-ja alapján. Viszont nem működik valamiért. Foglalkozott már valaki ilyennel?
https://pastebin.pl/view/57b82245
Az alábbi topik:
https://www.gyakorikerdesek.hu/szamitastechnika__programozas..
#2/#12-es hozzászólásaiban leírtam, hogy a Canvas toBlob metódusával lehet ezt kivitelezni, de ügyelni kell arra, hogy
* vagy csak lokális képeknél működik
* vagy a lementendő kép crossorigin attribútumát "anonymous"-ra kell állítani
#12-es hozzászólásomban mutattam is rá példát.
Hiába állítom "Anonymous"-ra, akkor is fekete képet tölt csak le.
A problémát az okozza, hogy akkor mentenéd le a kép tartalmát, amikor még nem töltődött be a kép - ezért kapsz fekete képet.
Éppen ezért kell - mint a #1-es hozzászólásomban említett topik #12-es hozzászólásában mutatott kódban is szerepel - a canvas méretének beállítása és tartalmának bemásolása után berakni a canvas átalakítását és "mentését" (ez a Te kódodban a kép betöltődésekor meghívott drawImageActualSize() függvényben van)
Tehát ha jól értem magába a függvénybe kell belerakni az átalakítást és mentést?
Így valahogy?
Mert így semmi nem történik, bemásolja canvasba a képet, de nem ajánlja fel letölteni a képet :(
Próbálkozom, de nem akar sikerülni.
Teszteltem a #12-es példában szereplő képpel:
működik.
Remélem a HTML-kódban létrehoztad a gombot, amihez - az onclick eseményéhez - hozzárendelted a capture() függvényt, illetve készítettél egy canvas azonosítójú (id attribútumú) <canvas> elemet is - mert azok nélkül nem megy.
További kérdések:
Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!