منشئ رمز QR لحدث في التقويم
خاص ومحلي 100% — بياناتك لا تغادر متصفحك. رموز QR هذه دائمة ولن تنتهي صلاحيتها أبدا.
إعدادات حدث تقويم
التصميم
أضف شعارا في المركز
تقرأ الصورة في هذه الصفحة وتضمن في الرمز كعنوان data: URL. لا ترفع، وتبقى داخل الملف الذي تنزله.
خيارات تصميم أخرى
النصف الداكن من الرمز. أبقه أغمق من الخلفية بفارق واضح.
يغطي المنطقة الهادئة كما يغطي الفجوات بين الوحدات. والخلفية الشفافة تتركها خارج الملف، فلا يرسم بها شيء.
التباين 11.5:1 بين الوحدات والخلفية.
يحتفظ PNG وWebP بقناة ألفا؛ أما SVG فيحذف مستطيل الخلفية ببساطة. وما يوضع الرمز عليه يصير النصف الفاتح من التباين.
يملأ التدرج الوحدات الداكنة وحدها. وطرفه الأفتح هو ما يحدد التباين الذي تناله الماسحة فعلا، فيجب أن يبقى الطرفان داكنين.
اللون الثاني، ولا يستخدم إلا مع تدرج مختار. ويقاس تباينه إلى جانب الأول.
درجات باتجاه عقارب الساعة من مسح يسار إلى يمين. والتدرج الشعاعي ينتشر من المركز إلى الخارج، فالزاوية للخطي وحده.
الأشكال المدورة تغطي من كل خلية أقل. يبقى المركز مغطى وهو موضع أخذ العينة عند فك الترميز، لكن الطباعة الصغيرة لرمز كثيف تقرأ أوثق بالمربعات.
حلقة أنماط التحديد الثلاثة.
العين داخل كل نمط تحديد.
الهامش الفارغ حول الرمز، مقاسا بالوحدات. و4 هو الحد الأدنى المحدد.
الاسترجاع الأعلى ينجو من تلف أكبر ويكلف سعة، فينتج المحتوى نفسه رمزا أكثف.
يجلس شعار في المركز ويثبت المستوى على H. وحد عرضه يتبع الرمز: 14% على أصغر رمز، و30% على رمز كثيف.
معاينة حية وتصدير
أدخل اسم الفعالية. فهو يصير عنوان المدخل في التقويم.
تصدير
نقطي، للشاشات
أكمل النموذج لتفعيل التنزيلات.
حجم التصدير والنص المرمز
- المحتوى
- لم يرمز شيء بعد
- الرمز
- لم يبن بعد
- الاسترجاع
- M
بانتظار الإدخال
ابن حدث iCalendar كاملا واطبعه. المحتوى المرمز هو مضمون ملف ics نفسه، فيستطيع الهاتف إنشاء الموعد دون تنزيل أي ملف من أي مكان.
عندما يمسحه أحد
تتعرف معظم تطبيقات الكاميرا الحالية على ترويسة BEGIN:VCALENDAR وتعرض إضافة الحدث إلى التقويم، بينما تكتفي ماسحات أبسط بعرض النص كما هو.
محتوى iCalendar، بالضبط
يحمل الرمز كائن RFC 5545 كاملا، لا رابطا إليه. يفتح بـ BEGIN:VCALENDAR، ويحمل VERSION:2.0 و PRODID يعرّف هذا المنشئ، ويلف مكون VEVENT واحدا، ويغلق بـ END:VCALENDAR. وداخل الحدث يجلس UID و DTSTAMP اللذان تفرضهما المواصفة، إلى جانب DTSTART و DTEND و SUMMARY وما ملأته من LOCATION و DESCRIPTION و URL.
وكل سطر محتوى ينتهي بإرجاع سطر ثم تغذية سطر، بهذا الترتيب. والمحللات صارمة في هذا: فالكائن الذي يستخدم تغذية سطر مجردة هو ما يجعل حدثا صحيحا في كل ما عداه يفشل عند الاستيراد. والأسطر التي تتجاوز 75 ثمانية تُطوى بإدراج CRLF متبوعا بمسافة واحدة، ويعيد القارئ ضمها قبل التحليل، ولهذا لا يكسر وصف طويل الكائن.
ولأن الحدث كله يقيم داخل النمط، لا يحتاج الهاتف إلى شبكة لإنشاء الموعد. ويعني هذا أيضا أن الحدث مجمد: فتغيير المكان لاحقا يعني توليد رمز جديد وطباعته، إذ لا يوجد شيء يُحدَّث.
التوقيت المحلي العائم مقابل UTC
في الوضع العائم يكتب DTSTART بصيغة YYYYMMDDTHHMMSS بلا حرف Z في آخره وبلا معامِل TZID. ويسمي RFC 5545 هذا توقيتا عائما، ومعناه ما يقوله بالضبط: 19:00 هي 19:00 على أي جهاز يفتحه، أيا كان مكانه. ولحفل موسيقي أو بسطة في سوق أو يوم مفتوح في مدرسة، هذا هو المطلوب دائما تقريبا، لأن كل من يقرأ الملصق واقف في المنطقة الزمنية نفسها التي فيها المكان.
وفي وضع UTC تكتب الخاصية نفسها بصيغة YYYYMMDDTHHMMSSZ، وحرف Z في آخرها يثبّت اللحظة. فيحول كل جهاز ذلك إلى توقيته المحلي عند الاستيراد، فحدث مضبوط على 14:00 بتوقيت UTC يظهر 15:00 في برلين و09:00 في نيويورك. وهذا هو الخيار الصحيح لندوة عبر الإنترنت، والخيار الخطأ لمهرجان قرية.
والمنطقة المسماة — DTSTART;TZID=Europe/London — هي الاحتمال الثالث في المواصفة، وهذه الأداة لا تقدمه. ففعله على الوجه الصحيح يتطلب تضمين مكون VTIMEZONE مع مجموعة قواعد انتقال التوقيت الصيفي كاملة، وهذا يضيف عدة مئات من البايتات إلى محتوى يجب أن يسع في رمز واحد، والكائن الذي يشير إلى TZID لا يعرّفه كائن غير صالح. والعائم وUTC يغطيان حالات الملصق المطبوع دون تلك التكلفة.
التهريب والأحداث اليومية والحجم
تُهرَّب القيم النصية كما تفرض المواصفة قبل دخولها المحتوى. فالشرطات المائلة العكسية تُهرَّب أولا، ثم الفواصل المنقوطة والفواصل، ثم فواصل الأسطر؛ والتهريب بأي ترتيب آخر يهرّب مرتين الشرطات العكسية التي أدخلتها للتو. أما النقطتان داخل قيمة نصية فتُترك وشأنها — إذ يمنع RFC 5545 صراحة تهريبها، وإن كان RFC 2445 الأقدم يفرضه، ولهذا ما زالت بعض المنشئات المكتوبة يدويا تخطئ فيه.
والحدث الذي يستغرق يوما كاملا يستخدم صيغة التاريخ: DTSTART;VALUE=DATE:20260904. ونهايته حصرية، فاليوم الواحد في 4 سبتمبر يكتب بـ DTEND;VALUE=DATE:20260905. والخطأ في هذا هو ما ينتج حدثا يمتد يوما أقل أو يوما أكثر مما ينبغي.
والحجم هو الحد العملي هنا. فالرمز الواحد يحمل 2,953 بايت على الأكثر عند أدنى مستوى استرجاع، وغلاف التقويم وحده ينفق نحو مئتين قبل أن يبدأ نصك. والوصف الطويل يدفع الرمز إلى إصدار أعلى بوحدات أصغر، وهذا يحتاج طباعة أكبر أو مسحا أقرب. والمعاينة تعرض الإصدار أثناء الكتابة، فراقب حركته.
- الشرطة العكسية تصير \\، والفاصلة المنقوطة تصير \;، والفاصلة تصير \,
- وفاصل السطر يصير الحرفين \n
- والنقطتان لا تُهرَّبان أبدا في القيم النصية في RFC 5545
أسئلة وأجوبة
لماذا يعرض هاتفي جدارا من النص بدل عرض إضافة إلى التقويم؟
لأن الماسحة لم تتعرف على أي رابط فارتدت إلى عرض المحتوى. ومعظم تطبيقات الكاميرا الحالية تكشف ترويسة BEGIN:VCALENDAR وتعرض إنشاء الحدث، لكن ماسحة بسيطة قد لا تعالج غير الروابط. وتطبيق مسح QR مخصص، أو كاميرا الهاتف نفسها بدل تطبيق خارجي، يحل الأمر عادة.
هل يستطيع رمز واحد أن يحمل حدثا متكررا؟
ليس بهذه الأداة. فـ RFC 5545 يعبّر عن التكرار بخاصية RRULE، ومع أن صيغتها مضغوطة، فإن تركيبات الفاصل الزمني وأيام الأسبوع والعدد وتواريخ الاستثناء تحتاج نموذجا خاصا بها لتُدخل بلا أخطاء. وهذه الأداة تبني حدثا واحدا ببداية واحدة ونهاية واحدة.
هل يحمل الحدث تذكيرا أو منبها؟
لا. فمكون VALARM سيضيف بايتات إلى كل رمز خدمة لتفضيل يريد من يمسح الرمز عادة ضبطه بنفسه، وسلوك التذكير الافتراضي يختلف اختلافا حادا بين تطبيقات التقويم. فيحط الموعد في التقويم ويرث ما يطبقه ذلك التقويم من افتراضي.
ماذا يحدث إن مسح شخصان الرمز المطبوع نفسه؟
يحصل كل منهما على موعد في تقويمه هو. ويشتق UID من تفاصيل الحدث، فهو السلسلة نفسها في النسختين — وهذا صحيح، فالحدث واحد — لكن النسختين مستقلتان. فلا دعوة، ولا قائمة حضور، ولا سبيل لتغيير أحدهما أن يصل إلى أحد.
كيف يعمل رمز QR الثابت
كل رمز على هذا الموقع ثابت: المحتوى مكتوب داخل الوحدات السوداء والبيضاء نفسها. لا يبحث عن شيء عند القراءة، ولا يشارك فيه أي خادم لنا، ولا يسند الرمز المطبوع أي اشتراك. والخاصية نفسها هي الحد: ما إن يطبع حتى يتعذر تغيير ما يحمله.
ثم تقرر ثلاثة أشياء هل يقرأ الرمز المطبوع: كم بايتا بلغ المحتوى، وأي مستوى استرجاع يمتص التلف، وكم يصير عرض الوحدة الواحدة على الورق. وتعالج هذه الأدلة كلا منها بالأرقام.