كيفية جعل حاوية Svg مناسبة

نشرت: 2022-12-24

تعد صور SVG رائعة لعدد من الأسباب. إنها صور متجهة ، مما يعني أنه يمكن تغيير حجمها إلى أي حجم دون فقدان الجودة. كما أنها صغيرة في حجم الملف ، مما يجعلها مثالية لتطبيقات الويب. ومع ذلك ، فإن إحدى المشكلات التي تظهر غالبًا هي أن صور SVG لا تتناسب تلقائيًا مع حاوياتها. هناك عدة طرق لإصلاح هذا. الأول هو ضبط سمات العرض والارتفاع للعنصر على 100٪. سيؤدي ذلك إلى تغيير حجم الصورة لتناسب الحاوية. هناك طريقة أخرى وهي تعيين سمة viewBox. سيحدد هذا نظام إحداثيات جديدًا للصورة ، مما سيجعلها تتناسب مع الحاوية. أسهل طريقة لتغيير حجم صورة SVG لتلائم حاويتها هي ضبط خصائص العرض والارتفاع على 100٪. يمكن القيام بذلك بشكل مضمّن أو في CSS. مضمنة: ... CSS: .container {width: 400px؛ الارتفاع: 300 بكسل ؛ } .container svg {width: 100٪؛ الارتفاع: 100٪؛ } بمجرد ضبط العرض والارتفاع على 100٪ ، سيتم تغيير حجم الصورة لتناسب الحاوية. إذا كانت الصورة أكبر من الحاوية ، فسيتم تصغيرها. إذا كانت الصورة أصغر من الحاوية ، فسيتم تكبيرها. يمكن أيضًا استخدام سمة viewBox لتغيير حجم صورة SVG لتلائم حاويتها. تحدد سمة viewBox نظام إحداثيات جديدًا للصورة. يتم استخدامه على النحو التالي: ... القيمتان الأوليان هما إحداثيات x و y للأصل الجديد. القيمتان الأخيرتان هما عرض الصورة وارتفاعها. إذا كانت الصورة أكبر من الحاوية ، فسيتم تصغيرها. يمكن أيضًا استخدام سمة viewBox لاقتصاص الصورة. إذا كانت الصورة أكبر من الحاوية ، فسيتم اقتصاص المساحة الإضافية. إذا كانت الصورة أصغر من الحاوية ، فسيتم ملء المساحة الفارغة بلون الخلفية. يمكن استخدام سمة viewBox على النحو التالي: كيف يمكنني قياس حجم Svg لملاءمة حاوية؟ صورة بواسطة: https: //googleapis.com إذا كنت تريد تحجيم SVG لملاءمة حاوية ، فيمكنك استخدام سمة viewBox. تأخذ سمة viewBox أربعة أرقام مفصولة بمسافات: إحداثيات x و y للزاوية اليسرى العلوية لمربع العرض ، متبوعة بالعرض والارتفاع. كتبت Amelia Bellamy-Royds دليلاً لا يُصدق لتوسيع نطاق SVG. إنها ليست بسيطة مثل توسيع نطاق الرسومات النقطية ، ولكنها توفر عددًا كبيرًا من الاحتمالات المثيرة للاهتمام. بالنسبة للمبتدئين ، قد يكون من الصعب معرفة كيفية إعداد SVG بطريقة تناسبه بشكل مثالي. الصور المدهشة ، هناك نسبة عرض إلى ارتفاع محددة بوضوح: نسبة الارتفاع إلى العرض. إذا قمت بإجبار المتصفح على رسم صورة نقطية بحجم مختلف عن الارتفاع والعرض الجوهريين ، فسيؤدي ذلك إلى تشويه الصورة. سيتم رسم SVGs المضمنة بالحجم المحدد في الكود افتراضيًا ، بغض النظر عما إذا كانت اللوحة كبيرة أم صغيرة. ViewBox هي القطعة الأخيرة في عملية إنشاء Scalable Vector Graphics للرسومات المتجهة. ViewBox هي سمة من سمات العنصر> svg. قيمته عبارة عن قائمة من أربعة أرقام مفصولة بمسافة بيضاء أو فاصلات: x و y والعرض والارتفاع. يجب تحديد النظام الإحداثي للزاوية اليسرى العلوية لإطار العرض على أنه x و y. الارتفاع هو عدد الأحرف / الإحداثيات التي يجب قياسها لملء الفراغ الذي يتركه الارتفاع. يتم تعيين نسبة العرض إلى الارتفاع للصورة على "صواب" ، لذلك لن تتمكن من تشويهها أو تمديدها إذا أعطيتها أبعادًا أخرى. يدعم CSS الآن القدرة على ملاءمة أنواع الصور المختلفة ، مما يسمح لك بفعل الشيء نفسه مع الكائنات. يمكنك أيضًا ضبط إعدادات saveRatioAspect = none لمقياس الرسم تمامًا مثل الصورة النقطية ، حيث تتيح لك الصور النقطية ضبط عرضها وارتفاعها بالإضافة إلى المقياس الذي تظهر به. هل تستطيع sva فعل ذلك؟ يصبح الأمر أكثر صعوبة مع مرور الأشهر. يمكنك استخدامه للتحجيم التلقائي للصورة مع صورة في ملف> img> ، ولكن سيتعين عليك اختراقها قليلاً للقيام بذلك. بالإضافة إلى مجموعة متنوعة من خصائص CSS ، يمكنك التحكم في نسبة العرض إلى الارتفاع لعنصر عن طريق ضبط ارتفاعه وهامشه. ستقوم المتصفحات الأخرى تلقائيًا بتغيير حجم الصورة إلى 300 * 150 إذا كانت الصورة تحتوي على viewBox ؛ لم يتم تعريف السلوك في أي مواصفات. إذا كنت تستخدم أحدث متصفحات Blink أو Firefox ، فيمكنك تغيير حجم صورتك لتلائم مربع العرض ، وإذا لم تحدد الطول والعرض معًا ، فسيستخدم المتصفح المفضل لديك العرض والارتفاع الافتراضيين. إن أبسط طريقة لاستبدال العناصر ، بالإضافة إلى SVG المضمنة والعناصر المستبدلة الأخرى ، هي استخدام عنصر الحاوية. في الرسم المضمن <svg> ، سيكون الارتفاع الرسمي (في معظم الحالات) صفرًا. قد تؤدي قيمة saveRatioAspect إلى تغيير حجم الرسم إلى لا شيء. بدلاً من تمديد الرسومات الخاصة بك ، يجب عليك سحبها على العرض الكامل الذي تمنحه إياها ، مع ترك جزء من منطقة الحشو مع نسبة العرض إلى الارتفاع المناسبة. يمكن استخدام سمات ViewBox و saveRatioAspect لتحقيق مجموعة واسعة من النتائج. في مقياس رسومي مستقل ، يمكن استخدام العناصر المتداخلة مع سمات القياس الخاصة بها لفصل أجزاء مقياسك. ستتيح لك هذه الطريقة إنشاء رسم رأسي يمتد لملء شاشة عريضة دون تجاوز حد الارتفاع. كيف يمكنني إصلاح حجم Svg؟ جميع الإجابات على هذا السؤال ، حيث إن أفضل طريقة لإصلاح حجم ملف SVG ستختلف اعتمادًا على الملف الفردي. ومع ذلك ، تتضمن بعض طرق إصلاح حجم ملف SVG استخدام محرر SVG لتغيير حجم الملف ، أو تحويل الملف إلى تنسيق مختلف. تم إصلاح أحد مرشحات الصور لاستخدام الحجم المحسوب بدلاً من الخطأ في SVGs. كنا نتوقع أن تكون قيم الطول والعرض في شكل عدد صحيح ، لذلك لم نكن على دراية بهذه المشكلة. يتضمن إصدار WordPress الذي تم إصداره مؤخرًا ميزة جديدة تتيح لك حساب الأبعاد الفعلية التي تم إنشاؤها بواسطة WordPress. في الاختبارات التي أجريتها ، استخدمت كل من المحررين الكلاسيكيين والمحررين ، ولم أر أي اختلاف في ترميز الصور بينهما قبل هذا الإصلاح وبعده. لقد نظرت فيه مرة أخرى وأنا متأكد من أنني اكتشفت ذلك. إذا نظرت إلى SVGs الخاصة بك ووجدت السمات التي تبحث عنها ، فسأقول إنها ليست هي نفسها التي تستخدمها. كما ترى من المثال الخاص بك ، يبلغ ارتفاع مربع عرض SVG 27 وعرضه 23 ، ولكن يجب ضبط الارتفاع والعرض الفعليين على 1030. يبدو أنه منطق جديد في وظيفة one_pixel_fix ، والتي تحدد العرض الافتراضي للصورة هو 100 × 100 بكسل. إذا تم ضبطهما على قيمة خالية في الإصدار السابق ، فلا توجد مشكلة. من الممتع ملاحظة أن الطول والعرض يتم إنتاجهما مرتين. يحدث التكرار الأول والأخير في بداية علامة IMG ونهايتها ، على التوالي. نظرًا لأن المستعرض يأخذ التكرار الأول في الاعتبار ، فإنه يعرض ذلك بدلاً من الذي يليه. عند استخدام الإصدار الحالي ، انسخ> imgsrc = example-path / file.svg ارتفاع التحميل = ”70 ″ width =” 68. يرجى إخبارنا إذا كنت ترغب في اختبار التغييرات قبل الالتزام بعلاقات عامة للتراجع عن هذه التغييرات المحددة: https://github.com/safe-svg/pull/41. باستخدام تنسيق الرسم المتجه SVG ، يمكننا إنشاء رسومات مخصصة . نظرًا لأن SVG هو تنسيق متجه ، فإنه يتمتع بدرجة أعلى من المرونة والدقة من صور PNG. إذا كنت تريد إنشاء رسم مرن باستخدام SVG ، على سبيل المثال ، فستحتاج إلى إزالة سمات الطول والعرض. سيكون SVG متجاوبًا ، وهي ميزة مهمة لصفحات الويب. مربع العرض مفيد بشكل خاص لتخطيط Svg عندما تحتاج إلى تخطيط مستند SVG ووضع العناصر بالنسبة إلى منفذ العرض ، يكون viewBox مفيدًا بشكل خاص. كيف يمكنني ملء حاوية Svg؟ هناك عدة طرق مختلفة لملء حاوية svg ، ولكن الطريقة الأكثر شيوعًا هي استخدام سمة "ملء". يمكن تطبيق هذا على عنصر الحاوية ، أو على العناصر الفردية داخل الحاوية. يمكن تعيين سمة التعبئة على لون أو تدرج أو نقش.