رسومات موجهة قابلة للتحجيم - مسارات التجميع
نشرت: 2022-12-11عند العمل باستخدام Scalable Vector Graphics (SVG) ، غالبًا ما يكون من الضروري تجميع مسارات SVG متعددة معًا من أجل تطبيق نفس التحويلات أو الأنماط عليها جميعًا. يمكن تحقيق ذلك عن طريق تداخل المسارات داخل عنصر. العنصر هو عنصر حاوية يستخدم لتجميع العناصر الأخرى معًا. سترث جميع العناصر الموجودة داخل عنصر التحويلات والأنماط المطبقة على العنصر. هذا يجعل من السهل تطبيق نفس التحويلات أو الأنماط على عناصر متعددة من خلال الاضطرار إلى تحديدها مرة واحدة فقط. لتجميع مسارات SVG معًا ، قم ببساطة بتداخلها داخل عنصر مثل هذا: سيرث كلا المسارين في المثال أعلاه أي تحويلات أو أنماط مطبقة على العنصر. هذا يجعل من السهل تطبيق نفس التحويلات أو الأنماط على عناصر متعددة دون الحاجة إلى تحديدها بشكل فردي لكل عنصر. لذلك ، لتجميع مسارات SVG معًا ، قم ببساطة بتداخلها داخل عنصر. سيسهل هذا تطبيق نفس التحويلات أو الأنماط على جميع المسارات في المجموعة.
تُستخدم عناصر المسار لعرض الأشكال على الويب ، ولكنها تُستخدم أيضًا لقص HTML وميزات النظام الأساسي الأخرى مثل عرض CSS. هناك بعض الميزات التي تم حذفها من عملية تطوير SVG 2 في هذه المواصفات. نتيجة لهذه المواصفات ، سيتم دمج القسم الخاص بمسارات SVG 2. يرجى إخبارنا برأيك في هذه الوثيقة. يسمح مسار الشكل بتعبئته أو تحديده. يمكن أيضًا استخدام المسارات لشرح الرسوم المتحركة أو نص الموضع ، ويمكن استخدام مسارات القطع للقيام بذلك. القدرة على استخدام المسارات المركبة (أي المسارات ذات المسارات الفرعية المتعددة) للتأثيرات مثل الثقوب الدائرية أمر ممكن.
في هذا الفصل ، سنتطرق إلى واجهة بناء الجملة والسلوك و DOM لمسارات sva. نظرًا لعدد أحرف السطر الجديد في بيانات المسار ، يمكن تقسيم ذلك إلى أسطر متعددة لتحسين إمكانية قراءة النص. يجب أن تحتوي مواصفات بيانات المسار ضمن مواصفات الرسوم المتحركة على نفس قائمة أوامر بيانات المسار مثل السمة d لتتمكن من إنشاء كائنات متحركة. يصف أمر المسار إحداثيات نقطة من حيث موقعها الحالي وكذلك الاتجاه الذي تحمله حاليًا. قيم جميع الإحداثيات في بداية كل أمر بالنسبة للآخر مرتبطة بتلك الموجودة في بداية الأمر. لتحديد المسار ، يتم استخدام نمط رسومات السلحفاة. يتم تعريف moveto على أنه النقطة التي يبدأ عندها مسار مغلق بعد أن يتبعه حركة.
سيرسم أمر واحد خطوطًا مستقيمة من نقطة إلى أخرى. يؤدي الأمر h النسبي بقيمة x الموجبة إلى تكوين خط في اتجاه الاتجاه. أوامر منحنى بيزير التكعيبية هي كما يلي: فيما يلي أوامر بيزير التربيعية: عند استخدام الأمر النسبي q أو t ، يتم حساب كل زوج من أزواج الإحداثيات النسبية كما لو كان أمر m. على الرغم من تشابهها ، فإن الأقواس البيضاوية تسيطر على مستوى أكثر تعقيدًا من التحكم. CPY = X sin cbs y cos cbs (cPX = X cos cb x sin cb، cpy = X sin cbs y cos cbs) ، في نهاية كل منحنى ، هي نقطة التحكم النهائية. يرسم أمر القوس البيضاوي مقطعًا من القطع الناقص كما هو موضح في الرسم التخطيطي أدناه. عادة ما تكون هناك أربعة أقواس مختلفة في معظم المواقف (قطعتان بيضاويتان ، وقوسان بهما قوسان مختلفان).
يمكن تحديد نقاط التحكم لمنحنى Catmull-Rom باستخدام سطور الأوامر (R أو R). يجب أن نوضح ما يعنيه وجود أمرين R أو R متتاليين ، بالإضافة إلى مثال. لا يمكن استخدام علم المثلثات لتحديد الموقع الدقيق لنقاط نهاية المضلع المنتظم باستخدام أوامر الاتجاه. يجب أن تستهلك معالجة BNF أكبر قدر ممكن من إنتاج معين ، وتتوقف فقط عندما لا تفي الشخصية بمتطلبات الإنتاج. لا يمكن إدخال بيانات المسار عن طريق الخطأ إذا لم تتطابق مع القواعد النحوية لـ EBNF (راجع معالجة الأخطاء). عند حساب الطول الإجمالي لمسار ، يمكن استخدام سمة "طول المسار" لتوفير طريقة لحساب المسافة على طول المسار. لتحديد طول عملية عنصر "المسار" ، يتم تعريف الصفر على أنه عملية تنقل الكائنات أو تحتفظ بها.
في حالة عدم وجود بيانات مسار صالحة ، يتم إرجاع سلسلة فارغة. يعالج السمات المرتبطة بطول عنصر "المسار" المحدد. تعرض هذه الوظيفة إحداثيات نظام الإحداثيات المحلي ، وهي وحدات مسافة على طول المسار. يجب تمريرها إلى خوارزمية المسافة على طول المسار باستخدام طريقة مسافة طول المسار قبل تمرير المسافة إلى طريقة المسافة على طول المسار. في حالة عدم وجود بيانات مسار صالحة ، يكون المسار فارغًا.
إذا كنت تريد دمج أكثر من كائن واحد في Inkscape ولكن لا تعرف كيف ، فهذا هو المكان الذي أتيت إليه. لدمج الكائنات في اللوحة ، استخدم خياري قائمة المسار "Combine" و "Union" في Inkscape. عندما تقوم بدمج كائناتك باستخدام خيار "Combine" ، فإنها ستبقى مسارات منفصلة أثناء الدمج.
يمكنك دمج ملفات SVG عن طريق فتحها في Inkscape (برنامج مجاني ، عبر الأنظمة الأساسية https://inkscape.org). يمكن العثور على خيار الاتحاد في قائمة المسار. يجب حفظ الملف.
للوصول إلى المجموعة ، انقر مرتين. حدد Enter group من القائمة المنسدلة التي تظهر بعد النقر بزر الماوس الأيمن عليها. ستظهر المجموعة الآن عند النقر بزر الماوس الأيسر عليها مرة واحدة.
كيف يمكنني تجميع المسارات في Svg؟
يمكن إجراء تجميع المسارات في SVG بعدة طرق ، اعتمادًا على النتيجة المرجوة. طريقة واحدة لتجميع المسارات هي استخدام العنصر. العنصر عبارة عن عنصر حاوية يمكن استخدامه لتجميع العناصر الأخرى معًا. من خلال تجميع العناصر معًا ، يمكنك تطبيق سمات التحويل على المجموعة بأكملها ، والتي يمكن أن تكون مفيدة لإنشاء رسومات معقدة. هناك طريقة أخرى لتجميع المسارات وهي استخدام سمة id. يمكن استخدام سمة id لتحديد عنصر ، والذي يمكن استخدامه بعد ذلك بواسطة CSS أو JavaScript لتحديد العنصر.
يمثل المسار هندسة حدود الكائن من حيث الحركات والخطوط والمنحنيات (الأشكال التكعيبية والتربيعية) والأقواس والممرات القريبة. يمكن استخدام المسارات المركبة (على سبيل المثال ، المسارات ذات المسارات الفرعية المتعددة) للسماح للكائنات بالظهور مع الثقوب الدائرية المجوفة. يقدم الفصل 8 نظرة عامة على واجهات بناء الجملة والسلوك و DOM التي تحكم مسارات SVG. بيانات المسار عبارة عن مجموعة من الأوامر متبوعة بحرف واحد. تتم كتابة بيانات المسار بطريقة منظمة بحيث يمكن تنزيلها في جزء صغير من الوقت وحجم الملف. نظرًا لأن بيانات المسار تحتوي على أحرف سطر جديد ، يمكن تقسيمها إلى عدة أسطر لتحسين إمكانية قراءتها. أثناء عملية التحليل ، سيتم تسوية الأسطر الجديدة في العلامات التي تحتوي على مسافات.
تحدد هذه القيمة شكلاً باستخدام بيانات من سلسلة مسار. سيتم التعامل مع خطأ المسار وفقًا لقسم معالجة أخطاء بيانات المسار الموجود في جذر السلسلة. إذا كان مقطع بيانات المسار موجودًا (إذا كان هناك مقطع واحد) ، فسيتم نقل الأمر الأول. يتم رسم المسار الفرعي الحالي تلقائيًا على طول خط مستقيم تلقائي من البداية إلى النهاية. قد لا يكون لمقطع المسار هذا أي طول على الإطلاق. يستخدم الخط القريب طريقة تسمى 'stroke-linejoin' ، والتي تستخدم القيمة الحالية لـ 'stroke-linejoin' لربط نهاية المسار الفرعي ببداية المقطع الأولي. عند وجود مسار فرعي مغلق ، فإنه يتصرف بشكل مختلف عما هو عليه عند عدم وجود مقطعي المسار الأول والأخير.
لا تدعم Python حاليًا عمليات المسار القريب لإكمال المقطع. كل أمر خطي يرسم خطوطًا مستقيمة من النقطة الحالية إلى نقطة مختلفة. عند استخدام أمر l نسبي ، تكون نقطة نهاية السطر (cpx x ، cpy y). ترسم قيمة x الموجبة خطًا أفقيًا في اتجاه أمر h نسبي لمحور x موجب. تُظهر الأمثلة الخمسة الأولى مقطعًا مكعبًا واحدًا من المسار. أوامر القوس البيضاوي هي كما يلي: ينتهي القوس بـ cpy = y ، كما هو موضح في الرسم التالي. يمكن التعرف على الأقواس الأربعة بواسطة أعلام قوس كبير وعلم اكتساح.
إذا كان لعملية معالجة EBNF أن تكون ناجحة ، فيجب أن تستهلك أكبر قدر ممكن من إنتاج معين قبل نفاد الطاقة عند النقطة التي لم تعد تلبي فيها الشخصية متطلبات الإنتاج. لا تحتوي الخاصية d على القيمة لا شيء ، تم تعطيل العرض. عند حساب شكل غطاء أو استخدام علامات ، يتم تجاهل الاتجاه الافتراضي عند حدود المقطع. نتيجة لذلك ، إذا كان rx أو ry صفرًا ، يُصنف هذا القوس على أنه جزء من خط مستقيم (خطي) يصل إلى نقاط النهاية. يمكن العثور على عملية القياس هذه في قسم الملحق من الصيغة الرياضية. إذا كانت مقاطع المسار صفرية الأطوال ، فلا ينبغي إبطالها ، ولكن يجب أن يتأثر العرض. يمكن استخدام السمة "pathLength" لحساب حساب المؤلف لكامل طول المسار حتى يتمكن وكيل المستخدم من قياس حسابات المسافة على طول المسار. يتم تعريفه على أنه عملية متحركة داخل عنصر مسار ليس له طول. يمكن استخدام أوامر lineto و curveto و arcto فقط لحساب أطوال المسار.
نظرًا لتنوع الأشكال المتوفرة ، ليست هناك حاجة لاستخدام أي تنسيق واحد عند إنشاء مسارات مقطع باستخدام أشكال SVG. تعد مسارات القصاصة طريقة رائعة لإضافة لمسة أنيقة إلى تصميمك ، أو يمكن استخدامها لإنشاء تأثير سلس. يعد استخدام هذه الملفات أمرًا بسيطًا ويسمح لك بإنشاء تصميمات بسيطة أو معقدة بأي نوع من الأشكال. يمكن إنشاء مسارات المقطع من أي شكل SVG ويمكن تخصيصها وفقًا لاحتياجات المستخدم. يمكنك استخدامها لإنشاء تأثير سلس أو إنشاء لهجة مثالية لتصميمك.
كيف أقوم بإنشاء مجموعة في Svg؟
لا توجد طريقة واحدة محددة لإنشاء مجموعة في SVG. تتضمن بعض الطرق الشائعة استخدام عنصر "g" أو إنشاء عنصر "استخدام" يشير إلى مجموعة من العناصر.
ما هي مجموعة Svg؟
أنشأ اتحاد شبكة الويب العالمية (W3C) مجموعة عمل SVG من أجل معالجة مسألة تنسيق مستند بديل لشبكة الويب العالمية.
بيع ملفات Svg عبر الإنترنت
يمكن أن يكون بيع ملفات SVG عملاً مربحًا. يعد إنشاء منتجات رقمية للبيع فرصة تجارية مربحة يمكن استخدامها كعمل جانبي أو وظيفة بدوام كامل أو حتى كعمل إجازة. من الممكن إنشاء منتجات رقمية لبيعها سواء كنت مدرسًا أو طالبًا أو أمًا تقيم في المنزل أو تعمل أنت لست في خطر فقدان بياناتك الشخصية إذا قمت بإنشاء أو استخدام ملف SVG الخاص بك. يشكل السماح للمستخدمين غير الموثوق بهم بتحميل الملفات مخاطرة. إذا قمت بإنشاء ملف SVG الخاص بك ولم تقم بإضافة برامج نصية ضارة ، فيمكنك استخدامه.
هل يمكن أن يكون لدى Svgs فصول؟
يدعم HTML ، مثل SVG ، سمات الفئة والنمط ، والتي تسمح بتصميم خاص بالعنصر. تقوم سمة تسمى "فئة" بتعيين اسم فئة لعنصر ، والذي يتم استخدامه بعد ذلك للعنونة بواسطة لغة التصميم.
Svg مقابل قماش الرسم: أيهما أفضل للرسوم المتحركة؟
على الرغم من مزاياها ، لا تزال اللوحة القماشية تستخدم لإنشاء الصور. نتيجة لذلك ، ستخلق الرسوم المتحركة التي ينشئها المستخدم في SVG وهم التفاعل في الوقت الفعلي بين المستخدم وموقع الويب الخاص بك. علاوة على ذلك ، يعد SVG القابل للتطوير مثاليًا للتصميمات واسعة النطاق لأنه أكثر كفاءة. تعد Canvas أداة رائعة لإنشاء رسومات بسيطة ، ولكنها قد لا تكون الخيار الأفضل لإنشاء رسومات أو رسوم متحركة معقدة.
ما هي العلامة التي تسمح لك بتجميع علامات Svg المتعددة معًا؟
تسمح لك العلامة بتجميع علامات svg المتعددة معًا. هذا مفيد لإنشاء رسومات معقدة يمكن معالجتها كوحدة. على سبيل المثال ، يمكنك تجميع مجموعة من العلامات معًا لإنشاء مخطط شريطي.
ما هي العلامة التي تسمح لك بتجميع علامات Svg المتعددة معًا؟
يُستخدم عنصر g> لتجميع الأشكال باستخدام svagrant. بعد تجميعهم ، يمكنك تحويلهم إلى شكل واحد كما لو كانوا جميعًا واحدًا.
كيف تعمل مسارات Svg؟
عنصر المسار هو أقوى عنصر في مكتبة SVG للأشكال القياسية. يمكن استخدام هذا البرنامج لإنشاء مجموعة متنوعة من الأشكال والمنحنيات. باستخدام المسارات ، يمكنك إنشاء أشكال معقدة بدمج عدة خطوط مستقيمة أو خطوط منحنية. يمكن أن تتكون الأشكال متعددة الخطوط من خطوط مستقيمة فقط بترتيب واحد ، مثل متعدد الخطوط.
تبدو الأرقام والحروف في مسارات SVG عشوائية ، وقد تبدو مخيفة للوهلة الأولى. من الأفضل تحقيق تعلم مسارات SVG من خلال رسم شيء ما ، لذلك سنحاول رسم مستطيل بمسار. يجب استخدام Codepen أو أي شيء آخر يسمح لك برؤية التغييرات بسرعة كأداة تعليمية أثناء الترميز. لقد أنجزنا ما شرعنا في القيام به ، ولكن يمكننا تسهيل الأمر عليك. إذا أردنا رسم الجانب الأيمن من المستطيل ، فنحن نريد أن يكون قلم الرصاص في نفس المكان على المحور x ولكننا نريد أن يتحرك للأعلى بمقدار 200 على المحور y. نستخدم القيمة السالبة لـ y -200 للانتقال لأعلى. عندما نعود إلى البداية ، يمكننا استخدام الأمر z للعودة إلى موقعنا الأصلي.
تحويل Svg إلى مسار
تتكون الرسومات المتجهة من المسارات ، التي يتم تحديدها بنقطة البداية والنهاية ، بالإضافة إلى نقاط ومنحنيات وزوايا أخرى على طول الطريق. يمكن استخدام هذه المسارات لإنشاء أشكال ورسوم توضيحية معقدة. لتحويل ملف SVG إلى تنسيق يمكن استخدامه بواسطة طابعة أو معدة أخرى ، يجب تحويله إلى مسار. هناك عدة طرق مختلفة للقيام بذلك ، ولكن الأكثر شيوعًا هو استخدام برنامج تحرير متجه مثل Adobe Illustrator.
كل ما تكتبه في محرر HTML في CodePen هو ما يظهر داخل نص قالب HTML5 الأساسي. هذا هو الموقع حيث يمكنك إضافة فئات قد يكون لها تأثير على المستند بأكمله. يمكن تطبيق CSS على قلمك من أي ورقة أنماط متوفرة على الإنترنت. ما عليك سوى تحديد برنامج نصي من أي مكان على الإنترنت واستخدامه لكتابة القلم الخاص بك. باستخدام عنوان URL هنا ، سنضيفه بالترتيب الذي حصلت عليه قبل JavaScript في القلم. إذا كان البرنامج النصي يحتوي على امتداد ملف مرتبط بمعالج ما قبل المعالجة ، فسنحاول معالجته قبل أن نتمكن من التقديم.
أوامر المسار في Svg
في تعريف المسار ، يسمى أمر المسار الأول "البدء". يتم تحديد قيمة الأمر "الانتقال" بالتنسيق التالي. الأمر التالي ، الأمر "الخطي" ، يساوي الرقم المعروض بواسطة الأمر "الانتقال". يتم إلحاق الحرف "y" بمعامل الأمر "curveto" بدلاً من معلمة الأمر "lineto" مرة أخرى ، ولكن هذه المرة يحتوي على "منحنى" في قيمته. يوجه الكمبيوتر جهاز الكمبيوتر الخاص به إلى جعل وجهة الأمر "lineto" بنفس ارتفاع نقطة وجهة الأمر "curveto". يتبع معلمة الأمر 'curveto' معلمة الأمر 'linecap' ، لكن الأمر 'linecap' يحتوي على an'm 'في المعلمة الخاصة به هذه المرة. إذا قرر الكمبيوتر أن سطر الأمر "curveto" يجب أن ينتهي عند نقطة وجهة الأمر "lineto" بدلاً من الاستمرار في التقدم ، فسيتوقف عند نقطة الوجهة. يتم استخدام هذا الأمر ، مع الرقم '1' في المعلمة ، لملء آخر مساحة فارغة في تعريف المسار. ترشد هذه الطريقة الكمبيوتر لملء المسار باللون الحالي.
موقف مجموعة Svg
مجموعة svg هي عنصر حاوية يسمح لك بتجميع عناصر svg الأخرى معًا. يمكن أن يكون هذا مفيدًا لتطبيق تحويلات معينة على مجموعة من العناصر ، أو لتطبيق أنماط معينة على مجموعة من العناصر. يرتبط موضع مجموعة svg بموضع عنصرها الأصلي.
يمكن أن تكون عناصر svg متداخلة ، مما يسهل تنظيمها. على الرغم من حقيقة أن المستطيلين متطابقان (بصرف النظر عن الألوان) ، تختلف قيم x لعناصر الوالدين vg. من السهل تحريك المحتوى عن طريق إدخال التحويل في عنصر g. هذه الصورة هي مثال من مواصفات SVG 1.1. يمكنك تحريك g باستخدام التحويل = ترجم (س ، ص) لتحريك الأشياء داخل g والأشياء داخل g. بهذه الطريقة ، يتم تضمين # group1svg في #parent ، و x = 10 متعلق بالأصل. كان علينا استخدام علامة المجموعة بالإضافة إلى علامة المجموعة.
تحريك عنصر داخل رسم Svg
بمعنى آخر ، اعتني بـ x- لأنه متجه. الكود التالي ضروري لتحريك عنصر في الزاوية اليسرى العلوية لعناصر x ويتم استخدام إحداثيات y لعناصر x للقيام بذلك. إلى نهاية svg.append (g) ، حدد اسم المستخدم وكلمة المرور.
يجب ترجمة Thesvg (0،0).
تحويل svg (ترجمة (س ، ص))
وحدات مسار Svg
يمكن العثور على معرف وحدة الطول في SVG باستخدام الطرق التالية: em ، ex ، px ، pt ، pc ، cm ، mm ، in ، والنسب المئوية. ينشئ المستعرض نظام إحداثيات منفذ العرض ونظام إحداثيات مستخدم لعنصر SVG الأبعد بعد أن يحدد عرضه وارتفاعه.
مسار D في Svg
يتكون المسار d في SVG من أوامر المسار التالية: * br في D ، تشير الأحرف br> إلى 0.5 و 1.5 و 1.5. يحدد الأمر الأول (D) نقطة بداية الإحداثي (0.4 ، 0.5) ، والثاني عند 1.5 ، 1.5) ، والثالث عند 1.25 ، 0.5 ، والرابع عند 0.5 ، 0.5.