تعلم فن الطباعة
الطباعة تعني ترتيب النص على الصفحة: الحجم والوزن والتباعد وطول السطر. واختيار الخط واحد من هذه القرارات فقط، وأقلها أثرا عمليا؛ فصفحة بخط عادي وسلم صحيح تُقرأ دائما أفضل من صفحة بخط جميل وسلم مهمل.
- الدرس 4 من 12
- مبتدئ
- مجاني، دون تسجيل
درجات السلم، من النص الصغير إلى عنوان الصفحة
-
1
نص صغير، ٠.٨٥ rem
مسار التنقل وحواشي الأشكال. كل ما يُقرأ ولا يضر ألا يُقرأ.
-
2
نص المتن، ١.٠٦٢٥ rem
الدرجة التي تُشتق منها البقية. صحّح هذه أولا ثم ما عداها.
-
3
عنوان فرعي، ١.١٥ إلى ١.٤ rem
أصغر فرق يظل يُقرأ كعنوان. وأقل من ذلك لا يبدو عنوانا.
-
4
عنوان قسم، ١.٥ إلى ٢.٢ rem
الدرجة التي تعطي صفحة طويلة بنيتها. ومسافتها العليا يجب أن تفوق السفلى.
-
5
عنوان الصفحة، ٢ إلى ٣.٣ rem
واحد في كل صفحة. فإن كان لديك اثنان فالمشكلة ليست في السلم بل في بنية الصفحة.
الأرقام من قالب هذا الموقع لا من معيار؛ والذي ينتقل هو ثبات النسب لا القيم نفسها. والعناوين مكتوبة بـclamp، فكل منها مجال لا رقم واحد.
آخر مراجعة: تُراجع الحقائق وأسماء الأدوات في هذا الدرس مقابل مصادرها في هذا التاريخ.
الطباعة ترتيب للنص لا اختيار لخط
أول ما ينبغي أن يوضع جانبا هو فكرة أن العمل ينتهي بعثورك على خط جيد. الطباعة هي مجموعة القرارات التي تُتخذ بعد اختيار الخط، وهي عمليا أربعة: الحجم والوزن والتباعد وطول السطر.
وأسهل طريقة لرؤية ذلك تجربة. خذ صفحة تحبها وبدّل خطها بخط نظام عادي. ستظل الصفحة تعمل. ثم افعل العكس: أبقِ الخط، واجعل كل الأحجام واحدا، وانزع المسافات. ستنهار الصفحة. فالذي كان يمسكها لم يكن الخط قط.
وموقفنا بعد سنوات من العمل على مواقع فارسية أصرح من ذلك: في أكثر المشاريع تكون قائمة الخطوط الصالحة قصيرة إلى حد أن الاختيار يتم من تلقائه. فعدد العائلات التي تملك ترخيص ويب وأوزانا كافية وأرقاما فارسية صحيحة ليس كبيرا بما يستحق أسبوعا من وقت أحد. ذلك الأسبوع ملك للقرارات الأربعة الأخرى.
وشيء تركه هذا الدرس عمدا لأن له درسه الخاص: كل ما يخص الخط الفارسي، من اتصال الحروف إلى نصف المسافة والأرقام. وقد فُتح ذلك النقاش في الطباعة الفارسية، وبدونه لا يكتمل هذا الدرس لموقع فارسي.
ما الذي يجعل الخط مقروءا؟
القراءة ليست ذوقا بل حفنة خصائص قابلة للقياس. وأهمها ارتفاع الإكس: ارتفاع الحرف الصغير بلا امتداد نسبة إلى ارتفاع الحرف كاملا. فالخطوط ذات ارتفاع الإكس الأعلى تُقرأ أفضل في الأحجام الصغيرة، ولهذا يمكن لخطين بالحجم نفسه أن يبدوا مختلفين تماما.
وثلاثة أخرى تستحق المعرفة: الامتدادات العليا والسفلى، أي أجزاء الحرف التي تخرج عن خط الأساس وتقرر كم يجب أن يكون تباعد سطورك مفتوحا؛ والجوف، أي الفضاء المغلق داخل الحرف، الذي يمتلئ في الأحجام الصغيرة إن كان ضيقا فيصير الحرف غير مقروء؛ وتباين السماكة، أي الفرق بين الخطوط الغليظة والرفيعة، وكلما زاد كان الخط أفضل للعناوين وأسوأ للنص الطويل.
واختبار عملي يستبعد الخطوط السيئة في عشرين ثانية: اكتب الحروف المتشابهة بعضها بجانب بعض. في اللاتينية: I الكبيرة وl الصغيرة والرقم واحد. فإن كانت الثلاثة خطا عموديا بسيطا فذلك الخط سيئ للواجهات، لأن مستخدمك سيقرأ فيه رمز تتبع وكلمة سر.
وفي الفارسية يتخذ الاختبار نفسه شكلا آخر وهو أشد: النقاط. فالذي يفرق بين الباء والپاء والتاء والثاء ليس إلا النقاط، وفي الخطوط الزخرفية إما أن تصغر تلك النقاط أو تلتحم بجسم الحرف. وصفحة عناوين بهذا الخط لا بأس بها؛ أما نموذج تسجيل بالخط نفسه فيبيع العميل مكتب دعم.
كيف تبني سلم الأحجام؟
السلم قائمة قصيرة بالأحجام المسموح بها، وقاعدته بسيطة: كل حجم في التصميم يجب أن يكون في تلك القائمة. فإن احتوت صفحة ثمانية أحجام مختلفة فلا سلم لها، وكل واحد من الثمانية قد قُرر على حدة.
وأبسط طريقة لبنائه هذه: ابدأ من حجم نص المتن واشتق البقية بنسبة ثابتة. فالنسبة الأصغر تعطي سلما أهدأ يناسب النصوص الطويلة؛ والأكبر تجعل العناوين أملأ وتناسب صفحات البيع. والنسبة بعينها ليست مهمة كثيرا. المهم أن تبقى ثابتة.
وأرقام الموقع الذي تقرأه، لتكون قد رأيت مثالا حقيقيا: الجذر 16px، ونص المتن 1.0625rem أي نحو سبعة عشر بكسلا، والنص الصغير كمسار التنقل وحواشي الأشكال 0.85rem. والعناوين كلها مكتوبة بـclamp(): h3 بين ١.١٥ و١.٤ rem، وh2 بين ١.٥ و٢.٢ rem، وh1 بين ٢ و٣.٣ rem. أي أصغر رقم على الهاتف وأكبره على شاشة كبيرة، بلا أي نقطة انكسار.
وclamp() هذه أنفع أداة عملية في هذا القسم وتحل محل ثلاثة أو أربعة استعلامات وسائط. تأخذ ثلاث قيم: حدا أدنى، وحجما سائلا يقوم عادة على عرض النافذة، وحدا أقصى. والخطأ الشائع كتابة الجزء السائل وحده وترك الحد الأدنى؛ والنتيجة عنوان ينكمش إلى حجم نص المتن على هاتف ضيق.
وقاعدة أهم من أي نسبة: قلّل عدد الأحجام. فخمسة أحجام تكفي أي موقع تقريبا، وإن شعرت أنك تحتاج سادسا فالمشكلة عادة ليست في الحجم بل في المسافة.
طول السطر وارتفاعه: الرقمان الأكثر أثرا
إن احتفظت برقمين فقط من هذا الدرس فليكونا هذين. فالسطر الطويل جدا يضيّع العين وهي عائدة إلى بداية السطر التالي؛ والسطر القصير جدا يحوّل القراءة إلى قفزات متتابعة. والتباعد الضيق يلصق سطرين حتى يعيد القارئ قراءة أحدهما دون أن يشعر.
ولطول السطر سقف رسمي. فمعيار WCAG في البند ١.٤.٨، وهو مستوى AAA لا AA، يقول إن عرض كتلة النص ينبغي ألا يزيد على ثمانين حرفا. ويقول البند نفسه شيئين آخرين أقل اقتباسا: ألا يُضبط النص من الطرفين، وأن يكون تباعد السطور واحدا ونصفا على الأقل.
وفي CSS تضبط هذا بوحدة ch لا بالبكسل، لأن العرض يجب أن يرتفع وينخفض مع حجم الخط. وأرقام هذا الموقع: فقرة التقديم في كل صفحة 56ch ومتون المقالات 78ch، أي تحت سقف الثمانين مباشرة.
ونقطة لا يكاد أحد يكتبها، وهي التي يخطئ فيها الجميع أول مرة: ch هي عرض الرقم صفر في الخط الجاري، لا عرض حرف حقيقي. وفي الخط الذي يستعمله هذا الموقع يبلغ ذلك الصفر ٥٧٠ وحدة من em من ألف وحدة، أي ٠.٥٧ em. فـ78ch رقم قابل للتكرار لكنه ليس «ثمانية وسبعين حرفا»، وفي الفارسية حيث تتفاوت عروض الحروف كثيرا تتسع الفجوة أكثر. فانظر إلى الرقم كمقياس قابل للضبط لا كعدّ.
وأما تباعد السطور فمعيار WCAG في البند ١.٤.١٢، وهو مستوى AA، يقول إن على المستخدم أن يستطيع رفع ارتفاع السطر إلى ١.٥ مرة على الأقل من حجم الخط دون فقد محتوى. وهذا حد أدنى لا توصية. ونص المتن في هذا الموقع عند 1.9، وهذا اختيار للفارسية: فالخط يحمل نقاطا وامتدادات كثيرة تحت خط الأساس، وعند تباعد يكفي اللاتينية يبدو مزدحما.
أتحتاج خطين أم واحدا؟
الجواب الصادق لأكثر المواقع: واحد. فعائلة خط واحدة بعدة أوزان تتفوق دائما تقريبا على عائلتين مختلفتين، لأن فرق الوزن فرق مصمَّم وفرق العائلة فرق عارض.
وإن أردت اثنين حقا فالقاعدة أن يختلفا في الفئة لا في المزاج. فخط بلا زوائد للعناوين وخط بزوائد للمتن فرق تدركه العين فورا. أما خطان بلا زوائد يختلفان قليلا فأسوأ حالة ممكنة: لا يعرف القارئ أهذا الفرق يعني شيئا أم أنه خطأ.
والكلفة التي لا تُرى عادة في القرار: كل عائلة إضافية ملفات أخرى تُنزَّل. وهذه الكلفة أثقل في الفارسية، لأن الخط الفارسي يحمل رسوما أكثر وملفه أكبر من نظيره اللاتيني. فخط ثان لا يظهر إلا في العناوين قد يكلّف على اتصال هاتفي بقدر عدة صور.
والأوزان تتبع المنطق نفسه. وثلاثة تكفي عادة: واحد للنص، وواحد للتأكيد داخل النص، وواحد للعناوين. فإن كان في التصميم ستة أوزان فثلاثة منها على الأرجح لا تلفت نظر أحد أبدا ولا تفعل سوى أن تُنزَّل.
كيف تعرف أن التراتب صار صحيحا؟
التراتب يعني أن يعرف القارئ ما هو الأهم دون أن يقرأ. والاختبار يستغرق عشر ثوان: ضيّق عينيك حتى تضبب الصفحة، أو انظر إليها من مسافة مترين. فما يبقى مرئيا في ذلك الضباب هو ما يستقر أولا في ذهن القارئ. وإن لم يكن ما تراه هو ما أردت، فالتراتب لا يعمل مهما بدا التصميم نظيفا.
ولديك أربع روافع لبنائه: الحجم والوزن والمسافة واللون. والثلاث الأولى تعمل دائما تقريبا أفضل من الرابعة، ومن بينها المسافة هي الأرخص والأقل استعمالا. فحين لا يبرز شيء بما يكفي يكون رد الفعل الأول عند الجميع تكبيره أو تغميقه؛ بينما يكفي عادة أن تُفرَّغ المساحة حوله.
واللون رافعة تُطلب في الآخر. والسبب بسيط: بعض قرائك لا يرون اللون كما تراه، وإن كانت الإشارة الوحيدة إلى أهمية عنصر هي لونه، فذلك العنصر عندهم لا يختلف عن غيره. فليكن اللون التأكيد الثالث لا التأكيد الوحيد.
وخطأ شائع يظهر في العناوين أكثر من أي موضع: يجب أن تكون المسافة فوق العنوان أكبر من المسافة تحته. فعنوان يبعد بالقدر نفسه عن الفقرة التي فوقه وتلك التي تحته لا ينتمي إلى أي منهما، وهذا الضبط الصغير وحده يرفع وضوح بنية صفحة طويلة أكثر من أي تغيير آخر.
روافع التراتب الأربع، بالترتيب الذي ينبغي طلبها به
الترتيب ليس اعتباطيا: كلما تقدمت في القائمة عملت الرافعة لعدد أكبر من القراء.
-
المسافة
الأرخص والأقل استعمالا. وتفريغ ما حول عنصر يغني غالبا عن تكبيره.
-
الحجم
أوضح الروافع وأولها إفراطا في الاستعمال. ولا تخرج عن السلم.
-
الوزن
الأفضل للتأكيد داخل فقرة، لأنه لا يغيّر الحجم ولا يكسر السطر.
-
اللون
الرافعة الأخيرة. ولقارئ يرى اللون على نحو آخر، كونه الإشارة الوحيدة يعني ألا إشارة.
هذا الترتيب للنص. أما في مخطط أو خريطة فيرتفع اللون، شرط ألا يكون الإشارة الوحيدة.
المسار السريع مع الذكاء الاصطناعي
المسار السريع هنا ليس ما تتوقعه. فالطلب المعتاد من نموذج هو «اقترح مزاوجة خطوط جيدة»، والجواب عديم الفائدة في الغالب دائما، لأن النموذج يسمّي خطوطا لا وجود لها في الفارسية أو تنقصها الأوزان. والعمل الاحترافي عكس ذلك: تعطي النموذج نصوصك الحقيقية وعرض الحاوية وتطلب منه سلما <em>يحذف</em> أحجاما لا يضيفها.
- استخرج من الصفحة الحالية كل حجم خط مستعمل فعلا. ففي أدوات المطور بالمتصفح تقول لك لسان Computed على أي عنصر ذلك بالضبط، دون حاجة إلى قراءة الشفرة.
- أدخل تلك القائمة، مع عينة حقيقية من عنوانك وفقرتك، في الوصفة أدناه. ويكفي نموذج سريع رخيص من فئة Gemini Flash؛ فهذا حساب وترتيب لا حكم. واختيارنا الحالي بين النماذج محفوظ في <a class="text-link" href="/ai/">قسم الذكاء الاصطناعي</a>.
- من الناتج اقرأ عمود «يُحذف» أولا لا عمود السلم الجديد. فإن لم يقترح النموذج حذف أي حجم، فإما أن صفحتك كانت نظيفة أصلا وإما أنك لم تعطِ الوصفة كما ينبغي.
- طبّق السلم الجديد على أطول صفحة في الموقع لا على الصفحة الرئيسية. فالرئيسية قصيرة عادة ويبدو عليها أي سلم حسنا؛ أما صفحة من ثلاثة آلاف كلمة فتُظهر العيوب.
وصفة جاهزة للنسخ
أحجام الخط المستعملة الآن في صفحتي:
{قائمة الأحجام، مثلا 13px, 14px, 15px, 17px, 20px, 22px, 28px, 34px}
عرض حاوية النص: {رقم} بكسل
لغة النص: {الفارسية أو غيرها}
عينة عنوان: {عنوان حقيقي}
عينة فقرة: {جملتان أو ثلاث حقيقية}
١. أعطني جدولا بثلاثة أعمدة: الحجم الحالي، والدور الذي تظنه يؤديه، و«يبقى» أو «يُحذف». والهدف خمسة أحجام على الأكثر.
٢. وللأحجام الباقية اقترح سلما بنسبة ثابتة واكتب النسبة صراحة. واكتب كل شيء بـrem بجذر ١٦ بكسلا.
٣. ولكل عنوان اكتب clamp() بالقيم الثلاث: الحد الأدنى، وقيمة سائلة بـvw، والحد الأقصى.
٤. واحسب عرض النص بـch وقل لي كم ch يصير كل سطر تقريبا بعرض الحاوية الذي أعطيته. وإن تجاوز الثمانين فقل ذلك صراحة.
٥. واكتب ارتفاع السطر الذي تقترحه لنص المتن وقل لماذا اخترت هذا الرقم لهذه اللغة.
ولا تقترح أي اسم خط. ولا تضف حجما ليس في قائمتي إلا إن قلت أي حجمين يحل محلهما.
قبل أن تثق بالناتج: ثلاثة حدود. الأول أن النموذج لا يرى صفحتك ولا يملك سوى قائمة أرقام؛ فالدور الذي يخمّنه لكل حجم قد يكون خطأ، وعليك أن تقرأ العمود الثاني قبل الثالث. والثاني أن رقم ch الذي يعطيه ينبغي أن تتحقق منه مرة على الصفحة الحقيقية، لأن الخط الحقيقي وحده يعرف كم يبلغ عرض رقمه صفر. والثالث هو ما بدأ به هذا الدرس: لا سلم يصلح صفحة بنيتها خاطئة. فإن حملت صفحة واحدة عنوانين رئيسيين فالمشكلة ليست في الطباعة.
الذكاء الاصطناعي في هذا العمل
موقفنا من الطباعة والذكاء الاصطناعي: ممتاز لترتيب ما تملكه، وعديم الفائدة وأحيانا خطر في اقتراح الخطوط. فالنماذج جيدة في وضع سلم، وكتابة clamp، وإيجاد الأحجام المكررة، وترجمة تصميم إلى CSS. لكنها حين تسمّي خطا تتكلم من بيانات لاتينية في جلّها، وفي الفارسية يفلت الأمر من يدها في تلك اللحظة بالذات.
أدوات تساعد فعلا
- Claude الأنسب للوصفة أعلاه، لأن ناتجه يخرج شفرة CSS صالحة للاستعمال لا شرحا: السلم على شكل متغيرات، وclamp بالقيم الثلاث، والأحجام المكررة معلَّمة. وإيران ليست في أي من قائمتي البلدان المدعومة لدى أنثروبيك، وقد قرأنا ذلك على صفحتها لا باختبار الشبكة.
- Gemini أفضل حين تملك لقطة شاشة بدل قائمة أرقام: يقرأ الصورة ويقول لك أي عنصرين تقاربت أحجامهما حتى لا يُلحظ الفرق. وصفحة غوغل نفسها تقول إن تطبيق جيميناي على الويب متاح في أكثر من مئتين وثلاثين بلدا وإقليما، وإيران ليست في تلك القائمة.
- Google Fonts ليس ذكاء اصطناعيا، لكنه الجواب الذي كان ينبغي أن تعطيه النماذج ولا تعطيه: قائمة العائلات التي تغطي الخط العربي فعلا، مرشّحة بالمجموعة الفرعية، ورخصة كل منها على صفحتها. فحين يسمّي نموذج خطا، تحقق هنا أولا إن كان لذلك الخط فارسي أصلا.
اين ينقلب ضدك
الخطر المحدد والمتكرر هنا أن النماذج تقترح خطوطا لا وجود لها في الفارسية. فنموذج تدرب على بيانات إنجليزية في أغلبها، إذا سألته عن «مزاوجة خطوط مناسبة لموقع حديث»، أعاد أسماء لاتينية مألوفة؛ وإن وضعتها على موقع فارسي سقط المتصفح إلى خط بديل للحروف الفارسية، فتُعرض الصفحة بخطين مختلفين وأنت لا تدري. فقبل قبول أي اسم تحقق من ذلك الخط في قائمة المجموعة الفرعية العربية على غوغل فونتس أو على موقع المسبك نفسه.
والخطر الثاني الترخيص. فالنموذج لن يقول لك إن كان الخط الذي اقترحه يحمل ترخيص ويب أم لا، وفي مشروع عميل يكون لهذا الفرق أثر مالي وقانوني. ورخصة كل خط مكتوبة على صفحته وقراءتها ثلاثون ثانية.
وخطر ثالث لا يخص الطباعة لكنه حاضر دائما عند العمل مع النماذج: كل صورة أو ملف تصميم تضعه في محادثة قد خرج من جهازك، ومصيره يتوقف على خطة تلك الخدمة وإعداداتها، وهو مكتوب على صفحة استخدام البيانات لديها. ولمعرفة كيف يمكن الدفع لكل من هذه الأدوات من إيران انظر دليل الشراء.
المصادر: Google Fonts: families covering the Arabic script Anthropic: supported countries Google: where the Gemini web app is available
حدود هذه النصيحة
كل ما جاء في هذا الدرس يخص نصا يُقرأ على شاشة ويجلس في عمود واحد. أما في الطباعة فتتغير الأرقام، لأن الوحدة نقطة لا بكسل ولأن مسافة القراءة أثبت. وفي النص متعدد الأعمدة يتخذ طول السطر معنى آخر ويأتي سقف الثمانين حرفا أبكر كثيرا. وحد أكبر يستحق القول صراحة: هذه طباعة عامة ولا تكفي موقعا فارسيا. فاتصال الحروف ونصف المسافة والأرقام الفارسية وتقليم الخط، لم يُحل أي منها هنا، والدرس التالي في هذا المسار مخصص لها.
من عملنا نحن
يحتفظ هذا الموقع بخمسة أوزان من خطه في مجلد القالب ولا يحمّل سوى ثلاثة: ٤٠٠ و٧٠٠ و٨٠٠. والوزنان ٥٠٠ و٦٠٠ محذوفان عمدا، وليس الحذف بلا تعويض: فقاعدة مطابقة الخطوط في CSS تردّ الوزن ٥٠٠ إلى ٤٠٠ والوزن ٦٠٠ إلى ٧٠٠، ولأن ٧٠٠ و٨٠٠ موجودان لا يُضطر المتصفح أبدا إلى توليد غامق اصطناعي. والتوفير تنزيل واحد بخمسة وعشرين كيلوبايتا في كل صفحة، واثنان في الصفحات التي كانت تستعمل الوزن ٥٠٠.
والاختيار الأثمن: كتلة @font-face في هذا الموقع تحمل font-display: optional لا swap. كلمة واحدة تفصلهما والنتيجتان مختلفتان: فمع swap يعرض المتصفح خطا بديلا أولا ثم يستبدل النص حين يصل الخط الحقيقي، وعند تلك اللحظة يتزحزح التخطيط. ومع optional، إن لم يصل الخط في وقته أبقى المتصفح البديل لتلك الزيارة ولم يبدّل في منتصف الصفحة أبدا. فيصير انزياح التخطيط الناتج عن تبديل الخط صفرا قطعا، بثمن أن الزيارة الأولى قد تُرى بخط النظام. ولموقع يقيس سرعته بمؤشرات Core Web Vitals قبلنا هذه المقايضة.
اسئلة متابعة حقيقية
كم يكون حجم نص المتن؟
للنص المقصود لقراءة طويلة لا تنزل عن ستة عشر بكسلا، وإن كان النص فارسيا فبكسل أو اثنان فوقها أفضل عادة. والرقم بعينه يعتمد على الخط لا على قاعدة، لأن خطين بالحجم نفسه يختلفان في ارتفاع الإكس؛ والطريق السليم الوحيد النظر إلى نص حقيقي على هاتف حقيقي.
أأضبط النص من الطرفين؟
لا على الويب. فالبند ١.٤.٨ نفسه من WCAG الذي يضع سقف طول السطر يقول صراحة ألا يُضبط النص من الطرفين؛ والسبب أنهار الفراغ التي تنفتح بين الكلمات وتجذب العين عن السطر. أما في الطباعة، حيث التحكم بكسر السطر والتقطيع أكبر، فالحكاية مختلفة.
أستضيف الخط على خادمي أم أحمّله من غوغل فونتس؟
استضفه على خادمك. فنطاق أقل يعني اتصالا أقل ونقطة فشل أقل، مع تحكم كامل بـfont-display وبالتقليم. ويُضاف للزائر في إيران سبب عملي: كل مورد يأتي من نطاق أجنبي تبعية قد تصير يوما بطيئة أو بعيدة المنال ولا تملك أنت حيالها شيئا.