
22 يوليوز 2026
تصحيح أخطاء رموز QR: دليل تقني شامل
بقلم سعيد وارك · المؤسس
يحمل كل رمز QR تولّده مقايضة خفية نادراً ما يفكر فيها معظم الناس: مقدار البيانات التكرارية التي يحملها. هذا التكرار، الذي تتحكم فيه أربعة مستويات تُسمى L وM وQ وH، يقرر كبر حجم الرمز وكم التلف الذي يمكنه تحمله قبل أن يتوقف عن المسح. الأرقام التي تجدها في معظم الأدلة — «7%» و«15%» و«25%» و«30%» — منقولة من مواصفة ISO، لكنها تصف مثالاً رياضياً، لا ما سيتحمله هاتف حقيقي. في هذا الدليل نشرح بالضبط كيف يعمل تصحيح أخطاء Reed-Solomon، ونعرض أحجام الشبكات المقيسة لمحتويات حقيقية، ونشارك اختبارات التلف التي شغلناها على مولد هذا الموقع نفسه، ونمنحك طريقة موثوقة لاختيار المستوى المناسب لمشروع الطباعة.
ما هو تصحيح الأخطاء فعلاً
رمز QR شبكة من الوحدات السوداء والبيضاء. المحتوى — عنوانك أو نصك أو إعدادات Wi-Fi — يُرمَّز في جزء من الشبكة ككلمات شيفرة بيانات. يضيف تصحيح الأخطاء مجموعة ثانية من كلمات الشيفرة تحسبها خوارزمية Reed-Solomon، بحيث يستطيع الماسح إعادة بناء الرسالة الأصلية رياضياً عندما تكون بعض كلمات الشيفرة مفقودة أو خاطئة.
الفارق الدقيق، ومصدر معظم اللبس، هو ما تنطبق عليه نسب الاسترداد. رقم المواصفة 7–30% هو كسر كلمات الشيفرة التي يمكن محوها قبل فشل إعادة البناء — محسوباً لقارئ مثالي في ظروف مثالية. ليس «7–30% من المربع المرئي». يحمل رمز QR أيضاً ميزات بنيوية بلا حماية تصحيح أخطاء: أنماط محددات ثلاثة، وخطوط توقيت، وكتل معلومات الشكل، ونمط محاذاة واحد على الشبكات الأكبر. الضرر في تلك الميزات يمنع الماسح من توطين الرمز أصلاً، ولا تكرار ينقذ. نتائج اختبار التلف قاست تلك الفجوة مباشرة.
مستويات تصحيح الأخطاء الأربعة
| المستوى | استرداد كلمات الشيفرة (مواصفة) | الوظيفة النموذجية |
|---|---|---|
| L (منخفض) | ~7% | رموز شاشة، طباعة مضبوطة، أصغر شبكة |
| M (متوسط) | ~15% | طباعة عامة: ملصقات، مطويات، تذاكر |
| Q (ربع) | ~25% | شعارات، استخدام معتدل، خارجي نظيف |
| H (عالي) | ~30% | استخدام قاسٍ، طيات، رطوبة، أقصى هامش |
المستويات الأعلى تعني دائماً وحدات أكثر لنفس المحتوى. ولأن تلك الوحدات يجب أن تكون بحد أدنى من الحجم الفيزيائي لتُقرأ، فإن الوحدات الأكثر تعني أيضاً رمزاً مطبوعاً أكبر — موضوع دليل الحجم — أو، بنفس حجم الطباعة، رمزاً يحتاج المسح من مسافة أقرب.
الأحجام المقيسة: طول المحتوى × مستوى التصحيح
بدلاً من اقتباس جدول شبكات نظري، ولدّنا رموزاً حقيقية بنفس المرمّز الذي يوفره هذا الموقع (qrcode الإصدار 1.5.4) وقسنا شبكات الوحدات لأربعة أطوال محتوى بنمط بايت عند كل مستوى:
| طول المحتوى | L | M | Q | H |
|---|---|---|---|---|
| 10 أحرف | 21×21 | 21×21 | 21×21 | 25×25 |
| 50 حرفاً | 29×29 | 33×33 | 37×37 | 41×41 |
| 100 حرف | 37×37 | 41×41 | 49×49 | 57×57 |
| 200 حرف | 53×53 | 57×57 | 65×65 | 77×77 |
قفزان واضحان. أولاً، عقوبة المستوى تتفاقم مع حجم المحتوى: عند 50 حرفاً، الانتقال من L إلى H يغيّر الشبكة من 29×29 (841 وحدة) إلى 41×41 (1681) — نحو ضعف السطح لنفس البيانات. ثانياً، العبارة الشائعة «H يضيف 30% فقط» تشير إلى قدرة الاسترداد، لا الحجم: عند 100 حرف، H هو 57×57 أمام 37×37 عند L — أكثر من ضعف مساحة الوحدات.
التحمل الواقعي المقيس لا الأساطير
العبارة الشائعة «يمكنك إزالة 30% من رمز QR ويظل يعمل» يجب أن تموت. اختبرناها بتوليد عنوان حقيقي بطول 29 حرفاً عند كل المستويات الأربعة وفك الشيفرة بعد تطبيق تلف مضبوط؛ المنهجية الكاملة وبروتوكول 24 تجربة لكل خلية في اختبار التلف. الجدول الرئيس من تلك التجربة — مربع أسود مركزي، بالطريقة التي يضع بها معظم الناس شعارهم:
| الشعار (مركزي) | L | M | Q | H |
|---|---|---|---|---|
| 5% من مساحة الرمز | 0% | 100% | 100% | 100% |
| 10% من مساحة الرمز | 0% | 0% | 100% | 100% |
| 15% من مساحة الرمز | 0% | 0% | 0% | 100% |
| 20% من مساحة الرمز | 0% | 0% | 0% | 0% |
ثلاث نتائج تستحق الاستيعاب:
- المستوى L ليس له هامش عملي تقريباً. حتى علامة مركزية 5% قتلته. L للرموز الرقمية قصيرة العمر، نقطة فوق السطر.
- المستويات لا تتحرك بخطوات 7–15–25–30% عملياً. قياساتنا تُظهر نحو ثلث النظري إلى نصفه للتلف الموضعي: تعامل M مع نحو 5–10%، وQ نحو 10%، وH نحو 15% من الضرر المركزي قبل الفشل.
- وضع الشعار في المركز هو الخيار الأأمن المتاح — كان مربعنا المركزي هو النموذج الوحيد حيث أظهر Q وH تدرجاً واضحاً. العلامات العشوائية المتناثرة، أو لطخة تلمس محدداً أو نمط المحاذاة السفلي الأيمن، قد تقتل حتى H بنسب أدنى بكثير. الجداول الكاملة، بما فيها انهيار الزاوية عند 8%، موجودة في مقال تحمل التلف.
اختيار مستواك بصدق
L — رقمي ومؤقت فقط
إذا ظهر الرمز على شاشة أو في توقيع بريد أو على شريحة ولن يُطبع أبداً، فـ L هو الخيار الصحيح: أصغر شبكة، أسرع مسحاً، أكثف طباعة. لحظة دخول الحبر أو البلى أو الشعار الصورة، يُستبعد L.
M — الافتراضي القياسي للطباعة
للمطويات والملصقات والتذاكر والقوائم في ظروف جيدة، M هو الافتراضي المعقول: تكرار معتدل مع أصغر حجم مطبوع عملي. اختبار الخربشة الداخلية أخرج المحتوى نحو 17% من المرات عند تلف موضعي 10%، وهو ما يناسب واقع «ملطخ أحياناً لكن نظيف فيما عدا ذلك» لمعظم المطبوعات.
Q — عندما تضيف شعاراً أو تتوقع استخداماً معتدلاً
قياس الشعار المركزي وضع حد Q العملي عند نحو 10% من مساحة الرمز المغطاة، ما يستوعب شارة أو علامة كلامية متواضعة براحة. أي تصميم يمر فوق المركز يجب أن يبدأ من Q وينتقل إلى H إذا كانت الشارة كبيرة.
H — المتانة على حساب الكثافة
H هو المستوى الذي نجا من شعار مركزي 15%، وهو ما تريد للافتات الخارجية أو التغليف المطوي أو أي شيء سيُمسح بعد حياة قاسية. اقبل الشبكة الأكبر؛ موثوقية المسح الإضافية هي بيت القصيد.
كيف تختار مستواك في 5 خطوات
الخطوة 1 — قرر ما يجب أن ينجو منه الرمز. اكتب أسوأ حالة واقعية: شعار في المركز، خط كي في المنتصف، رطوبة، شمس، ركن رمز آخر متداخل مع ركنك. «أريده أن يمسح» ليست مواصفة؛ «يجب أن يمسح بعد أن تُكدَّس العلبة وتُسحق ويغبرها الغبار مع ملصق تغطي 10% من المركز» مواصفة. هذه الجملة وحدها تقرر هل تخرج من هنا بـ M أم H.
الخطوة 2 — اضبط الحجم الفيزيائي من مسافة المسح. استخدم قاعدة 10:1 من دليل الحجم: رمز يُمسح من 50 سم يحتاج نحو 5 سم عرضاً على الأقل. المستوى الأعلى يكبر ذلك الحد الأدنى بأجل حقيقي لأن عدد الوحدات ينمو، لذا قرر أصغر مسافة مسح مطلوبة قبل الالتزام بمستوى.
الخطوة 3 — ولّد المحتوى الحقيقي بالحجم الحقيقي. وّلد على مولد QR المجاني في هذا الموقع باستخدام العنوان النهائي أو النص — لا نصاً مؤقتاً — مع ضبط تصحيح الأخطاء على مستواك المرشح. صدّر بدقة 300 DPI إن كان سيُطبع، أو كـ SVG لتبقى الوحدات حادة في أي حجم.
الخطوة 4 — شغّل اختبارات التلف التي تواجهها موادك فعلاً. اختبر مع أرقام تحمل التلف: غطِّ المركز بمربع بنفس الحجم النسبي لشعارك وتحقق؛ ولطّخ الزاوية السفلية اليمنى؛ وإن كان الطي حقيقياً، ولّد وامسح بعد طية فيزيائية. تشغيل واحد من 24 تجربة يساوي أكثر من أي جدول قرأته، بما فيها جداول هذا الدليل.
الخطوة 5 — ارتقِ مستوى حتى ينجح، ثم توقف. إذا فشل M في شرطك المعلن، أعد التوليد عند Q وأعد اختبار السيناريو نفسه، ثم H. قياساتنا تتنبأ بأنك سترى قفزة متدرجة لا منحنى أملس، فيسهل العثور على المستوى الحدّي. عندما ينجح الرمز من أسوأ حالاته، فذلك هو المستوى الذي تُرسله — لا الناتج أجمل شبكة.
استكشاف الأخطاء
الرمز يفشل رغم اختيار H. إذاً فشلك ليس قدرة تصحيح على الأغلب — تحقق من تلف نمط محدد أو خطوط توقيت أو نمط المحاذاة السفلي الأيمن، لا يحميها Reed-Solomon. أعِد تشغيل نموذجي الزاوية والعشوائي من اختبار التلف على رمزك بالضبط.
رمز المطبوع أكبر لكنه ما يزال لا يمسح. رفع المستوى جعل الشبكة أكثف؛ إذا أبقيت نفس الحجم المطبوع، صغرت كل وحدة وقد لا تميّزها الكاميرا بعد الآن. أعد فحص الحجم المطلوب عند العدد الجديد للوحدات باستخدام دليل الحجم بدلاً من افتراض أنه سيتصرف بالمثل.
قارئ QR يقول «غير صالح» رغم أن كل شيء يبدو نظيفاً. تحقق أيضاً من وجود منطقة صمت صالحة (أربع وحدات فراغ على كل الأوجه)، وأن الرمز غير معكوس أو مقلوب أو مَصدَّر من لقطة شاشة ضغطت الأطراف.
يتوقف عن المسح بعد تعرض شديد للأشعة فوق البنفسجية أو تغطية طويلة بالشعار. لهذا تحديداً لا ننشر أرقام «عمر بالشهور»: التحمل الفعلي يعتمد على الحبر والركيزة والمناخ. إذا كان التعرض عاملاً، اختر H، واختر عينة بالتقادم الفيزيائي (تعرض UV، خدش، ماء) قبل الإنتاج، بنفس بروتوكول المسح.
الأسئلة الشائعة
ماذا تعني 7%/15%/25%/30% فعلاً؟ إنها سعة محو كلمات الشيفرة في المواصفة. في قياساتنا للتلف الواقعي، الهامش العملي كان نحو ثلث إلى نصف تلك الأرقام للضرر المركزي الموضعي — ونحو الصفر للضرر الذي يلمس ميزات بنيوية.
هل يعني تصحيح الأخطاء الأعلى دائماً رمزاً أكبر؟ ليس دائماً في عدد الوحدات للمحتويات القصيرة (10 أحرف قاست شبكات 21×21 متطابقة عند L/M/Q)، لكنه يكاد يكون عالمياً بحلول نمو المحتوى: عند 100 حرف، قاس H شبكة 57×57 أمام 37×37 عند L — أكثر من ضعف السطح.
ما المستوى الذي يضبطه أغلب المولدات افتراضياً؟ M هو الافتراضي الشائع. في مولد هذا الموقع يمكنك اختيار أي مستوى؛ ابدأ من M واصعد إن أضاف تصميمك شعاراً أو احتمال استخدام قاسٍ.
هل يمكنني تغيير المستوى بعد التوليد؟ فقط بإعادة التوليد — المستوى محفور في الشبكة. أعِد التوليد بنفس المحتوى عند المستوى الجديد؛ العنوان أو النص لا يتغير، يتبدل النمط الفيزيائي فقط.
هل يجب أن أستخدم H دائماً؟ H يمنح أكبر هامش لكن أكبر شبكة، ما قد يفرض حجماً مطبوعاً أكبر أو مسافة مسح عملية أقصر. احفظ H للحاجات المتانة الحقيقية واستخدم M للطباعة النظيفة، تماماً كما يقترح جدول القرار أعلاه.
ضع المستوى الصحيح على رمزك
تصحيح الأخطاء هو الفرق بين رمز يعيش وآخر يحرجك عند المنضدة. M يغطي الطباعة النظيفة، وQ يغطي الشعارات، وH يغطي الاستخدام القاسي في العالم الحقيقي، وL رقمي فقط. اقرن المستوى بحجم طباعة موثق واختبار تلف سريع على تصميمك الفعلي، وسيستمر رمزك في المسح طويلاً بعد لحظة الصدمة الأولى.
ولّد رمز QR بالمستوى الذي اخترته — اضبط L أو M أو Q أو H على المولد، وصدّر بدقة الطباعة، واختبر تصميمك تحت سيناريو أسوأ الحالات.