Görüntü verileri JavaScript mı?
Bazı görüntüler (sadece <img />
normal HTML etiketleri) ile normal bir HTML sayfası var. İçeriği, base64 tercihen, görüntü tekrar indirmeniz gerek kalmadan kodlanmış (örn. almak istiyorum zaten içerik istiyorum şimdi tarayıcısı) ile dolu.
Greasemonkey Firefox ile bunu başarmak isterim.
CEVAP
Doğru boyutlara sahip bir tuval öğesi oluşturun ve drawImage
fonksiyonu ile görüntü verileri kopyalamak için ihtiyacınız olacak. toDataURL
işlevi, bir veri almak için kullanabilirsiniz: base-64 olan url kodlanmış görüntü. Görüntü tam dolu olması gerektiğini unutmayın, ya da sadece geri (siyah, şeffaf boş bir görüntü elde edersiniz.
Bu gibi bir şey olurdu. Hiç bir Greasemonkey script yazdım, bu ortamda çalıştırılacak kodu ayarlamak gerekebilir.
function getBase64Image(img) {
// Create an empty canvas element
var canvas = document.createElement("canvas");
canvas.width = img.width;
canvas.height = img.height;
// Copy the image contents to the canvas
var ctx = canvas.getContext("2d");
ctx.drawImage(img, 0, 0);
// Get the data-URL formatted image
// Firefox supports PNG and JPEG. You could check img.src to
// guess the original format, but be aware the using "image/jpg"
// will re-encode the image.
var dataURL = canvas.toDataURL("image/png");
return dataURL.replace(/^data:image\/(png|jpg);base64,/, "");
}
JPEG formatlı bir görüntü elde eski sürümleri (3.5) Firefox üzerinde işe yaramazsa, bunu desteklemek istiyorsanız, uyumluluğunu kontrol etmek gerekir. Eğer kodlama desteklenen değilse, varsayılan olacaktır "image/png".
Nasıl bir görüntü, Javascript/jQuery k...
Tarayıcı JavaScript ile görüntü kapısı...
Safari/JavaScript ile gerçek görüntü g...
Görüntü sunucuya yüklemeden önce istem...
Nasıl base64 dize javascript kullanara...