رمز النقطة

DotCode هو رمز شريطي ثنائي الأبعاد (2D) تم ابتكاره عام 2008 [ 1 ] بواسطة شركة Hand Held Products كبديل للرمز القديم Code 128. وقد أصدرته جمعية التعريف التلقائي والتنقل (AIM) تحت مسمى "مواصفات رموز ISS DotCode 4.0" [ 2 ] . يتكون DotCode من نقاط سوداء دائرية متباعدة ومساحات بيضاء على خلفية بيضاء. في حالة الخلفية السوداء، يمكن أن تكون النقاط بيضاء. طُوّر DotCode للاستخدام مع الطابعات الصناعية عالية السرعة [ 3 ] حيث قد تكون دقة الطباعة منخفضة. ولأن DotCode، وفقًا للمعيار، لا يتطلب عناصر معقدة مثل الخطوط المتصلة أو الأشكال الخاصة، فإنه يُمكن تطبيقه باستخدام النقش بالليزر أو المثاقب الصناعية.
يمكن تمثيل DotCode كمصفوفة مستطيلة بأبعاد دنيا تساوي 5 أضعاف حجم كل ضلع. لا يحد المعيار [ 4 ] من الحجم الأقصى لـ DotCode (كما هو الحال في Code 128)، ولكن يُوصى عمليًا بحد أقصى 100×99 [ 2 ] : 5.2.1.4، والذي يمكنه ترميز حوالي 730 رقمًا، أو 366 حرفًا أبجديًا رقميًا، أو 304 بايت.
يُتيح DotCode، كامتدادٍ لرمز Code 128 الشريطي، ترميزًا أكثر إحكامًا لمصفوفة بيانات 8 بت، ودعمًا لترميز Unicode مع ميزة تفسير القنوات الموسعة . إضافةً إلى ذلك، يوفر DotCode كثافة بيانات أعلى بكثير، وتصحيح أخطاء ريد-سولومون ، مما يسمح باستعادة رموز DotCode التالفة جزئيًا. مع ذلك، فإن التطبيق الرئيسي لـ DotCode، كما هو الحال في Code 128، هو ترميز فعال لبيانات GS1 [ 5 ] ، المستخدمة في صناعة الشحن والتغليف العالمية.
التاريخ والمعايير
تم ابتكار رمز DotCode الشريطي في عام 2008 [ 1 ] على يد الدكتور أندرو لونغاكر من شركة Hand Held Products ، وتم توحيده في عام 2009 [ 6 ] من قبل AIM تحت مسمى "مواصفات رمزية الرمز الشريطي - DotCode". [ 7 ] وفي عام 2019، تمت مراجعة DotCode تحت مسمى "مواصفات رمزية ISS DotCode 4.0". [ 2 ]
تم تسجيل مجموعة من براءات الاختراع المتعلقة بتشفير وفك تشفير DotCode:
- براءة اختراع الولايات المتحدة US20090200386A1 من شركة Hand Held Products Inc "رموز ثنائية الأبعاد قابلة للقراءة آليًا وقابلة للطباعة عند الطلب" [ 1 ]
- براءة اختراع الولايات المتحدة US20090200386A1 من قبل Datalogic IP Tech SRL "نظام وطريقة لاستخراج بيانات تدفق البت في الرموز البصرية ثنائية الأبعاد" [ 8 ]
- براءة الاختراع الصينية CN113297872A لشركة Fuzhou Symbol Information Technology Co ltd "طريقة ومعدات تحديد رمز النقطة" [ 9 ]
طلب
يمكن استخدام رمز DotCode الشريطي بنفس طريقة استخدام رمز Code 128 أو أي رمز شريطي ثنائي الأبعاد. ويُستخدم حاليًا بشكل رئيسي لترميز بيانات GS1 في صناعات التبغ [ 10 ] [ 11 ] والمشروبات الكحولية وغير الكحولية [ 12 ] والأدوية والبقالة. ويُعدّ قطاع التبغ التطبيق الرئيسي له حاليًا. [ 13 ] [ 14 ]
تتمثل المزايا الرئيسية لـ DotCode فيما يلي: [ 15 ]
- الدعم الكامل واستبدال مجموعة رموز Code 128 ؛
- ترميز مضغوط لمصفوفة بيانات 8 بت ؛
- دعم يونيكود مع ميزة تفسير القنوات الموسعة ؛
- ترميز فعال لبيانات GS1؛
- تصحيح الخطأ ريد-سولومون
- القدرة على تطبيق الباركود بواسطة طابعات صناعية عالية السرعة وطرق أخرى مثل النقش بالليزر .
تصميم الباركود
يُمثل رمز DotCode البيانات في بنية مستطيلة تتكون من نقاط سوداء دائرية ومساحات بيضاء على خلفية بيضاء، أو نقاط بيضاء دائرية على خلفية سوداء. لا يحتوي رمز DotCode على نمط مُحدد، على عكس الرموز الشريطية ثنائية الأبعاد الأخرى، ويجب اكتشافه باستخدام خوارزميات بطيئة للكشف عن الكتل، مثل مرشح غابور أو تحويل هوف الدائري . تُشفّر جميع البيانات والبيانات الوصفية وكلمات تصحيح الأخطاء في مصفوفة النقاط نفسها، والتي لا يوجد بينها أي اختلاف مرئي.
فيما يلي بعض الأمثلة على لغة دوت كود:
رمز نقطي بعرض 25 وارتفاع 10
رمز نقطي بعرض 23 وارتفاع 22
رمز نقطي بعرض 57 وارتفاع 60

يتكون رمز DotCode من العناصر التالية: [ 2 ] : 5.1
- بتتان قناع ممثلتان في الرسم التخطيطي كنقطتين خضراوين؛
- بتات البيانات (بتات البيانات وبتات تصحيح الأخطاء) التي يجب قراءتها من أعلى إلى أسفل (جانب الباركود الزوجي) ومن اليسار إلى اليمين (جانب الباركود الفردي)؛
- نقاط الزاوية، المميزة باللون الأحمر في الرسم التخطيطي، والتي يمكن استخدامها كبتات بيانات أو بتات حشو (نقاط سوداء)؛
- منطقة هادئة بحجم لا يقل عن ثلاثة أضعاف حجم النقاط.
يتم تمثيل مصفوفة بتات DotCode على النحو التالي: (بتات قناع: M2، M1) (بتات البيانات) (بتات الزاوية، يمكن أن تكون بتات بيانات أو بتات حشو: C1 – C6)
تُشفّر كلمات البيانات في النطاق من 0 إلى 112 بنمط نقاط ثنائية مكون من 5 من 9 [ 2 ] : 5.2، حيث تُشفّر هذه الأنماط من 9 نقاط، 5 منها سوداء و4 بيضاء. أما باقي مصفوفة الباركود (الناتج عن القسمة على 9) فيُملأ ببتات سوداء. [ 2 ] : 5.2.3 تتراوح بتات الحشو من 0 إلى 8. يُمثّل مصفوفة بتات DotCode منطقيًا كما يلي: (بتان للقناع) (كلمات البيانات، 9 بتات لكل كلمة) (بتات الحشو من 0 إلى 8 بتات).
حجم DotCode له المتطلبات التالية: [ 2 ] : 5.1
- يجب أن يكون مجموع عرض وارتفاع رمز DotCode فرديًا:;
- يجب ألا يقل حجم كل جانب عن 5، أما الحد الأقصى فلا يوجد له حد؛
- يُوصى باستخدام العرض والارتفاع بحيث يكون هناك 6 بتات سوداء على الأقل للحشو، حيث تعتمد سعة بتات البيانات على القسمة على 9 أو أكثر أو يساوي 6: [ 2 ] : 5.2.1.4
إخفاء البيانات
لتقليل رموز DotCode الإشكالية، تُخفى كلمات ترميز البيانات لإنشاء تسلسلات مرئية أخرى. يُطبق نمط الإخفاء على تسلسل البيانات فقط ولا يؤثر على كلمات ترميز تصحيح الأخطاء. يحتوي معيار DotCode على 4 أنماط إخفاء مُشفّرة في 2 بت، وتُوضع كأول 2 بت في مصفوفة بتات الرموز. [ 2 ] : 5.2.4
| قناع | أجزاء | مثال على عملية الإخفاء : 099 099 099 099 099 099 099 106 |
|---|---|---|
| 0 | ٠٠ | يُضيف مضاعفات متتالية للصفر إلى كل قيمة، أي لا تغيير (000) 099 099 099 099 099 099 099 106 |
| 1 | 01 | يضيف مضاعفات متتالية للعدد 3 إلى كل قيمة، بتردد 113 (001) 099 102 105 108 111 001 004 007 017 |
| 2 | 10 | يضيف مضاعفات متتالية للعدد 7 إلى كل قيمة، بتردد 113 (002) 099 106 000 007 014 021 028 035 049 |
| 3 | 11 | يضيف مضاعفات متتالية للعدد 17 إلى كل قيمة، بتردد 113 (003) 099 003 020 037 054 071 088 105 016 |
تصحيح الأخطاء
يستخدم DotCode تصحيح خطأ ريد-سولومون [ 2 ] : 5.3 مع قوة أولية للعدد 3 وحقل منتهٍأو GF(113) . تُمثَّل كلمات ترميز البيانات بقيم من 0 إلى 112، وتُحتسب قيمة القناع ككلمة ترميز بيانات رئيسية من 0 إلى 3. وبهذه الطريقة، يكون طول مصفوفة البيانات المحمية (1 + ND). ولكن يتم حساب عدد كلمات ترميز تصحيح الأخطاء من ND فقط. ، حيث ND هي كلمات ترميز البيانات و NC هي كلمات ترميز تصحيح الأخطاء.
الكلمات المشفرة الناتجة NW مع كلمات تصحيح الأخطاء هي: ، حيث NW هي جميع كلمات الترميز: 1 كلمة ترميز القناع + كلمات ترميز البيانات (ND) + كلمات ترميز تصحيح الأخطاء (NC).
لأن تصحيح الأخطاء من نوع ريد-سولومون لا يستطيع تصحيح عدد الكلمات المشفرة التي تزيد عن عدد كثير الحدود، فإذا تجاوز NW 112، يتم تقسيم البيانات إلى كتل تصحيح الأخطاء: ، حيث يمثل B عدد الكتل.
يمكن تقسيم البيانات إلى كتل بالطريقة التالية، لكل كتلة '''n'''، من n يساوي 1 إلى B:
بيانات تصحيح الأخطاءتتم كتابتها بعد كتلة بيانات واحدةفي الوضع المشفر: [ 16 ] (ND)(NC1_1)(NC2_1)(NC3_1)...(NC1_n)(NC2_m)(NC3_k)
التشفير
لا يتقيد حجم ترميز DotCode بمعيار محدد، ولكن الحجم العملي للترميز في الإصدار 100×99، الذي يتضمن 4950 نقطة، يُمكنه ترميز 366 كلمة بيانات خام، أو 730 رقمًا، أو 365 حرفًا أبجديًا رقميًا، أو 304 بايت. تُمثَّل رسالة البيانات في DotCode بكلمات بيانات تتراوح من 0 إلى 112، مُرمَّزة بأنماط نقاط ثنائية من 5 إلى 9.
يدعم DotCode الميزات التالية: [ 2 ] : 5.2.1
- يقوم بتشفير الأرقام أو مجموعة أحرف ASCII (بين 0 و 127) بشكل أصلي باستخدام مجموعات الرموز A و B و C وقيم ASCII الموسعة (من 128 إلى 255) مع الإزاحة العليا؛
- يقوم بتشفير البايتات بشكل فعال (5 بايتات إلى 6 كلمات رمزية) باستخدام المزلاج الثنائي؛
- يقوم بتشفير بيانات GS1؛ [ 5 ]
- يقوم بتشفير رموز يونيكود باستخدام ميزة تفسير القنوات الموسعة ؛
- يدعم ترميز الإلحاق المنظم (باستخدام رموز الباركود المتعددة كمنطقياً كتدفق بيانات واحد)؛
- يدعم ترميز "الماكرو".
| رمز البيانات | رمز البيانات | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| كلمة السر | مجموعة الرموز أ | مجموعة الرموز ب | مجموعة التعليمات البرمجية ج | نمط النقاط | كلمة السر | مجموعة الرموز أ | مجموعة الرموز ب | مجموعة التعليمات البرمجية ج | نمط النقاط | ||||
| شار | ASCII | شار | ASCII | شار | ASCII | شار | ASCII | ||||||
| 0 | إس بي | 32 | إس بي | 32 | ٠٠ | 101010101 | 57 | Y | 89 | Y | 89 | 57 | 110101100 |
| 1 | ! | 33 | ! | 33 | 01 | 010101011 | 58 | Z | 90 | Z | 90 | 58 | 110110010 |
| 2 | " | 34 | " | 34 | 02 | 010101101 | 59 | [ | 91 | [ | 91 | 59 | 110110100 |
| 3 | 8 | 35 | 8 | 35 | 03 | 010110101 | 60 | \ | 92 | \ | 92 | 60 | 111001010 |
| 4 | دولار | 36 | دولار | 36 | 04 | 011010101 | 61 | ] | 93 | ] | 93 | 61 | 111010010 |
| 5 | % | 37 | % | 37 | 05 | 101010110 | 62 | ^ | 94 | ^ | 94 | 62 | 111010100 |
| 6 | و | 38 | و | 38 | 06 | 101011010 | 63 | _ | 95 | _ | 95 | 63 | 001011110 |
| 7 | ' | 39 | ' | 39 | 07 | 101101010 | 64 | نول | ٠٠ | ` | 96 | 64 | 001101110 |
| 8 | ( | 40 | ( | 40 | 08 | 110101010 | 65 | SOH | 01 | أ | 97 | 65 | 001110110 |
| 9 | ) | 41 | ) | 41 | 09 | 010101110 | 66 | STX | 02 | ب | 98 | 66 | 001111010 |
| 10 | * | 42 | * | 42 | 10 | 010110110 | 67 | ETX | 03 | ج | 99 | 67 | 010011110 |
| 11 | + | 43 | + | 43 | 11 | 010111010 | 68 | نهاية الوقت | 04 | د | 100 | 68 | 010111100 |
| 12 | ، | 44 | ، | 44 | 12 | 011010110 | 69 | ENQ | 05 | هـ | 101 | 69 | 011001110 |
| 13 | - | 45 | - | 45 | 13 | 011011010 | 70 | إقرار | 06 | و | 102 | 70 | 011011100 |
| 14 | . | 46 | . | 46 | 14 | 011101010 | 71 | بل | 07 | ز | 103 | 71 | 011100110 |
| 15 | / | 47 | / | 47 | 15 | 100101011 | 72 | بكالوريوس العلوم | 08 | ح | 104 | 72 | 011101100 |
| 16 | 0 | 48 | 0 | 48 | 16 | 100101101 | 73 | HT | 09 | أنا | 105 | 73 | 011110010 |
| 17 | 1 | 49 | 1 | 49 | 17 | 100110101 | 74 | LF | 10 | ج | 106 | 74 | 011110100 |
| 18 | 2 | 50 | 2 | 50 | 18 | 101001011 | 75 | فيرمونت | 11 | ك | 107 | 75 | 100010111 |
| 19 | 3 | 51 | 3 | 51 | 19 | 101001101 | 76 | FF | 12 | ل | 108 | 76 | 100011011 |
| 20 | 4 | 52 | 4 | 52 | 20 | 101010011 | 77 | CR | 13 | م | 109 | 77 | 100011101 |
| 21 | 5 | 53 | 5 | 53 | 21 | 101011001 | 78 | لذا | 14 | ن | 110 | 78 | 100100111 |
| 22 | 6 | 54 | 6 | 54 | 22 | 101100101 | 79 | SI | 15 | o | 111 | 79 | 100110011 |
| 23 | 7 | 55 | 7 | 55 | 23 | 101101001 | 80 | DLE | 16 | ص | 112 | 80 | 100111001 |
| 24 | 8 | 56 | 8 | 56 | 24 | 110010101 | 81 | DC1 | 17 | q | 113 | 81 | 101000111 |
| 25 | 9 | 57 | 9 | 57 | 25 | 110100101 | 82 | DC2 | 18 | ر | 114 | 82 | 101100011 |
| 26 | : | 58 | : | 58 | 26 | 110101001 | 83 | دي سي 3 | 19 | s | 115 | 83 | 101110001 |
| 27 | ; | 59 | ; | 59 | 27 | 001010111 | 84 | دي سي 4 | 20 | ت | 116 | 84 | 110001011 |
| 28 | < | 60 | < | 60 | 28 | 001011011 | 85 | ناك | 21 | u | 117 | 85 | 110001101 |
| 29 | = | 61 | = | 61 | 29 | 001011101 | 86 | سين | 22 | v | 118 | 86 | 110010011 |
| 30 | > | 62 | > | 62 | 30 | 001101011 | 87 | ETB | 23 | w | 119 | 87 | 110011001 |
| 31 | ؟ | 63 | ؟ | 63 | 31 | 001101101 | 88 | يستطيع | 24 | x | 120 | 88 | 110100011 |
| 32 | @ | 64 | @ | 64 | 32 | 001110101 | 89 | EM | 25 | y | 121 | 89 | 110110001 |
| 33 | أ | 65 | أ | 65 | 33 | 010010111 | 90 | فرعي | 26 | z | 122 | 90 | 111000101 |
| 34 | ب | 66 | ب | 66 | 34 | 010011011 | 91 | خروج | 27 | { | 123 | 91 | 111001001 |
| 35 | ج | 67 | ج | 67 | 35 | 010011101 | 92 | FS | 28 | | | 124 | 92 | 111010001 |
| 36 | د | 68 | د | 68 | 36 | 010100111 | 93 | جي إس | 29 | } | 125 | 93 | ٠٠٠١٠١١١١ |
| 37 | هـ | 69 | هـ | 69 | 37 | 010110011 | 94 | آر إس | 30 | ~ | 126 | 94 | ٠٠٠١١٠١١١ |
| 38 | F | 70 | F | 70 | 38 | 010111001 | 95 | نحن | 31 | دل | 127 | 95 | ٠٠٠١١١٠١١ |
| 39 | جي | 71 | جي | 71 | 39 | 011001011 | 96 | Shift B | CRvLF | 13/10 | 96 | ٠٠٠١١١١٠١ | |
| 40 | ح | 72 | ح | 72 | 40 | 011001101 | 97 | 2x Shift B | HT * | 09 | 97 | 001001111 | |
| 41 | أنا | 73 | أنا | 73 | 41 | 011010011 | 98 | 3x Shift B | FS * | 28 | 98 | 001100111 | |
| 42 | ج | 74 | ج | 74 | 42 | 011011001 | 99 | 4x Shift B | GS * | 29 | 99 | 001110011 | |
| 43 | ك | 75 | ك | 75 | 43 | 011100101 | 100 | 5x Shift B | RS * | 30 | (17)...(10) | 001111001 | |
| 44 | ل | 76 | ل | 76 | 44 | 011101001 | 101 | 6x Shift B | Shift A | المزلاج أ | 010001111 | ||
| 45 | م | 77 | م | 77 | 45 | 100101110 | 102 | المزلاج ب | المزلاج أ | Shift B | 011000111 | ||
| 46 | شمال | 78 | شمال | 78 | 46 | 100110110 | 103 | 2x Shift C | 2x Shift C | 2x Shift B | 011100011 | ||
| 47 | يا | 79 | يا | 79 | 47 | 100111010 | 104 | 3x Shift C | 3x Shift C | 3x Shift B | 011110001 | ||
| 48 | P | 80 | P | 80 | 48 | 101001110 | 105 | 4x Shift C | 4x Shift C | 4x Shift B | 100011110 | ||
| 49 | سؤال | 81 | سؤال | 81 | 49 | 101011100 | 106 | المزلاج ج | المزلاج ج | المزلاج ب | 100111100 | ||
| 50 | R | 82 | R | 82 | 50 | 101100110 | 107 | FNC1 | FNC1 | FNC1 | 101111000 | ||
| 51 | S | 83 | S | 83 | 51 | 101101100 | 108 | FNC2 | FNC2 | FNC2 | 110001110 | ||
| 52 | تي | 84 | تي | 84 | 52 | 101110010 | 109 | FNC3 | FNC3 | FNC3 | 110011100 | ||
| 53 | يو | 85 | يو | 85 | 53 | 101110100 | 110 | وردية العمل العليا أ | وردية العمل العليا أ | وردية العمل العليا أ | 110111000 | ||
| 54 | V | 86 | V | 86 | 54 | 110010110 | 111 | وردية العمل العليا ب | وردية العمل العليا ب | وردية العمل العليا ب | 111000110 | ||
| 55 | دبليو | 87 | دبليو | 87 | 55 | 110011010 | 112 | مزلاج ثنائي | مزلاج ثنائي | مزلاج ثنائي | 111001100 | ||
| 56 | X | 88 | X | 88 | 56 | 110100110 | * في مواقع البيانات الرئيسية، تصبح هذه "وحدات ماكرو" | ||||||
هناك ثلاث قواعد رئيسية عند بدء ترميز الرسائل:
- التشفير الافتراضي للبداية هو مجموعة الرموز C؛
- في حالة ترميز رقمين في مجموعة الرموز C (القيمة من 0 إلى 100) في موضع الكلمة المشفرة الأولى، يتم فك تشفير الرسالة كرسالة GS1؛
- إذا تم ترميز FNC1 (تأثير معاكس للرمز 128 ) أو كلمة رمزية أخرى غير رقمية (101 - 112) في موضع كلمة الرمز الأولى، فسيتم فك تشفير الرسالة كرسالة غير GS1.
ترميز البايت الثنائي
يمكن لـ DotCode ترميز مجموعة الأحرف الكاملة ذات 8 بت بطريقتين: [ 2 ] : 5.2.1.1
- مع التحويل العلوي، والذي يتطلب كلمتين رمزيتين على رمز واحد (من 128 إلى 255)؛
- باستخدام Binary Latch، والذي يتطلب رمز Binary Latch واحد و 6 كلمات رمزية على كل 5 بايتات.
يمكن لأوضاع الإزاحة العليا ترميز (128 إلى 255) حرفًا من أحرف ASCII الموسعة في كلمتين رمزيتين مع العودة إلى الوضع السابق:
| نوع المناوبة العليا | الكلمات السرية | ASCII |
|---|---|---|
| وردية العمل العليا أ | من 64 إلى 95 | من 128 إلى 159 |
| وردية العمل العليا ب | من 0 إلى 95 | من 160 إلى 255 |
يمكن لوضع المزلاج الثنائي ترميز مجموعة الأحرف ذات 8 بتات وتسلسلات ECI من 1 إلى 5 رموز. ويستخدم القواعد التالية:
- يتم تقسيم البيانات إلى كتل من 5 رموز (بايت أو معرف وضع ECI) أو 6 كلمات رمزية؛
- يتم تحويل القيم من 0 إلى 258 من خمسة أساس 259 إلى ستة أساس 103؛
- القيم من 0 إلى 255 هي قيم بايت؛
- تشير القيم 256 أو 257 أو 258 إلى ترميز تسلسل ECI في البايتات التالية 1 أو 2 أو 3 بايتات على التوالي؛
- أي كلمات رمزية من نوع DotCode في التسلسل المشفر أعلى من 102 (من 103 إلى 112) مقاطعة أو تغيير الوضع.
| كلمة السر | عملية |
|---|---|
| 103 | مقاطعة لضغط مفتاح Shift + C مرتين |
| 104 | مقاطعة لثلاث مرات Shift + C |
| 105 | مقاطعة لأربع مرات Shift + C |
| 106 | مقاطعة لخمس مرات Shift + C |
| 107 | مقاطعة لمدة 6 مرات Shift + C |
| 108 | مقاطعة لمدة 7 مرات Shift + C |
| 109 | قم بإنهاء العملية باستخدام المزلاج إلى A |
| 110 | قم بإنهاء العملية باستخدام المزلاج إلى B |
| 111 | قم بإنهاء العملية باستخدام المزلاج إلى C |
| 112 | إنهاء بفصل الرموز، وتثبيت على C |
كما نرى في الجدول التالي، يقوم Binary Latch بتشفير البيانات بشكل أكثر فعالية، بدءًا من 3 بايتات.
| عدد البايتات | الكلمات السرية المطلوبة | كلمات سرية تتطلب قفلًا وإرجاعًا | كلمات المرور الخاصة بالوردية العليا مطلوبة |
|---|---|---|---|
| 1 | 2 | 4 | 2 |
| 2 | 3 | 5 | 4 |
| 3 | 4 | 6 | 6 |
| 4 | 5 | 7 | 8 |
| 5 | 6 | 8 | 10 |
ترميز ECI
يمكن لـ DotCode ترميز مؤشر ECI بطريقتين: [ 2 ] : 5.2.1.2
- في وضع المزلاج الثنائي (راجع أعلاه)؛
- مع شخصية FNC2.
يشير FNC2 في أي موضع باستثناء نهاية البيانات إلى إدخال تسلسل ECI - "\nnnnnn"، والذي يمثل قيمًا بين 000000 و811799. يمكن ترميز القيم في كلمة رمزية واحدة أو ثلاث كلمات رمزية:
- في حالة الكلمة المشفرة التالية < 40 يتم ترميز قيمة ECI مباشرة من 000000 إلى 000039؛
- وإلا، فإن الكلمات المشفرة الثلاث التالية ذات القيم A وB وC تشفر قيمة ECI التالية:.
ترميز GS1
أي رقمين في موضع الكلمة المشفرة الأولى يُحددان رمزًا مُشفّرًا وفقًا لـ GS1 (عكس Code 128 ). في حالة الرمز الذي يحتوي على رقمين في موضع الكلمة المشفرة الأولى، يجب فك تشفيره كبيانات عادية، ويجب إدراج FNC1 (المحذوف في الرسالة المُفكّكة) في موضع الكلمة المشفرة الأولى. [ 2 ] : 5.2.1.2 يعمل FNC1 في أي موضع آخر غير الموضع الأول كمُقسّم لمعرّف تطبيق GS1 ويتم فك تشفيره كحرف GS (قيمة ASCII 29).
تُشفّر الكلمة المشفرة 100 في مجموعة الشفرات C تطبيق GS1 AI (17) [ 5 ] ، وتُمثّل الكلمات المشفرة الثلاث التالية تاريخ انتهاء الصلاحية، وتُدرج GS1 AI (10) قبل فك تشفير الكلمات المشفرة الأخرى: (100)(24)(12)(30)(56)(64) -> 17241230105664
وضع الماكرو
يمكن لبعض رموز البيانات من 97 إلى 100 في موضع البيانات الرئيسي في مجموعة الرموز B أن تشفر "وحدات الماكرو". [ 17 ] [ 2 ] : 5.2.1.1 في أي موضع آخر، تشفر هذه الرموز رمز ASCII التالي: (Latch B)(HT) -> [)>RS05GS … RSEoT (Shift B)(HT) -> [)>RS05GS … RSEoT
| كلمة السر | في موضع البيانات الأول | في مواقع البيانات اللاحقة | |
|---|---|---|---|
| شار | ASCII | ||
| 97 | [)>RS05GS ... RSEoT | HT | 09 |
| 98 | [)>RS06GS ... RSEoT | FS | 28 |
| 99 | [)>RS12GS ... RSEoT | جي إس | 29 |
| 100 | [)>RSxx ... EoT حيث يكون الرقمان "xx" قيمة بين 00 و 99. | آر إس | 30 |
| ١. تتضمن هذه التوسعات "الكبيرة" رأسًا وتذييلًا للبيانات. ٢. لترميز HT أو FS أو GS أو RS في موضع البيانات الأول، استخدم مجموعة الترميز A. ٣. تحذف التوسعة الكبيرة للكلمة المشفرة ١٠٠ عمدًا GS من الرأس وRS من التذييل لأنها قد لا تكون صحيحة لبعض قيم "xx". ومع ذلك، يمكن ترميز GS و/أو RS حسب الحاجة. | |||
إلحاق منظم
يُمكن لـ DotCode إنشاء رمز مُركّب، حيث يُمكن دمج البيانات من رموز DotCode مُتعددة منطقيًا. يُمكن تحقيق ذلك باستخدام الرمز FNC2 في آخر موضع للبيانات. عندما يكون FNC2 في آخر موضع للبيانات، [ 2 ] : 5.2.1.2، فإنّ الحرفين السابقين من الرسالة، وهما رقمان وحروف كبيرة بالترتيب من 1 إلى 9 ثم من A إلى Z (للقيم من 10 إلى 35)، يُشيران إلى موضع هذه الرسالة في تسلسل "m من n". على سبيل المثال، الرمز الذي تنتهي رسالته بـ "4 B FNC2" هو الرمز الرابع من بين 11 رمزًا تُشكّل الرسالة كاملةً.
ترميز الأوضاع الخاصة
يشير FNC3 في موضع كلمة الترميز الأول إلى أن الرسالة [ 2 ] : 5.2.1.2 هي تعليمات تهيئة أو إعادة برمجة قارئ الباركود.
يشير وجود FNC3 في أي موضع آخر غير الموضع الأول إلى أنه يجب فصل الرسالة المشفرة منطقيًا إلى رسالتين متميزتين (قبلها وبعدها)؛
حشو البيانات
سعة رموز DotCode هي:
سعة بيانات رموز DotCode هي:
بهذه الطريقة، نحتاج إلى إضافة حشوات إلى كلمات البيانات المشفرة في حال وجود مساحة فارغة. هناك قاعدتان: [ 2 ] : 5.2.3
- يجب إنهاء الوضع الثنائي باستخدام Latch to Code Set A (codeword 109)؛
- في الأوضاع الأخرى، يجب استخدام كلمة المرور 106 (قفل لمجموعة الرموز C / قفل لمجموعة الرموز B).
انظر أيضاً
مراجع
- 1 2 3 أندرو لونغاكر الابن (13 فبراير 2008). "براءة اختراع الولايات المتحدة الأمريكية رقم US20090200386A1 لشركة هاند هيلد برودكتس" "رموز ثنائية الأبعاد قابلة للقراءة آليًا وقابلة للطباعة عند الطلب"" . patents.google.com . مكتب براءات الاختراع والعلامات التجارية بالولايات المتحدة. US20090200386A1.
- 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 "مواصفات رموز ISS DotCode 4.0" . aimglobal.org . AIM Global.
- ↑ "دليل الباركود: رمز النقطة" . barcodeguide.seagullscientific.com .
- ↑ شرح رموز ثنائية الأبعاد: ما مقدار البيانات التي يمكنك تخزينها في رمز DotCode؟ . www.domino-printing.com . 28 فبراير 2024.
- 1 2 3 "معرفات تطبيقات GS1" . www.gs1.org .
- ↑ "تقنية الباركود : رموز المصفوفة ثنائية الأبعاد" . aimglobal.org . مؤرشف من الأصل بتاريخ 2011-11-05.
- ↑ "تكنولوجيا المعلومات - تقنيات التعرف التلقائي على البيانات واستخلاصها - مواصفات رموز الباركود - دوت كود" . aimglobal.org . AIM Global. مؤرشف من الأصل بتاريخ 16-10-2011.
- ↑ إنريكو كامبايولي (2 مايو 2019). "براءة اختراع الولايات المتحدة الأمريكية رقم US20090200386A1 لشركة داتالوجيك آي بي تك إس آر إل: "نظام وطريقة لاستخراج بيانات تدفق البتات في الرموز البصرية ثنائية الأبعاد"" . patents.google.com . مكتب براءات الاختراع والعلامات التجارية بالولايات المتحدة. US20190130236A1.
- ↑ "براءة الاختراع الصينية CN113297872A لشركة Fuzhou Symbol Information Technology Co ltd "طريقة ومعدات تحديد رمز النقطة"" . patents.google.com . الإدارة الوطنية الصينية للملكية الفكرية. 24 أغسطس 2021. CN113297872A.
- ↑ "تقييم أثر GS1 DotCode" (ملف PDF) . inexto.com . 16 مايو 2017.
- ↑ "جميع أجهزة الكمبيوتر المحمولة من CILICO تقرأ رمز Tabacco dot" . linkedin.com .
- ↑ " يوفر الباركود ثنائي الأبعاد المُعدَّل إمكانات واعدة في أسواق المشروبات والتوزيع والتجارة الإلكترونية" . www.packagingdigest.com
- ↑ "أسئلة وأجوبة حول GS1: أين يتم استخدام GS1 DotCode؟" . gs1.org .
- ↑ "اللائحة (الاتحاد الأوروبي) 2018/574 بشأن المعايير الفنية لإنشاء وتشغيل نظام تتبع منتجات التبغ" . eur-lex.europa.eu . 15 ديسمبر 2017.
- ↑ "إنشاء رموز شريطية DotCode في لغة C#" . www.aspose.com .
- ↑ "Zint مكتبة الباركود مفتوحة المصدر: مشفر DotCode على لغة C" . github.com .
- ↑ ISO/IEC (2019). "ISO/IEC 15434:2019 "تكنولوجيا المعلومات: تقنيات التعرف التلقائي على البيانات والتقاطها: صيغة وسائط محولات الإشارة التناظرية إلى الرقمية عالية السعة"" . iso.org . المنظمة الدولية للتوحيد القياسي (ISO). ISO/IEC 15434.
روابط خارجية
- التعرف التلقائي على البيانات والتقاطها
- الرموز الشريطية
- التشفيرات
