سلام! به عنوان یک تامین کننده Pillow، من بسیار مشتاقم تا با شما در میان بگذارم که چگونه با استفاده از Pillow یک افکت گرادیان سفارشی روی یک تصویر ایجاد کنید. Pillow یک کتابخانه شگفتانگیز پایتون است که پردازش تصویر را آسان میکند. چه طراحي باشيد كه به دنبال اضافه كردن استعداد به گرافيكي خود هستيد يا فقط كساني كه عاشق بازي با تصاوير هستند، اين راهنما براي شماست.
آنچه شما نیاز دارید
اول از همه، شما باید Pillow را نصب کنید. اگر قبلا این کار را نکرده اید، می توانید آن را با استفاده از pip نصب کنید. فقط ترمینال خود را باز کنید و دستور زیر را اجرا کنید:
بالش نصب پیپ
شما همچنین به درک اولیه پایتون نیاز دارید. نگران نباشید اگر تازه کار هستید. من همه چیز را مرحله به مرحله تجزیه خواهم کرد. و البته، برای کار به یک تصویر نیاز دارید. شما می توانید از هر تصویری که دوست دارید استفاده کنید، اما برای هدف این راهنما، فرض می کنم یک تصویر ساده JPEG یا PNG دارید.
مرحله 1: کتابخانه های لازم را وارد کنید
هنگامی که Pillow را نصب کردید، اولین کاری که باید انجام دهید این است که آن را به اسکریپت پایتون خود وارد کنید. شما همچنین به آن نیاز خواهید داشتتصویرماژول از Pillow. در اینجا نحوه انجام این کار آمده است:
از تصویر واردات PIL
این خط کد را وارد می کندتصویرماژول از کتابخانه Pillow، که به شما امکان باز کردن، دستکاری و ذخیره فرمت های مختلف فایل های تصویری را می دهد.
مرحله 2: تصویر را باز کنید
اکنون که کتابخانه های لازم را وارد کرده اید، زمان باز کردن تصویری است که می خواهید با آن کار کنید. می توانید استفاده کنیدopen()روش ازتصویرماژول برای انجام این کار در اینجا یک مثال است:
تصویر = Image.open('your_image.jpg')
جایگزین کنید'your_image.jpg'با مسیر واقعی فایل تصویری شما. اگر تصویر شما با فرمت دیگری مانند PNG است، کافیست پسوند فایل را مطابق با آن تغییر دهید.
مرحله 3: Gradient را ایجاد کنید
مرحله بعدی ایجاد گرادیانی است که روی تصویر اعمال می کنید. روش های مختلفی برای ایجاد یک گرادیان وجود دارد، اما برای سادگی، ما یک گرادیان خطی ایجاد می کنیم. یک گرادیان خطی در یک خط مستقیم، به صورت افقی، عمودی یا مورب تغییر رنگ می دهد.
در اینجا نحوه ایجاد یک گرادیان خطی عمودی ساده آمده است:
عرض، ارتفاع = شیب تصویر.اندازه = Image.new('RGB', (عرض، ارتفاع)) برای y در محدوده (ارتفاع): r = int((y / ارتفاع) * 255) g = int((y / ارتفاع) * 255) b = int((y / ارتفاع) * 255) برای x در محدوده (عرض، x، پیکسل) ب))
بیایید این کد را بشکنیم. ابتدا عرض و ارتفاع تصویر اصلی را با استفاده ازاندازهویژگی سپس یک شیء تصویر جدید به نام ایجاد می کنیمگرادیانبا ابعادی مشابه تصویر اصلی
در مرحله بعد از یک تودرتو استفاده می کنیمبرایحلقه برای تکرار روی هر پیکسل در تصویر گرادیان. برای هر ردیف (و)، مقادیر قرمز، سبز و آبی را بر اساس موقعیت سطر در تصویر محاسبه می کنیم. هر چه ردیف به پایین تصویر نزدیکتر باشد، مقادیر بالاتر خواهد بود و یک افکت گرادیان ایجاد می کند. در نهایت ازputpixel()روشی برای تنظیم رنگ هر پیکسل در تصویر گرادیان.
مرحله 4: گرادیان را با تصویر ترکیب کنید
اکنون که گرادیان خود را داریم، زمان آن است که آن را با تصویر اصلی ترکیب کنیم. ما می توانیم استفاده کنیمترکیب ()روش ازتصویرماژول برای انجام این کار در اینجا به این صورت است:
آلفا = 0.5 نتیجه = Image.blend (تصویر، گرادیان، آلفا)
راترکیب ()متد سه آرگومان می گیرد: تصویر اول، تصویر دوم و مقدار آلفا. مقدار آلفا شفافیت تصویر دوم را هنگامی که با تصویر اول ترکیب می شود تعیین می کند. مقدار 0 به این معنی است که تصویر دوم کاملا شفاف است، در حالی که مقدار 1 به این معنی است که تصویر دوم کاملاً مات است. در این مثال، ما از مقدار آلفای 0.5 استفاده می کنیم که به این معنی است که گرادیان نیمه شفاف خواهد بود.
مرحله 5: نتیجه را ذخیره کنید
در نهایت، زمان ذخیره نتیجه فرا رسیده است. می توانید استفاده کنیدذخیره ()روش ازتصویرماژول برای انجام این کار در اینجا یک مثال است:
result.save ('result.jpg')
جایگزین کنید'result.jpg'با مسیر واقعی و نام فایلی که می خواهید نتیجه را در آن ذخیره کنید. در صورت تمایل میتوانید فرمت فایل دیگری را انتخاب کنید، فقط پسوند فایل را متناسب با آن تغییر دهید.
سفارشی کردن گرادیان
گرادیانی که در مراحل قبل ایجاد کردیم یک گرادیان ساده سیاه به سفید بود. اما می توانید شیب را برای استفاده از رنگ ها و جهت های مختلف سفارشی کنید. در اینجا چند نمونه آورده شده است:
تغییر رنگ ها
برای تغییر رنگ گرادیان، می توانید مقادیر قرمز، سبز و آبی را در تودرتو تغییر دهید.برایحلقه به عنوان مثال، برای ایجاد یک گرادیان قرمز به زرد، می توانید موارد زیر را انجام دهید:
عرض، ارتفاع = شیب اندازه تصویر = Image.new('RGB', (عرض، ارتفاع)) برای y در محدوده (ارتفاع): r = 255 g = int((y / ارتفاع) * 255) b = 0 برای x در محدوده (عرض): gradient.putpixel((x, y), (r, g, b))
در این مثال، مقدار قرمز همیشه 255 است، با حرکت به سمت پایین، مقدار سبز از 0 به 255 افزایش می یابد، و مقدار آبی همیشه 0 است. این یک گرادیان قرمز به زرد ایجاد می کند.
تغییر جهت
برای تغییر جهت گرادیان، می توانید تودرتو را تغییر دهیدبرایحلقه برای تکرار بر روی پیکسل ها به ترتیب متفاوت. به عنوان مثال، برای ایجاد یک گرادیان افقی، می توانید موارد زیر را انجام دهید:
عرض، ارتفاع = شیب اندازه تصویر = Image.new('RGB'، (عرض، ارتفاع)) برای x در محدوده (عرض): r = int((x / عرض) * 255) g = int((x / عرض) * 255) b = int((x / عرض) * 255) برای y در محدوده (ارتفاع، xel) ب))
در این مثال، ما در حال تکرار روی پیکسل ها به صورت افقی به جای عمودی هستیم که یک گرادیان افقی ایجاد می کند.
چرا از بالش استفاده کنیم؟
Pillow یک کتابخانه قدرتمند و همه کاره برای پردازش تصویر در پایتون است. دارای طیف گسترده ای از ویژگی ها، از جمله پشتیبانی از فرمت های مختلف فایل های تصویری، دستکاری تصویر و فیلتر کردن تصویر است. چه در حال کار بر روی یک پروژه شخصی کوچک یا یک برنامه تجاری در مقیاس بزرگ باشید، Pillow می تواند به شما در دستیابی به اهدافتان کمک کند.
به عنوان یکتامین کننده بالش، من فواید استفاده از Pillow را در پروژه های مختلف از نزدیک دیده ام. استفاده از آن آسان است، به خوبی مستند شده است و جامعه بزرگی از کاربران دارد. بنابراین اگر به دنبال راهی مطمئن و کارآمد برای کار با تصاویر در پایتون هستید، توصیه میکنم Pillow را امتحان کنید.
سایر کاربردهای بالش
ایجاد افکت های شیب سفارشی بر روی تصاویر تنها یکی از بسیاری از کارهایی است که می توانید با Pillow انجام دهید. در اینجا برخی از کاربردهای دیگر بالش وجود دارد که ممکن است برای شما جالب باشد:


- تغییر اندازه تصویر: می توانید از Pillow برای تغییر اندازه تصاویر در ابعاد مختلف استفاده کنید. اگر نیاز به تنظیم اندازه یک تصویر برای یک هدف خاص، مانند آپلود آن در یک وب سایت یا چاپ آن دارید، این کار مفید است.
- برش تصویر: بالش به شما امکان می دهد تصاویر را برای حذف قسمت های ناخواسته برش دهید. اگر میخواهید روی یک ناحیه خاص از یک تصویر فوکوس کنید یا اگر نیاز به تنظیم نسبت تصویر یک تصویر دارید، این کار مفید است.
- فیلتر کردن تصویر: Pillow دارای انواع فیلترهای داخلی است که می توانید آنها را روی تصاویر اعمال کنید، مانند تاری، وضوح و تشخیص لبه. از این فیلترها می توان برای بهبود ظاهر یک تصویر یا ایجاد جلوه های ویژه استفاده کرد.
- تبدیل تصویر: می توانید از Pillow برای تبدیل تصاویر از یک فرمت فایل به فرمت دیگر استفاده کنید. اگر نیاز به کار با تصاویر در یک فرمت فایل خاص دارید یا اگر می خواهید به دلایل سازگاری یک تصویر را در قالب فایل دیگری ذخیره کنید، این کار مفید است.
نتیجه گیری
در پایان، ایجاد یک افکت شیب سفارشی روی یک تصویر با Pillow یک راه سرگرم کننده و آسان برای افزودن خلاقیت به تصاویر شما است. تنها با چند خط کد پایتون، میتوانید افکتهای گرادیان مختلفی ایجاد کنید و آنها را مطابق با نیاز خود سفارشی کنید.
اگر علاقه مند به خرید هستیدبالشیاروکش بالشمحصولات، یا اگر در مورد استفاده از Pillow برای پروژه های خود سوالی دارید، در تماس با ما دریغ نکنید. ما اینجا هستیم تا به شما در رفع تمام نیازهای مربوط به بالش کمک کنیم.
ما نیز ارائه می دهیمباسبار UVWمحصولاتی که برای بسیاری از کاربردهای الکتریکی ضروری هستند. اگر در بازار شینههای باکیفیت هستید، حتماً انتخاب ما را بررسی کنید.
پس منتظر چی هستی؟ همین امروز با Pillow آزمایش کنید و ببینید چه چیزهای شگفت انگیزی می توانید خلق کنید!
مراجع
- اسناد بالش: https://pillow.readthedocs.io/
- وب سایت رسمی پایتون: https://www.python.org/
