
نسخة محدّثة من get-pixels تعالج مشكلة الأمان CVE-2020-8175.
بإعطائه عنوان URL أو مسارًا، يلتقط جميع البكسلات في صورة ويعيد النتيجة على شكل ndarray. مكتوب بلغة JavaScript بنسبة 100%، ويعمل في كل من browserify وnode.js، وليس له أي تبعيات خارجية أصلية.
حاليًا، صيغ الملفات التالية مدعومة:
PNGJPEGGIFvar getPixels = require("get-pixels-updated")
getPixels("lena.png", function(err, pixels) {
if(err) {
console.log("Bad image path")
return
}
console.log("got pixels", pixels.shape.slice())
})
npm install get-pixels-updated
require("get-pixels-updated")(url[, type], cb(err, pixels))يقرأ جميع البكسلات من url ويخزّنها في ndarray.
url هو مسار الملف. يمكن أن يكون مسارًا نسبيًا، أو http url، أو data url، أو Buffer في الذاكرة.type هو نوع mime اختياري للصورة (مطلوب عند استخدام Buffer).cb(err, pixels) هي دالة استدعاء (callback) يتم تشغيلها بمجرد تحميل الصورة.يعيد مصفوفة ndarray من البكسلات بترتيب المسح (raster) ويكون شكلها [width, height, channels].
ملاحظة بالنسبة لملفات GIF المتحركة، يتم إرجاع مصفوفة رباعية الأبعاد بشكل [numFrames, width, height, 4]، حيث يكون كل إطار (frame) شريحة من المصفوفة النهائية.
الكود الأصلي من get-pixels، وتم تحديثه بواسطة sysollie لإصلاح الثغرة الأمنية CVE-2020-8175. تم استخدام الكود وإعادة ترخيصه وفقًا لرخصة MIT وبما يتوافق معها (الأصلية | الجديدة).