4.2. الدرس: إنشاء تخطيط طباعة ديناميكي¶
الآن بعد أن تعلّمت إنشاء تخطيط خريطة أساسي، سنتقدم خطوة إضافية وننشئ تخطيط خريطة يتكيّف ديناميكيًا مع امتداد خريطتنا ومع خصائص الصفحة، مثلًا عند تغيير حجم الصفحة. كما سيتكيّف تاريخ الإنشاء ديناميكيًا.
4.2.1. ★★☆ تابع معنا: إنشاء لوحة الخريطة الديناميكية¶
حمّل مجموعات البيانات بصيغة ESRI Shapefile وهي
protected_areas.shpوplaces.shpوrivers.shpوwater.shpفي لوحة الخريطة، وعدّل خصائصها بما يناسبك.بعد عرض كل شيء وترميزه كما تحب، انقر على الأيقونة
New Print Layout في شريط الأدوات Project أو اختر
. سيُطلب منك اختيار عنوان لتخطيط الطباعة الجديد.نريد إنشاء تخطيط خريطة يتكون من ترويسة وخريطة للمنطقة القريبة من Swellendam في جنوب أفريقيا. يجب أن يكون للتخطيط هامش بمقدار 7.5 mm وأن يكون ارتفاع الترويسة 36mm.
أنشئ عنصر خريطة باسم
main mapعلى اللوحة وانتقل إلى اللوحة Layout. مرّر إلى أسفل حتى القسم Variables وابحث عن الجزء Layout. هنا نعيّن بعض المتغيرات التي يمكنك استخدامها في كل أنحاء تخطيط الطباعة الديناميكي. انتقل إلى اللوحة Layout ومرّر إلى أسفل حتى القسم Variables. سيحدد المتغير الأول الهامش. اضغط على الزر
واكتب الاسم sw_layout_margin. اضبط القيمة على7.5. اضغط على الزر
مرة أخرى واكتب الاسم sw_layout_height_header. اضبط القيمة على36.أنت الآن جاهز لإنشاء موضع لوحة الخريطة وحجمها تلقائيًا بواسطة المتغيرات. تأكد من أن عنصر الخريطة محدد، وانتقل إلى اللوحة Item Properties، ومرّر إلى أسفل وافتح القسم Position and Size. انقر على
Data defined override الخاص بـ X واختر @sw_layout_marginمن المدخل Variables.انقر على
Data defined override الخاص بـ Y، واختر Edit... واكتب الصيغة:to_real(@sw_layout_margin) + to_real(@sw_layout_height_header)
يمكنك إنشاء حجم عنصر الخريطة باستخدام المتغيرات لكل من Width و Height. انقر على
Data defined override الخاص بـ Width واختر Edit ... مرة أخرى. أدخل الصيغة:@layout_pagewidth - @sw_layout_margin * 2
انقر على
Data defined override الخاص بـ Height واختر Edit .... وهنا أدخل الصيغة:@layout_pageheight - @sw_layout_height_header - @sw_layout_margin * 2
سننشئ أيضًا شبكة تحتوي على إحداثيات امتداد لوحة الخريطة الرئيسية. انتقل إلى Item Properties مرة أخرى واختر القسم Grids. أدرج شبكة بالنقر على الزر
. انقر على Modify grid ... واضبط Interval لكل من X و Y و Offset وفقًا لمقياس الرسم الذي اخترته في لوحة الخريطة الرئيسية في QGIS. ويُعد Grid type من النوع Cross مناسبًا جدًا لأغراضنا.
4.2.2. ★★☆ تابع معنا: إنشاء الترويسة الديناميكية¶
أدرج مستطيلًا سيحتوي على الترويسة باستخدام الزر
Add Shape. في اللوحة Items أدخل الاسم header.انتقل مرة أخرى إلى Item Properties وافتح القسم Position and Size. باستخدام
Data defined override، اختر المتغير sw_layout_marginلكل من X و Y. ويُحدَّد Width بالتعبير:@layout_pagewidth - @sw_layout_margin * 2
ويُحدَّد Height بالمتغير
sw_layout_height_header.سندرج خطًا أفقيًا وخطين رأسيين لتقسيم الترويسة إلى أقسام مختلفة باستخدام
Add Node Item. أنشئ خطًا أفقيًا وخطين رأسيين وسمّها Horizontal lineوVertical line 1Vertical line 2.بالنسبة للخط الأفقي:
اضبط X على المتغير
sw_layout_marginاضبط التعبير الخاص بـ Y على:
@sw_layout_margin + 8
اضبط التعبير الخاص بـ Width على:
@layout_pagewidth - @sw_layout_margin * 3 - 53.5
بالنسبة للخط الرأسي الأول:
اضبط التعبير الخاص بـ X على:
@layout_pagewidth - @sw_layout_margin * 2 - 53.5
اضبط Y على المتغير
sw_layout_marginيجب أن يكون الارتفاع مساويًا لارتفاع الترويسة التي أنشأناها، لذا اضبط Height على المتغير
sw_layout_height_header.
يوضع الخط الرأسي الثاني على يسار الخط الأول.
اضبط التعبير الخاص بـ X على:
@layout_pagewidth - @sw_layout_margin * 2 - 83.5
اضبط Y على المتغير
sw_layout_marginيجب أن يكون الارتفاع مساويًا لارتفاع الخط الرأسي الآخر، لذا اضبط Height على المتغير
sw_layout_height_header.
يوضح الشكل أدناه بنية تخطيطنا الديناميكي. سنملأ المناطق التي أنشأتها الخطوط ببعض العناصر.
4.2.3. ★★☆ تابع معنا: إنشاء التسميات للترويسة الديناميكية¶
يمكن تضمين عنوان مشروع QGIS تلقائيًا. يُعيَّن العنوان في Project Properties. أدرج تسمية باستخدام الزر
Add Label وأدخل الاسم project title (variable). وفي Main Properties ضمن اللوحة Items Properties أدخل التعبير:[%@project_title%]
اضبط موضع التسمية.
بالنسبة لـ X، استخدم التعبير:
@sw_layout_margin + 3
بالنسبة لـ Y، استخدم التعبير:
@sw_layout_margin + 0.25
بالنسبة لـ Width، استخدم التعبير:
@layout_pagewidth - @sw_layout_margin *2 - 90
أدخل
11.25في Height
ضمن Appearance اضبط حجم الخط على 16 pt.
ستتضمن التسمية الثانية وصفًا للخريطة التي أنشأتها. أدرج تسمية مرة أخرى وسمّها
map description. في Main Properties أدخل النصmap description. وسنضمّن أيضًا في Main Properties ما يلي:printed on: [%format_date(now(),'dd.MM.yyyy')%]
استخدمنا هنا دالتين من دوال
Date and Time(هماnowوformat_date).اضبط موضع التسمية.
بالنسبة لـ X، استخدم التعبير:
@sw_layout_margin + 3
بالنسبة لـ Y، استخدم التعبير:
@sw_layout_margin + 11.5
ستتضمن التسمية الثالثة معلومات عن مؤسستك. سننشئ أولًا بعض المتغيرات في القائمة Variables ضمن Item Properties. انتقل إلى القائمة Layout، وانقر على الزر
في كل مرة وأدخل الأسماء o_departmentوo_nameوo_adressوo_postcode. وفي الصف الثاني أدخل المعلومات الخاصة بمؤسستك. سنستخدم هذه المتغيرات في القسم Main Properties.في Main Properties أدخل:
[% @o_name %] [% @o_department %] [% @o_adress %] [% @o_postcode %]
اضبط موضع التسمية.
بالنسبة لـ X، استخدم التعبير:
@layout_pagewidth - @sw_layout_margin - 49.5
بالنسبة لـ Y، استخدم التعبير:
@sw_layout_margin + 15.5
بالنسبة لـ Width، استخدم
49.00بالنسبة لـ Height، استخدم التعبير:
@sw_layout_height_header - 15.5
4.2.4. ★★☆ تابع معنا: إضافة الصور إلى الترويسة الديناميكية¶
استخدم الزر
Add Picture لوضع صورة فوق التسمية organisation information. بعد إدخال الاسمorganisation logoحدّد موضع الشعار وحجمه:بالنسبة لـ X، استخدم التعبير:
@layout_pagewidth - @sw_layout_margin - 49.5
بالنسبة لـ Y، استخدم التعبير:
@sw_layout_margin + 3.5
بالنسبة لـ Width، استخدم
39.292بالنسبة لـ Height، استخدم
9.583
لتضمين شعار مؤسستك، عليك حفظ الشعار في مجلدك الرئيسي (home) وإدخال المسار ضمن .
لا يزال تخطيطنا بحاجة إلى سهم الشمال. وسيُدرج هو أيضًا باستخدام
Add North Arrow. سنستخدم سهم الشمال الافتراضي. حدّد الموضع:بالنسبة لـ X، استخدم التعبير:
@layout_pagewidth - @sw_layout_margin * 2 - 78
بالنسبة لـ Y، استخدم التعبير:
@sw_layout_margin + 9
بالنسبة لـ Width، استخدم
21.027بالنسبة لـ Height، استخدم
21.157
4.2.5. ★★☆ تابع معنا: إنشاء شريط مقياس الرسم للترويسة الديناميكية¶
لإدراج شريط مقياس رسم في الترويسة، انقر على
Add Scale Bar وضعه في المستطيل الواقع فوق سهم الشمال. في Map ضمن Main Properties اختر main map(Map 1). وهذا يعني أن مقياس الرسم يتغير تلقائيًا وفقًا للامتداد الذي تختاره في لوحة الخريطة الرئيسية في QGIS. اختر Style من النوع Numeric. وهذا يعني أننا ندرج مقياس رسم بسيطًا دون شريط. ولا يزال مقياس الرسم بحاجة إلى موضع وحجم.بالنسبة لـ X، استخدم التعبير:
@layout_pagewidth - @sw_layout_margin * 2 - 78
بالنسبة لـ Y، استخدم التعبير:
@sw_layout_margin + 1
بالنسبة لـ Width، استخدم
25بالنسبة لـ Height، استخدم
8ضع
Reference pointفي المنتصف.
تهانينا! لقد أنشأت أول تخطيط خريطة ديناميكي لك. ألقِ نظرة على التخطيط وتحقق مما إذا كان كل شيء يبدو كما تريد! يستجيب تخطيط الخريطة الديناميكي تلقائيًا عند تغيير Page Properties. فمثلًا، إذا غيّرت حجم الصفحة من DIN A4 إلى DIN A3، انقر على الزر
Refresh view وسيتكيّف تصميم الصفحة.
4.2.6. ما التالي؟¶
ستُكلَّف في الصفحة التالية بواجب لإكماله. وسيتيح لك ذلك التدرب على الأساليب التي تعلمتها حتى الآن.