گرافیک‌های SVG بخشی از تقریباً هر پروژه مدرن هستند، از آیکون‌های اپلیکیشن و نمودارها گرفته تا گزارش‌های بصری و داشبوردها. اما اگر بتوانید رنگ‌های آن‌ها را به‌طور مستقیم از کد پایتون خود تنظیم کنید چه؟ به جای باز کردن هر فایل در یک ابزار گرافیکی، می‌توانید این فرآیند را در چند خط خودکار کنید. چه در حال طراحی داشبورد باشید، چه تولید گزارش یا سفارشی‌سازی آیکون‌های اپلیکیشن، تغییر رنگ‌های SVG با پایتون می‌تواند زمان زیادی را برای شما صرفه‌جویی کند. با Aspose.SVG برای پایتون، می‌توانید به سادگی یک SVG را بارگذاری کرده، رنگ‌های پرکنندگی آن را تغییر داده و نسخه به‌روزشده را با دقت و کنترل ذخیره کنید. در این راهنما، شما را راهنمایی خواهیم کرد که چگونه رنگ پرکنندگی SVG را در پایتون تغییر دهید.

رنگ پر کردن SVG چیست؟

SVG (Scalable Vector Graphics) یک فرمت تصویر مبتنی بر XML است که بدون کاهش کیفیت مقیاس‌پذیر است. هر شکل، مانند <circle>, <rect>, یا <path> می‌تواند دارای ویژگی fill باشد که رنگ داخلی آن را تعریف می‌کند.

برای مثال:

<rect width="100" height="50" fill="blue" />

تغییر fill="blue" به fill="red" مستقیماً مستطیل را قرمز می‌کند.

برای یک شکل ساده است، اما اگر شما با صدها SVG کار می‌کنید یا به‌طور پویا گزارش‌های بصری تولید می‌کنید، انجام این کار به‌صورت دستی قابل مقیاس نیست. اینجاست که اتوماسیون پایتون به کار می‌آید.

چرا رنگ پر کردن SVG را در پایتون تغییر دهیم؟

موارد واقعی بسیاری برای ویرایش برنامه‌نویسی رنگ‌های پرکننده SVG وجود دارد:

  • تصویرسازی داده‌های پویا: به نمودارها یا داشبوردها رنگ‌های سفارشی اعمال کنید.
  • ثبات برند: به‌طور خودکار از رنگ‌های برند در گرافیک‌های تولید شده استفاده کنید.
  • تم‌های روشن/تاریک: آیکون‌های رابط کاربری را به رنگ تم‌های برنامه تغییر دهید.
  • خودکارسازی: به‌روزرسانی چندین SVG بدون باز کردن ابزار طراحی.

به جای استفاده از Inkscape یا Illustrator، بگذارید پایتون این کار را سریع، به طور مداوم و به صورت کاملاً خودکار انجام دهد.

با Aspose.SVG for Python ، شما می‌توانید SVGها را بدون هیچگونه وابستگی به شخص ثالث به راحتی تجزیه، ویرایش و صادر کنید.

Aspose.SVG را برای پایتون نصب کنید

کتابخانه را از PyPI نصب کنید:

pip install aspose-svg-net

توجه: شما می‌توانید Aspose.SVG برای پایتون را همچنین از releases بارگیری کنید.

سپس آن را به پروژه خود وارد کنید:

import aspose.svg as svg

رنگ پرکننده SVG را در پایتون تغییر دهید

بیایید ساده شروع کنیم. ما یک فایل SVG موجود را بارگذاری می‌کنیم، رنگ پرکننده آن را تغییر می‌دهیم و نسخه به‌روزرسانی شده را ذخیره می‌کنیم.

برای تغییر رنگ پرکننده SVG مراحل زیر را دنبال کنید:

  1. فایل SVG را به یک SVGDocument بارگذاری کنید.
  2. به عنصر ریشه دسترسی پیدا کنید.
  3. عنصری را که می‌خواهید رنگ آن را تغییر دهید پیدا کنید.
  4. ویژگی fill آن را به‌روزرسانی کنید.
  5. فایل به‌روز شده را ذخیره کنید.

نمونه کد زیر نشان می‌دهد که چگونه می‌توان یک فایل SVG موجود را بارگذاری کرده و رنگ پر آن را تغییر داد:

import aspose.svg as svg

# 1. سند SVG را بارگذاری کنید
document = svg.SVGDocument("sample.svg")

# 2. عنصر SVG ریشه ای سند را دریافت کنید.
svgElement = document.root_element

# 3. همه عناصر دایره‌ای را در عنصر g پیدا کنید
circleNodes = svgElement.query_selector("circle")

# 4. عنصر دایره اول را بگیرید و ویژگی‌های پرشدن را تنظیم کنید
circleNodes.set_attribute("fill", "#0F0")          # bright green
circleNodes.set_attribute("fill-opacity", "0.3")   # 30% opacity

# ۵. SVG به‌روز شده را ذخیره کنید
document.save("sample_updated.svg")
تغییر رنگ پرکردن SVG در پایتون

رنگ پر کردن SVG را در پایتون تغییر دهید - مرحله به مرحله.

لطفاً محتوای عنصر دایره ای تصویر sample.svg را در زیر پیدا کنید.

  <!-- Circle element -->
  <circle cx="60" cy="75" r="30" fill="#FF6347" stroke="#000" stroke-width="2" />

در اینجا محتوای به‌روزرسانی شده عنصر دایره از تصویر sampleupdated.svg قرار دارد.

  <!-- Circle element -->
  <circle cx="60" cy="75" r="30" fill="#0F0" stroke="#000" stroke-width="2" fill-opacity="0.3"/>

یک مسیر SVG را با پایتون پر کنید

شما همچنین می‌توانید یک عنصر <path> خاص را تغییر دهید، که برای آیکون‌ها یا اشکال وکتور مفید است.

برای تنظیم رنگ پر کردن یک عنصر <path> در یک SVG موجود، مراحل زیر را دنبال کنید:

  1. SVG را با SVGDocument بارگذاری کنید.
  2. به عنصر ریشه دسترسی پیدا کنید.
  3. انتخاب <path> هدف با استفاده از query_selector() .
  4. فیل fill (و گزینه‌ای fill-opacity) را تنظیم کنید.
  5. Save the result.

در زیر کد نمونه‌ای است که نحوه پر کردن یک عنصر مسیر را در پایتون نشان می‌دهد.

import aspose.svg as svg

# 1. سند SVG را بارگذاری کنید
document = svg.SVGDocument("simple-path.svg")

# 2. عنصر ریشه SVG سند را دریافت کنید
svgElement = document.root_element

# 3. تمام عناصر دایره‌ای را در عنصر g پیدا کنید
circle_element = svgElement.query_selector("path:nth-child(1)")

# 4. اولین عنصر دایره را بگیرید و ویژگی‌های پر کردن را تنظیم کنید
circle_element.set_attribute("fill", "#0F0")  # bright green
circle_element.set_attribute("fill-opacity", "0.3")  # 30% opacity

# 5. SVG به‌روز شده را ذخیره کنید
document.save("simple-path-updated.svg")
یک مسیر SVG را با استفاده از پایتون پر کنید

یک مسیر SVG را با استفاده از پایتون پر کنید.

لطفاً محتویات تصویر Sample-Path.svg را در زیر پیدا کنید.

<svg height="400" width="800" xmlns="http://www.w3.org/2000/svg">
	<g stroke="black">
		<path d="M 10 100 Q 25 10 180 100 T 250 100 T 300 100 T 390 130" stroke="red" stroke-width="3" fill="none" />
    </g>
</svg>

لطفا محتوای تصویر simple-path-updated.svg را در زیر پیدا کنید.

<svg height="400" width="800" xmlns="http://www.w3.org/2000/svg">
	<g stroke="black">
		<path d="M 10 100 Q 25 10 180 100 T 250 100 T 300 100 T 390 130" stroke="red" stroke-width="3" fill="#0F0" fill-opacity="0.3"/>
    </g>
</svg>

رنگ آمیزی SVG را از طریق ویژگی Style اعمال کنید

شما همچنین می‌توانید رنگ پر کردن SVG را با استفاده از ویژگی style تنظیم کنید، درست مانند CSS درون‌خطی. مراحل زیر را دنبال کنید:

  1. SVG را با SVGDocument(path) بارگذاری کنید.
  2. به عنصر ریشه دسترسی پیدا کنید.
  3. از query_selector() برای انتخاب عنصر استفاده کنید.
  4. سبک آن را با set_attribute() به روز کنید.
  5. SVG ویرایش شده را ذخیره کنید.

کد نمونه زیر نشان می‌دهد که چگونه رنگ پر کردن SVG را با استفاده از ویژگی style تغییر دهیم:

import aspose.svg as svg

# 1. بارگذاری یک SVG موجود
document = svg.SVGDocument("sample.svg")

# 2. عنصر ریشه
root = document.root_element

# 3. عنصری را که می‌خواهید رنگ کنید انتخاب کنید (یک انتخاب‌گر را انتخاب کنید)
target = root.query_selector("circle")  # or "path", ".some-class", "#myPath"

# 4. استفاده از ویژگی style برای رنگ آمیزی заполнить
target.set_attribute("style", "fill:blue")

# 5. نتیجه را ذخیره کن
document.save("ApplyStyle.svg")
استفاده از پر کردن SVG با استفاده از ویژگی style در پایتون

استفاده از پر کردن SVG با استفاده از ویژگی Style در پایتون.

  <!-- Circle element -->
  <circle cx="60" cy="75" r="30" fill="#FF6347" stroke="#000" stroke-width="2" style="fill: blue;"/>

یک مجوز رایگان Aspose دریافت کنید

برای فعال کردن تمامی امکانات و حذف محدودیت‌های ارزیابی، از Aspose یک مجوز موقت رایگان درخواست کنید. این به شما امکان می‌دهد هر ویژگی را بدون محدودیت آزمایش کنید.

منابع یادگیری رایگان

در اینجا منابعی وجود دارد که به شما کمک می‌کند بیشتر کاوش کنید:

رنگ پر کردن SVG : سؤالات متداول

Q: آیا Aspose.SVG می‌تواند گرادیانت‌ها یا پرکردن با شفافیت را مدیریت کند؟

A: بله، این از گرادیان‌ها، کدری، و پر کردن الگوها پشتیبانی می‌کند که همه آنها از طریق دستکاری ویژگی‌ها در دسترس هستند.

Q: اگر SVG من از CSS برای رنگ‌ها استفاده کند چه؟

A: شما می‌توانید ویژگی style را تغییر دهید یا قوانین داخلی را به‌طور مستقیم ویرایش کنید.

Q: آیا می‌توانم SVGهای ویرایش‌شده را به فرمت‌های دیگر مانند PNG یا PDF صادر کنم؟

A: قطعاً. Aspose.SVG می‌تواند SVG‌ها را به فرمت‌های PNG، JPG، BMP یا PDF تبدیل کند.

Q: آیا بستگی به نرم‌افزارهای خارجی دارد؟

A: نه. Aspose.SVG به طور مستقل اجرا می‌شود. نیازی به Inkscape، Illustrator یا ابزارهای دیگر نیست.

نتیجه‌گیری

در این مقاله، شما یاد گرفته‌اید که چگونه رنگ‌های پرکننده SVG را در پایتون با استفاده از Aspose.SVG برای پایتون تغییر دهید. این ابزار کنترل کامل از بارگذاری و ویرایش عناصر تا ذخیره‌سازی و حتی صادر کردن نتایج شما به عنوان PNG را فراهم می‌کند.

این رویکرد به شما کنترل کامل می‌دهد تا:

  • آیکون‌ها و نمودارها را رنگی کنید
  • اتوماسیون تم‌ها
  • به‌روزرسانی دارایی‌های وکتور به‌صورت دینامیک

با Aspose.SVG، کد شما به دستیار طراحی شما تبدیل می‌شود که ویرایش‌های تکراری را با دقت و سهولت انجام می‌دهد.

به کمک نیاز دارید؟ برای دریافت کمک مستقیم از توسعه‌دهندگان، به forum aspose.com مراجعه کنید.

همچنین ببینید