نود Edit Image در N8N

نود Edit Image در N8N

نود Edit Image برای ویرایش سریع و خودکار تصاویر داخل ورکفلوهای n8n استفاده می‌شود؛ کارهایی مثل تغییر اندازه (Resize)، برش (Crop)، چرخش (Rotate)، تبدیل فرمت (Convert)، فشرده‌سازی و اعمال تغییرات پایه روی تصویر. اگر در اتوماسیون شما تصویر بخشی از خروجی (مثل عکس محصول، بنر شبکه‌های اجتماعی، تصویر پروفایل، اسکن مدارک) است، این نود کمک می‌کند بدون نیاز به ابزارهای خارجی، تصاویر را استاندارد و آماده انتشار کنید.

معرفی نود در N8N

کارکرد نود

این نود فایل تصویر را (معمولاً به صورت باینری) دریافت می‌کند و با اعمال عملیات انتخاب‌شده، تصویر جدید را به عنوان خروجی تولید می‌کند. خروجی می‌تواند با نام باینری جدید ذخیره شود یا روی همان باینری قبلی بازنویسی شود (بسته به تنظیمات نود و نام خروجی).

دسته‌بندی نود

  • Action (عملیاتی): چون داده (تصویر) را تغییر می‌دهد و خروجی جدید تولید می‌کند.

کاربرد اصلی و اهمیت در ورکفلوها

  • استانداردسازی تصاویر ورودی قبل از آپلود در سایت/CRM/فروشگاه
  • کم‌حجم کردن تصاویر برای سرعت بهتر و کاهش هزینه ذخیره‌سازی
  • تولید چند نسخه از یک تصویر (thumbnail، نسخه وب، نسخه چاپ)
  • آماده‌سازی تصاویر برای ارسال در ایمیل/تلگرام/واتساپ/گزارش‌ها

موارد استفاده

۱) ساخت thumbnail خودکار برای تصاویر محصولات

  • دریافت عکس محصول از Google Drive یا S3
  • Resize به 400×400
  • تبدیل فرمت به WebP یا JPG
  • آپلود thumbnail در CMS (مثل WordPress) یا S3

۲) آماده‌سازی تصاویر برای شبکه‌های اجتماعی

  • گرفتن تصویر از Airtable/Notion
  • Crop به نسبت 1:1 یا 4:5
  • کم‌حجم‌سازی برای کاهش زمان ارسال
  • ارسال به Telegram/Discord یا ذخیره در Drive

۳) بهینه‌سازی تصاویر آپلودی کاربران

  • Webhook برای دریافت تصویر از فرم یا اپ
  • بررسی نوع فایل و اندازه
  • Resize و Convert برای استانداردسازی
  • ثبت لینک خروجی در دیتابیس و ارسال پاسخ

ترکیب با نودهای دیگر برای ورکفلوهای عملی

  • HTTP Request + Edit Image: دانلود تصویر از URL و سپس ویرایش
  • Google Drive + Edit Image + S3: تبدیل و انتقال تصاویر بین سرویس‌ها
  • Webhook + Edit Image + Respond to Webhook: ساخت سرویس کوچک تبدیل تصویر
  • IF + Edit Image: اعمال ویرایش فقط اگر ابعاد/حجم از حدی بیشتر است

پارامترها و تنظیمات

نام دقیق برخی فیلدها ممکن است بسته به نسخه n8n کمی متفاوت باشد، اما منطق و کاربردها ثابت است. در این بخش، فیلدهای رایج و کاربردی نود Edit Image توضیح داده شده‌اند.

۱) Binary Property (نام باینری ورودی)

  • نوع داده: String
  • توضیح: نام فیلد باینری که تصویر در آن قرار دارد. معمولاً data است، اما اگر از نودهای دیگر آمده باشد ممکن است image یا file باشد.
  • مثال عملی: اگر از HTTP Request فایل را به صورت باینری گرفته‌اید و نامش data است، همین را انتخاب کنید.

۲) Operation (عملیات ویرایش)

  • نوع داده: Option/Enum
  • توضیح: نوع تغییری که می‌خواهید روی تصویر اعمال شود. رایج‌ترین عملیات‌ها:
  • Resize: تغییر اندازه تصویر (با یا بدون حفظ نسبت)
  • Crop: برش تصویر با مختصات یا ابعاد مشخص
  • Rotate/Flip: چرخش یا آینه کردن تصویر
  • Convert/Format: تبدیل فرمت (PNG/JPG/WebP و …)
  • Compress/Quality: تنظیم کیفیت خروجی (خصوصاً برای JPG/WebP)

۳) Width / Height (عرض و ارتفاع)

  • نوع داده: Number
  • توضیح: برای Resize استفاده می‌شود. می‌توانید فقط یکی را تنظیم کنید تا نسبت حفظ شود (بسته به گزینه‌های نود).
  • مثال عملی: ساخت thumbnail: Width=400 و Height=400

۴) Maintain Aspect Ratio (حفظ نسبت تصویر)

  • نوع داده: Boolean
  • توضیح: اگر فعال باشد، تصویر کشیده نمی‌شود و نسبت اصلی حفظ می‌شود؛ اگر هر دو مقدار Width و Height داده شده باشد، معمولاً تصویر در کادر جا می‌گیرد یا بر اساس تنظیمات fit تنظیم می‌شود.
  • مثال عملی: برای جلوگیری از کشیدگی عکس پرسنلی، این گزینه را فعال کنید.

۵) Fit / Resize Mode (حالت قرارگیری در ابعاد جدید)

  • نوع داده: Option/Enum
  • توضیح: تعیین می‌کند تصویر چگونه به ابعاد جدید برسد. رایج‌ترین حالت‌ها:
  • Contain: تصویر کامل حفظ می‌شود و داخل کادر قرار می‌گیرد (ممکن است حاشیه ایجاد شود)
  • Cover: کل کادر را پر می‌کند و بخش‌هایی ممکن است برش بخورد (برای thumbnailهای یکدست عالی است)
  • Fill: دقیقاً به ابعاد می‌رسد (ممکن است کشیده شود)
  • Inside/Outside: برای کنترل دقیق‌تر نسبت به کادر
  • مثال عملی: برای کاورهای یکدست محصولات: Fit=Cover و سپس خروجی مربع 600×600

۶) Crop Options (تنظیمات برش)

  • نوع داده: Number/Option
  • توضیح: معمولاً شامل مواردی مثل X, Y, Crop Width, Crop Height یا انتخاب ناحیه (Center/Top/Left) است.
  • مثال عملی: برش از مرکز برای تصویر پروفایل: Crop به مربع از Center

۷) Output Format (فرمت خروجی)

  • نوع داده: Option/Enum
  • توضیح: فرمت تصویر خروجی را تعیین می‌کند (مثل JPG/PNG/WebP). انتخاب فرمت روی حجم و کیفیت اثر مستقیم دارد.
  • مثال عملی: برای وب‌سایت: WebP (حجم کمتر)، برای لوگو با پس‌زمینه شفاف: PNG

۸) Quality (کیفیت خروجی)

  • نوع داده: Number (معمولاً 1 تا 100)
  • توضیح: کیفیت فشرده‌سازی مخصوصاً در JPG/WebP. کیفیت بالاتر = حجم بیشتر.
  • مثال عملی: WebP با Quality=75 برای تصاویر بلاگ معمولاً تعادل خوبی دارد.

۹) Output Binary Property (نام باینری خروجی)

  • نوع داده: String
  • توضیح: تعیین می‌کند تصویر ویرایش‌شده در کدام فیلد باینری ذخیره شود. اگر همان نام ورودی را بگذارید، روی فایل قبلی overwrite می‌شود؛ اگر نام جدید بدهید، هر دو نسخه را خواهید داشت.
  • مثال عملی: ورودی: data، خروجی: thumbnail (برای نگه داشتن نسخه اصلی و کوچک‌شده)

نکات مهم هنگام پیکربندی

  • ورودی باید واقعاً تصویر باشد؛ اگر PDF یا فایل ناشناخته وارد شود، نود معمولاً خطا می‌دهد.
  • برای ساخت خروجی‌های یکدست (مثل 1:1)، ترکیب Resize (Fit=Cover) بهترین نتیجه را می‌دهد.
  • برای شفافیت (Transparency) از PNG یا WebP پشتیبانی‌کننده شفافیت استفاده کنید؛ JPG شفافیت ندارد.
  • اگر حجم خروجی زیاد است، Quality را کاهش دهید یا به WebP تبدیل کنید.

ورودی‌ها و خروجی‌ها

ورودی (Input)

ورودی نود معمولاً یک آیتم (Item) است که شامل بخش binary می‌باشد. نمونه ساختار رایج:

{  "json": {    "fileName": "product-123.png",    "productId": 123  },  "binary": {    "data": {      "fileName": "product-123.png",      "mimeType": "image/png",      "fileSize": 248503,      "data": "BASE64..."    }  }}

خروجی (Output)

خروجی همان آیتم ورودی است با این تفاوت که باینری جدید (ویرایش‌شده) اضافه یا جایگزین می‌شود. اگر Output Binary Property را thumbnail گذاشته باشید:

{  "json": {    "fileName": "product-123.png",    "productId": 123  },  "binary": {    "data": {      "fileName": "product-123.png",      "mimeType": "image/png",      "fileSize": 248503,      "data": "BASE64..."    },    "thumbnail": {      "fileName": "product-123.webp",      "mimeType": "image/webp",      "fileSize": 39210,      "data": "BASE64..."    }  }}

نکته کاربردی درباره نام فایل و mimeType

  • اگر فرمت خروجی را تغییر دهید، بهتر است نام فایل خروجی هم متناسب باشد (مثلاً .webp).
  • برخی نودهای مقصد (آپلودرها) به mimeType حساس هستند؛ در صورت ناسازگاری، تبدیل فرمت را دقیق انجام دهید.

نکات پیشرفته و ترفندها

۱) تولید چند سایز از یک تصویر در یک ورکفلو

  • با استفاده از Copy/Move Binary Data یا ذخیره خروجی در نام‌های مختلف (مثلاً thumb و medium) می‌توانید چند نسخه بسازید.
  • الگو: یک تصویر ورودی → Edit Image (thumbnail) → Edit Image (medium) → آپلود هر کدام در مسیر جدا

۲) شرط‌گذاری بر اساس اندازه فایل قبل از ویرایش

  • با نود IF می‌توانید بررسی کنید اگر binary.data.fileSize از مثلاً 1MB بیشتر بود، عملیات فشرده‌سازی/Resize انجام شود.

۳) استانداردسازی برای وب با کمترین افت کیفیت

  • برای عکس‌ها: WebP با Quality حدود 70 تا 80
  • برای تصاویر با متن زیاد یا لوگو: PNG یا WebP با کیفیت بالاتر
  • برای thumbnail مربع: Resize با Fit=Cover و ابعاد ثابت (مثلاً 600×600)

۴) بهینه‌سازی عملکرد در حجم بالا

  • اگر تعداد تصاویر زیاد است، ورکفلو را طوری طراحی کنید که از پردازش هم‌زمان سنگین جلوگیری شود (مثلاً پردازش batch و محدود کردن concurrency در تنظیمات اجرا).
  • از تولید چند خروجی غیرضروری خودداری کنید؛ فقط سایز/فرمت‌هایی که واقعاً استفاده می‌شوند تولید شوند.

محدودیت‌ها و خطاها

محدودیت‌ها

  • این نود برای ویرایش‌های گرافیکی پیچیده (مثل لایه‌ها، فیلترهای حرفه‌ای، تایپوگرافی) مناسب نیست.
  • اگر ورودی تصویر خراب باشد یا mimeType اشتباه تشخیص داده شود، پردازش ممکن است شکست بخورد.
  • حجم‌های بسیار بزرگ یا تصاویر با رزولوشن خیلی بالا می‌توانند مصرف RAM/CPU را افزایش دهند.

خطاهای رایج و راه‌حل‌ها

  • Property “binary.data” doesn’t exist: نام Binary Property را درست تنظیم کنید یا مطمئن شوید نود قبلی خروجی باینری دارد.
  • Unsupported image format / Invalid input: بررسی کنید فایل واقعاً تصویر است و mimeType درست است. در صورت دریافت از URL، نود HTTP Request باید پاسخ را به صورت فایل (binary) دریافت کند.
  • Output file too large: Quality را کاهش دهید، ابعاد را کوچک‌تر کنید یا به WebP تبدیل کنید.
  • Unexpected cropping/stretching: گزینه‌های Maintain Aspect Ratio و Fit را بازبینی کنید؛ برای خروجی مربع یکدست معمولاً Fit=Cover مناسب‌تر است.

ایده ها

  • ساخت سرویس خودکار تبدیل تصویر: دریافت URL تصویر از Webhook، تبدیل به WebP، خروجی لینک دانلود
  • سیستم آماده‌سازی عکس محصول: گرفتن عکس از تأمین‌کننده، یکدست‌سازی سایز، ساخت thumbnail، آپلود در فروشگاه
  • بهینه‌سازی تصاویر قبل از ارسال خبرنامه: کم‌حجم‌سازی تصاویر و ساخت نسخه مناسب ایمیل
  • تولید اتوماتیک تصاویر برای کاتالوگ PDF: یک اندازه‌سازی استاندارد برای همه تصاویر قبل از تولید گزارش
  • پاک‌سازی ورودی‌های کاربران: تبدیل همه فرمت‌ها به یک فرمت واحد و یک سایز استاندارد برای آرشیو

منابع و مستندات اصلی

دسته بندی: N8N برچسب ها:

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

یک × 5 =