لایه تنظیم سیاه و سفید
کار با لایه تنظیم سطوح در فتوشاپ با جاوا
در این مقاله، یاد خواهیم گرفت که چگونه دامنه تونال و تعادل رنگی یک عکس در قالب فایل PSD را به صورت برنامهریزی شده در جاوا تنظیم کنیم. ما از خود ویرایشگر عکس Adobe® Photoshop® استفاده نمیکنیم. به جای آن، از کتابخانه Aspose.PSD برای جاوا استفاده میکنیم که به صورت جداگانه برای تلاش بر روی سند فتوشاپ عمل میکند.
اگرچه، Aspose.PSD برای جاوا از ابزارهای بیشتری برای ویرایش عکسها پشتیبانی میکند، ما با رابط برنامه زیر لایه تنظیم سطوح که یکی از سادهترین و سریعترین روشها برای انجام کار است، پیش میرویم.
بررسی از طریق API
پیادهسازی فعلی (در زمان نگارش 20.6) از API لایه تنظیم سطوح تمامی ویژگیهای پایه سطوح فتوشاپ را پشتیبانی میکند، به عبارتی، تنظیم ورودی و خروجی سطوح برای کانال ترکیب (RGB) و همچنین برای هر کانال اصلی رنگ (قرمز، سبز و آبی).
API لایه تنظیم سطوح ساده است. کلاس LevelsLayer نقطه ورود به تنظیمات سطوح است. این شامل چندین متد برای دسترسی به کانالهای رنگ است: getMasterChannel و getChannel(int). هر دو متد LevelChannel را برمیگردانند که خاصیتهای متناظر برای تنظیم ورودی و خروجی سطوح دارد. تفاوت آن است که getMasterChannel برای تنظیم کانال رنگ ترکیبی (RGB) به کار میرود در حالی که getChannel به کانال رنگ خاص (قرمز، سبز یا آبی) با شاخص آن دسترسی دارد.
سازگاری با حالتهای رنگ
این مستوی ارزش افزوده بیشتر که با اکثریت بزرگ حالتهای رنگ از طریق سطوح فتوشاپ سازگار است، بنابراین امکان تنظیم سطوح برای تصاویر در حالتهای خاکستری (کانال خاکستری)، RGB (RGB، قرمز، سبز و آبی)، CMYK (CMYK، فیروزه ای، مگنتا، زرد و مشکی)، Duotone (کانال تک رنگ) و LAB (روشنایی، a و b کانالها) وجود دارد.
تنظیم دامنه تونال
به زبان ساده، اصلاح تنظیم به یک تصویر اعمال میشود تا سایهها و نقاط برجسته را برای توزیع بهتری از نصفرنگها بازسازی کند. به طور کلی، تصویر را به نظر میرساند که قرار است کنتراست بیشتری داشته باشد، اگر به درستی انجام شود. به عنوان مثال، عکسی از یک سگ (b) را بگیریم و دامنه تونال آن (a - تصویر گرفته شده از پنجره سطوح فتوشاپ به عنوان مثال) را تنظیم کنیم تا تصویر بیشتر به نظر برسد (c).
||
برای تنظیم کلی دامنه تونال یک تصویر، سطوح ورودی کانال اصلی باید تنظیم شوند:
LevelsLayer levelsLayer = psdImage.addLevelsAdjustmentLayer();
LevelChannel masterChannel = levelsLayer.getMasterChannel();
masterChannel.setInputShadowLevel(( **short** )21);
masterChannel.setInputMidtoneLevel(( **float** )1.19);
masterChannel.setInputHighlightLevel(( **short** )229);
بایستی به یاد داشته باشید که سطوح ورودی باید در محدوده 0 تا 253 برای سایهها، از 0.01 تا 9.99 برای نصفرنگها و از 2 تا 255 برای نقاط برجسته باشد. محدوده سطوح خروجی باید بین 0 تا 255 باشد.
نیاز به مثالهای بیشتر دارید؟ میتوانید آنها را در Github و در پایگاه دانش پیدا کنید.
نتیجهگیری
برای خلاصه، Aspose.PSD برای جاوا API ساده و کارا برای تغییر دامنه تونال و تعادل رنگی یک تصویر دارد که با تقریباً تمامی حالتهای رنگ سازگار است. API لایه تنظیم سطوح این کتابخانه شبیه به سطوح فتوشاپ است، بنابراین حتی اگر تاکنون با این کتابخانه کار نکردهاید، شروع کردن با آن آسان است.