একটি পটভূমি-চিত্র সহ এসভিজি পাথ উপাদান পূরণ করুন


166

background-imageকোনও এসভিজি <path>উপাদানটির জন্য একটি সেট করা কি সম্ভব ?

উদাহরণস্বরূপ, আমি যদি উপাদানটি সেট করি class="wall"তবে সিএসএস স্টাইলটি .wall {fill: red;}কাজ .wall{background-image: url(wall.jpg)}করে তবে তাও হয় না .wall {background-color: red;}


1
: করা SVG পাঠ্যের জন্য ব্যাকগ্রাউন্ড ইমেজ সেট কিভাবে, ঐচ্ছিকরূপে প্রতি চরিত্র ভিত্তিতে দেখানো stackoverflow.com/a/10853878/405017
Phrogz

যারা গভীর তথ্যের জন্য আরও কিছু সন্ধান করছেন তাদের জন্য এই নিবন্ধটির লিঙ্কটি দেখুন
পাওলো বুয়েনো

উত্তর:


261

আপনি পটভূমিটিকে একটি নিদর্শন হিসাবে তৈরি করে এটি করতে পারেন :

<defs>
  <pattern id="img1" patternUnits="userSpaceOnUse" width="100" height="100">
    <image xlink:href="wall.jpg" x="0" y="0" width="100" height="100" />
  </pattern>
</defs>

আপনার চিত্র অনুসারে প্রস্থ এবং উচ্চতা সামঞ্জস্য করুন, তারপরে এটিকে পথ থেকে রেফারেন্স করুন:

<path d="M5,50
         l0,100 l100,0 l0,-100 l-100,0
         M215,100
         a50,50 0 1 1 -100,0 50,50 0 1 1 100,0
         M265,50
         l50,100 l-100,0 l50,-100
         z"
  fill="url(#img1)" />

কাজের উদাহরণ


3
খুব সুন্দর, বেস 64 ইমেজের সাথেও কি এটি কাজ করে? প্রাচীর.jpg এর পরিবর্তে data:image/png;base64,iVBORw0KGgoAAআপনার মতো কিছু সাধারণ সিএসএস হবে?
ক্রিস্টোফ

12
ক্রিস্টফ আমি জানি না, চেষ্টা করে দেখুন।
রবার্টক

2
@ রবার্টক আমি চেষ্টা করেছিলাম এবং এটি কার্যকর হয়নি তবে আমার একটি সদৃশ শৈলীর উপাদান ছিল। এটি মুছে ফেলার মাধ্যমে, এটি ঠিক কাজ করেছে;)
ক্রিস্টোফ

4
@ আরবার্টক: আপনার উত্তর সম্পর্কে আমার একটা প্রশ্ন আছে। প্যাটার্নটি বৈশ্বিক স্থানাঙ্ক (0,0) থেকে শুরু হয়। প্যাটার্নটি সংযুক্ত বস্তু থেকে স্থানীয় স্থানাঙ্ক সিস্টেমটি ব্যবহার করা দেওয়া সম্ভব? আমি আমার এসভিজি-র বিভিন্ন স্থানে একটি রেক্ট আঁকতে চাই এবং যা ঘটে তা হ'ল, প্যাটার্নটি গর্তের পটভূমিতে পুনরাবৃত্তি করা হয় এবং বস্তুগুলি মুখোশ হিসাবে ব্যবহৃত হয়।
টোবিয়াস গোলস

6
@ রবার্টক দয়া করে আপনার উত্তরটি আপডেট করুন যা xlink:hrefএসভিজি 2 এর পরে অবনমিত হয়েছে এবং কেবলমাত্র hrefএখনই ব্যবহার করতে উল্লেখ করুন । বিকাশকারী.মোজিলা.আর.ইন-
ইউএস /
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.