رمز النقطة

مثال على لغة البرمجة النقطية

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 ]

تصميم الباركود

يُمثل رمز DotCode البيانات في بنية مستطيلة تتكون من نقاط سوداء دائرية ومساحات بيضاء على خلفية بيضاء، أو نقاط بيضاء دائرية على خلفية سوداء. لا يحتوي رمز DotCode على نمط مُحدد، على عكس الرموز الشريطية ثنائية الأبعاد الأخرى، ويجب اكتشافه باستخدام خوارزميات بطيئة للكشف عن الكتل، مثل مرشح غابور أو تحويل هوف الدائري . تُشفّر جميع البيانات والبيانات الوصفية وكلمات تصحيح الأخطاء في مصفوفة النقاط نفسها، والتي لا يوجد بينها أي اختلاف مرئي.

فيما يلي بعض الأمثلة على لغة دوت كود:

بنية رمز DotCode

يتكون رمز 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 فرديًا:(دبليو+ح)(تعديل2)=1{\displaystyle (W+H){\pmod {2}}=1};
  • يجب ألا يقل حجم كل جانب عن 5، أما الحد الأقصى فلا يوجد له حد؛
  • يُوصى باستخدام العرض والارتفاع بحيث يكون هناك 6 بتات سوداء على الأقل للحشو، حيث تعتمد سعة بتات البيانات على القسمة على 9 أو أكثر أو يساوي 6: [ 2 ] : 5.2.1.46(((دبليو*ح)/2)-2)(تعديل9){\displaystyle 6<=(((العرض*الارتفاع)/2)-2){\pmod {9}}}

إخفاء البيانات

لتقليل رموز 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
101يضيف مضاعفات متتالية للعدد 3 إلى كل قيمة، بتردد 113 (001) 099 102 105 108 111 001 004 007 017
210يضيف مضاعفات متتالية للعدد 7 إلى كل قيمة، بتردد 113 (002) 099 106 000 007 014 021 028 035 049
311يضيف مضاعفات متتالية للعدد 17 إلى كل قيمة، بتردد 113 (003) 099 003 020 037 054 071 088 105 016

تصحيح الأخطاء

يستخدم DotCode تصحيح خطأ ريد-سولومون [ 2 ] : 5.3 مع قوة أولية للعدد 3 وحقل منتهٍF113{\displaystyle \mathbb {F} _{113}}أو GF(113) . تُمثَّل كلمات ترميز البيانات بقيم من 0 إلى 112، وتُحتسب قيمة القناع ككلمة ترميز بيانات رئيسية من 0 إلى 3. وبهذه الطريقة، يكون طول مصفوفة البيانات المحمية (1 + ND). ولكن يتم حساب عدد كلمات ترميز تصحيح الأخطاء من ND فقط. شمالج=3+(شمالد/2){\displaystyle NC=3+(ND/2)}، حيث ND هي كلمات ترميز البيانات و NC هي كلمات ترميز تصحيح الأخطاء.

الكلمات المشفرة الناتجة NW مع كلمات تصحيح الأخطاء هي: شمالدبليو=(1+شمالد)+شمالج{\displaystyle NW=(1+ND)+NC}، حيث NW هي جميع كلمات الترميز: 1 كلمة ترميز القناع + كلمات ترميز البيانات (ND) + كلمات ترميز تصحيح الأخطاء (NC).

لأن تصحيح الأخطاء من نوع ريد-سولومون لا يستطيع تصحيح عدد الكلمات المشفرة التي تزيد عن عدد كثير الحدود، فإذا تجاوز NW 112، يتم تقسيم البيانات إلى كتل تصحيح الأخطاء: ب=(شمالدبليو+111)/112{\displaystyle B=(NW+111)/112}، حيث يمثل B عدد الكتل.

يمكن تقسيم البيانات إلى كتل بالطريقة التالية، لكل كتلة '''n'''، من n يساوي 1 إلى B:

  1. شمالد(بلoجك)=((1+شمالد)-(ن-1)+(ب-1))/ب{\displaystyle ND(block)=((1+ND)-(n-1)+(B-1))/B}
  2. شمالدبليو(بلoجك)=(شمالدبليو-(ن-1)+(ب-1))/ب{\displaystyle NW(block)=(NW-(n-1)+(B-1))/B}
  3. شمالج(بلoجك)=شمالدبليو(بلoجك)-شمالد(بلoجك){\displaystyle NC(block)=NW(block)-ND(block)}

بيانات تصحيح الأخطاءشمالج{\displaystyle NC}تتم كتابتها بعد كتلة بيانات واحدةشمالد{\displaystyle ND}في الوضع المشفر: [ 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 ]
  • يقوم بتشفير رموز يونيكود باستخدام ميزة تفسير القنوات الموسعة ؛
  • يدعم ترميز الإلحاق المنظم (باستخدام رموز الباركود المتعددة كمنطقياً كتدفق بيانات واحد)؛
  • يدعم ترميز "الماكرو".
مجموعة أحرف DotCode
رمز البياناترمز البيانات
كلمة السرمجموعة الرموز أمجموعة الرموز بمجموعة التعليمات البرمجية جنمط النقاطكلمة السرمجموعة الرموز أمجموعة الرموز بمجموعة التعليمات البرمجية جنمط النقاط
شارASCIIشارASCIIشارASCIIشارASCII
0إس بي32إس بي32٠٠10101010157Y89Y8957110101100
1!33!330101010101158Z90Z9058110110010
2"34"340201010110159[91[9159110110100
38358350301011010160\92\9260111001010
4دولار36دولار360401101010161]93]9361111010010
5%37%370510101011062^94^9462111010100
6و38و380610101101063_95_9563001011110
7'39'390710110101064نول٠٠`9664001101110
8(40(400811010101065SOH01أ9765001110110
9)41)410901010111066STX02ب9866001111010
10*42*421001011011067ETX03ج9967010011110
11+43+431101011101068نهاية الوقت04د10068010111100
12،44،441201101011069ENQ05هـ10169011001110
13-45-451301101101070إقرار06و10270011011100
14.46.461401110101071بل07ز10371011100110
15/47/471510010101172بكالوريوس العلوم08ح10472011101100
160480481610010110173HT09أنا10573011110010
171491491710011010174LF10ج10674011110100
182502501810100101175فيرمونت11ك10775100010111
193513511910100110176FF12ل10876100011011
204524522010101001177CR13م10977100011101
215535532110101100178لذا14ن11078100100111
226546542210110010179SI15o11179100110011
237557552310110100180DLE16ص11280100111001
248568562411001010181DC117q11381101000111
259579572511010010182DC218ر11482101100011
26:58:582611010100183دي سي 319s11583101110001
27;59;592700101011184دي سي 420ت11684110001011
28<60<602800101101185ناك21u11785110001101
29=61=612900101110186سين22v11886110010011
30>62>623000110101187ETB23w11987110011001
31؟63؟633100110110188يستطيع24x12088110100011
32@64@643200111010189EM25y12189110110001
33أ65أ653301001011190فرعي26z12290111000101
34ب66ب663401001101191خروج27{12391111001001
35ج67ج673501001110192FS28|12492111010001
36د68د683601010011193جي إس29}12593٠٠٠١٠١١١١
37هـ69هـ693701011001194آر إس30~12694٠٠٠١١٠١١١
38F70F703801011100195نحن31دل12795٠٠٠١١١٠١١
39جي71جي713901100101196Shift BCRvLF13/1096٠٠٠١١١١٠١
40ح72ح7240011001101972x Shift BHT *0997001001111
41أنا73أنا7341011010011983x Shift BFS *2898001100111
42ج74ج7442011011001994x Shift BGS *2999001110011
43ك75ك75430111001011005x Shift BRS *30(17)...(10)001111001
44ل76ل76440111010011016x Shift BShift Aالمزلاج أ010001111
45م77م7745100101110102المزلاج بالمزلاج أShift B011000111
46شمال78شمال78461001101101032x Shift C2x Shift C2x Shift B011100011
47يا79يا79471001110101043x Shift C3x Shift C3x Shift B011110001
48P80P80481010011101054x Shift C4x Shift C4x Shift B100011110
49سؤال81سؤال8149101011100106المزلاج جالمزلاج جالمزلاج ب100111100
50R82R8250101100110107FNC1FNC1FNC1101111000
51S83S8351101101100108FNC2FNC2FNC2110001110
52تي84تي8452101110010109FNC3FNC3FNC3110011100
53يو85يو8553101110100110وردية العمل العليا أوردية العمل العليا أوردية العمل العليا أ110111000
54V86V8654110010110111وردية العمل العليا بوردية العمل العليا بوردية العمل العليا ب111000110
55دبليو87دبليو8755110011010112مزلاج ثنائيمزلاج ثنائيمزلاج ثنائي111001100
56X88X8856110100110* في مواقع البيانات الرئيسية، تصبح هذه "وحدات ماكرو"

هناك ثلاث قواعد رئيسية عند بدء ترميز الرسائل:

  • التشفير الافتراضي للبداية هو مجموعة الرموز 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 الموسعة في كلمتين رمزيتين مع العودة إلى الوضع السابق:

ترميز DotCode Upper Shift
نوع المناوبة العلياالكلمات السرية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) مقاطعة أو تغيير الوضع.
كلمات ترميز DotCode الثنائية غير البيانات
كلمة السرعملية
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 بايتات.

كفاءة الوضع الثنائي في DotCode
عدد البايتاتالكلمات السرية المطلوبةكلمات سرية تتطلب قفلًا وإرجاعًاكلمات المرور الخاصة بالوردية العليا مطلوبة
1242
2354
3466
4578
56810

ترميز ECI

يمكن لـ DotCode ترميز مؤشر ECI بطريقتين: [ 2 ] : 5.2.1.2

  • في وضع المزلاج الثنائي (راجع أعلاه)؛
  • مع شخصية FNC2.

يشير FNC2 في أي موضع باستثناء نهاية البيانات إلى إدخال تسلسل ECI - "\nnnnnn"، والذي يمثل قيمًا بين 000000 و811799. يمكن ترميز القيم في كلمة رمزية واحدة أو ثلاث كلمات رمزية:

  • في حالة الكلمة المشفرة التالية < 40 يتم ترميز قيمة ECI مباشرة من 000000 إلى 000039؛
  • وإلا، فإن الكلمات المشفرة الثلاث التالية ذات القيم A وB وC تشفر قيمة ECI التالية:(أ-40)*12769+ب*113+ج+40{\displaystyle (A-40)*12769+B*113+C+40}.

ترميز 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

مجموعة رموز DotCode B: كلمات رمزية ثنائية الوظيفة
كلمة السرفي موضع البيانات الأولفي مواقع البيانات اللاحقة
شارASCII
97[)>RS05GS ... RSEoTHT09
98[)>RS06GS ... RSEoTFS28
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 هي: شمالدبليو=((ح*دبليو)/2-2)(تعديل9)){\displaystyle NW=((H*W)/2-2){\pmod {9}})}

سعة بيانات رموز DotCode هي: شمالد=(شمالدبليو-3)-(شمالدبليو-3)/3{\displaystyle ND=(NW-3)-(NW-3)/3}

بهذه الطريقة، نحتاج إلى إضافة حشوات إلى كلمات البيانات المشفرة في حال وجود مساحة فارغة. هناك قاعدتان: [ 2 ] : 5.2.3

  • يجب إنهاء الوضع الثنائي باستخدام Latch to Code Set A (codeword 109)؛
  • في الأوضاع الأخرى، يجب استخدام كلمة المرور 106 (قفل لمجموعة الرموز C / قفل لمجموعة الرموز B).

انظر أيضاً

مراجع

  1. 1 2 3 أندرو لونغاكر الابن (13 فبراير 2008). "براءة اختراع الولايات المتحدة الأمريكية رقم US20090200386A1 لشركة هاند هيلد برودكتس" "رموز ثنائية الأبعاد قابلة للقراءة آليًا وقابلة للطباعة عند الطلب"" . patents.google.com . مكتب براءات الاختراع والعلامات التجارية بالولايات المتحدة. US20090200386A1.
  2. 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.
  3. "دليل الباركود: رمز النقطة" . barcodeguide.seagullscientific.com .
  4. شرح رموز ثنائية الأبعاد: ما مقدار البيانات التي يمكنك تخزينها في رمز DotCode؟ . www.domino-printing.com . 28 فبراير 2024.
  5. 1 2 3 "معرفات تطبيقات GS1" . www.gs1.org .
  6. "تقنية الباركود : رموز المصفوفة ثنائية الأبعاد" . aimglobal.org . مؤرشف من الأصل بتاريخ 2011-11-05. 
  7. "تكنولوجيا المعلومات - تقنيات التعرف التلقائي على البيانات واستخلاصها - مواصفات رموز الباركود - دوت كود" . aimglobal.org . AIM Global. مؤرشف من الأصل بتاريخ 16-10-2011.
  8. إنريكو كامبايولي (2 مايو 2019). "براءة اختراع الولايات المتحدة الأمريكية رقم US20090200386A1 لشركة داتالوجيك آي بي تك إس آر إل: "نظام وطريقة لاستخراج بيانات تدفق البتات في الرموز البصرية ثنائية الأبعاد"" . patents.google.com . مكتب براءات الاختراع والعلامات التجارية بالولايات المتحدة. US20190130236A1.
  9. "براءة الاختراع الصينية CN113297872A لشركة Fuzhou Symbol Information Technology Co ltd "طريقة ومعدات تحديد رمز النقطة"" . patents.google.com . الإدارة الوطنية الصينية للملكية الفكرية. 24 أغسطس 2021. CN113297872A.
  10. "تقييم أثر GS1 DotCode" (ملف PDF) . inexto.com . 16 مايو 2017.
  11. "جميع أجهزة الكمبيوتر المحمولة من CILICO تقرأ رمز Tabacco dot" . linkedin.com .
  12. " يوفر الباركود ثنائي الأبعاد المُعدَّل إمكانات واعدة في أسواق المشروبات والتوزيع والتجارة الإلكترونية" . www.packagingdigest.com
  13. "أسئلة وأجوبة حول GS1: أين يتم استخدام GS1 DotCode؟" . gs1.org .
  14. "اللائحة (الاتحاد الأوروبي) 2018/574 بشأن المعايير الفنية لإنشاء وتشغيل نظام تتبع منتجات التبغ" . eur-lex.europa.eu . 15 ديسمبر 2017.
  15. "إنشاء رموز شريطية DotCode في لغة C#" . www.aspose.com .
  16. "Zint مكتبة الباركود مفتوحة المصدر: مشفر DotCode على لغة C" . github.com .
  17. ISO/IEC (2019). "ISO/IEC 15434:2019 "تكنولوجيا المعلومات: تقنيات التعرف التلقائي على البيانات والتقاطها: صيغة وسائط محولات الإشارة التناظرية إلى الرقمية عالية السعة"" . iso.org . المنظمة الدولية للتوحيد القياسي (ISO). ISO/IEC 15434.