وصف الأداة

تقرأ هذه الأداة رموز QR من العديد من الصور في وقت واحد. أضف العدد الذي تريده من ملفات الصور، وستفك الأداة ترميز كل رمز QR تجده في كل صورة وتعرض النتائج بجانب اسم الملف. إذا احتوت الصورة على عدة رموز QR، فستظهر عدة صفوف. إنها طريقة سريعة لاستخراج الروابط وإعدادات Wi‑Fi وبطاقات جهات الاتصال أو التذاكر من مجلد يحتوي على لقطات شاشة وصور، بدلاً من مسحها ضوئيًا واحدًا تلو الآخر.

تستخدم عملية المسح مكتبة ZBar المجمّعة إلى WebAssembly وتعمل بالكامل في المتصفح، لذلك لا يتم رفع صورك. وهي تعمل في أي متصفح حديث. كما تقرأ رموز QR المدورة أو ذات الخلفية الشفافة، ويمكنها قراءة صورة مضيئة بالكامل على خلفية داكنة.

الميزات

  • أضف عدة صور في وقت واحد عبر سحبها وإفلاتها أو تصفح الملفات
  • تقرأ كل رمز QR في الصورة، وتعرضها من الأعلى إلى الأسفل ثم من اليسار إلى اليمين
  • اعرض نتيجة كل ملف في جدول قابل للفرز مع حالته
  • بدّل إلى نص عادي بقيمة مفكوكة الترميز في كل سطر، أو إلى JSON يحتفظ باسم الملف والحالة والقيمة
  • يتم الإبلاغ عن الملفات التي لا تحتوي على رمز QR، والملفات التي ليست صورًا قابلة للقراءة، بدلاً من تخطيها بصمت
  • انسخ مخرجات النص وJSON أو نزّلها

ملاحظات

تعتمد صيغ الصور المدعومة على المتصفح، وتشمل عادةً PNG وJPEG وGIF وWebP وBMP وAVIF. قد لا يتم اكتشاف رموز QR الصغيرة أو غير الواضحة أو المقتصة بدرجة كبيرة. في الصورة التي تجمع بين رموز عادية ورموز معكوسة (مضيئة على خلفية داكنة)، تتم قراءة الرموز المعكوسة فقط عند عدم العثور على رمز عادي.

مخرجات JSON

يعرض تبويب JSON مصفوفة تحتوي على إدخال واحد لكل رمز QR تم فك ترميزه. يظهر الملف الذي يحتوي على عدة رموز QR مرة واحدة لكل رمز، بينما يظهر الملف الذي لا يحتوي على رمز قابل للقراءة مرة واحدة مع نص null. تتبع المخرجات مخطط JSON التالي:

{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "array",
  "items": {
    "type": "object",
    "properties": {
      "file": {
        "type": "string",
        "description": "اسم ملف الصورة"
      },
      "status": {
        "enum": ["تم العثور عليه", "لم يتم العثور عليه", "غير قابل للقراءة"],
        "description": "تم العثور عليه: تم فك ترميز رمز QR. لم يتم العثور عليه: لا تحتوي الصورة على رمز QR. غير قابل للقراءة: الملف ليس صورة يمكن للمتصفح فتحها."
      },
      "text": {
        "type": ["string", "null"],
        "description": "النص المفكوك ترميزه من رمز QR، أو null ما لم تكن الحالة «تم العثور عليه»"
      }
    },
    "required": ["file", "status", "text"],
    "additionalProperties": false
  }
}

على سبيل المثال، صورة واحدة تحتوي على رمزي QR، وصورة واحدة لا تحتوي على رمز QR، وملف واحد ليس صورة:

[
  {
    "file": "poster.png",
    "status": "تم العثور عليه",
    "text": "https://example.com"
  },
  {
    "file": "poster.png",
    "status": "تم العثور عليه",
    "text": "WIFI:T:WPA;S:Guest;P:secret;;"
  },
  { "file": "logo.png", "status": "لم يتم العثور عليه", "text": null },
  { "file": "notes.txt", "status": "غير قابل للقراءة", "text": null }
]