دستکاری تصاویر TIFF

افزودن فریم‌ها با تنظیمات مختلف

TIFF یک فرمت بسیار انعطاف‌پذیر است و اجازه می‌دهد تا فریم‌های مختلف با ابعاد، فشرده‌سازی و تنظیمات دیگر اضافه شوند. رابط‌های Aspose.PSD به شما اجازه می‌دهد تا هر فریم TIFFی با هر اندازه‌ای را که کمک به ایجاد سند‌های پیچیده دارد، اضافه کنید. اگر نیازی به تنظیم فریم‌ها حین فرآیند اضافه کردن وجود داشته باشد تا تمام آن‌ها مساوی شوند، مراحل زیر را انجام دهید:

  • یک فریم خالی جدید با گزینه‌های مورد نظر ایجاد کنید یا فریم منبع را با گزینه‌های خروجی مشخص شده با استفاده از متد CreateFrameFrom کپی کنید.
  • فریم/تصویر منبع را به ابعاد مورد نظر با استفاده از متد Resize تغییر اندازه دهید.
  • پیکسل‌های فریم/تصویر منبع را به فریم جدید اضافه کنید.
  • فریم جدید را به تصویر TIFF خروجی اضافه کنید.

صادر کردن لایه‌های تصویرPSD به فرمت فایل TIFF چند صفحه‌ای

گاهی اوقات نیاز است تا لایه‌های تصویر PSD به فرمت فایل TIFF چند صفحه‌ای صادر شود. این مقاله نشان خواهد داد که چگونه می‌توانیم این کار را با استفاده از رابط برنامه نویسی Aspose.PSD برای Java انجام دهیم. ابتدا تصویر PSD را از دیسک بارگیری خواهیم کرد. سپس لایه‌های تصویر PSD را بررسی کرده و TiffFrame را از لایه‌های مربوطه ایجاد خواهیم کرد. در نهایت تصویر TIFF نتیجه را در یک پرونده تکی بر روی دیسک ذخیره می‌کنیم.

پیکربندی گزینه‌های TiffOptions

توسعه‌دهندگان می‌توانند ویژگی‌های مختلف کلاس TiffOptions را تنظیم کنند تا نتایج مطلوب را دریافت کنند. در این سند، بر روی 4 ویژگی اصلی که کنترل ویژگی‌های تصویر نهایی را انجام می‌دهند، تمرکز می‌کنیم.

این ویژگی‌ها در زیر فهرست شده‌اند.

  1.  TiffOptions.Photometric
  2. TiffOptions.Compression
  3. TiffOptions.BitsPerSample
  4. TiffOptions.Predictor

هرگاه یک ساختار TiffOptions خالی را مقداردهی ابتدایی می‌کنیم، هر گزینه به مقدار پیش‌فرض خود تنظیم می‌شود، به عنوان مثال فشرده‌سازی به هیچ ویژگی، BitsPerSample به 1 و تصویر MinIsWhite تنظیم می‌شود. ذخیره‌سازی در این فرمت باعث تولید تصویر نهایی سیاه و سفید می‌شود و این رفتار مورد انتظار برای چنین ترکیبات گزینه‌ها است. برای دریافت نتایج رنگی باید همه ویژگی‌های فوق را به مقادیری که با فضای رنگ مطلوب همخوانی دارند، تنظیم نمایید یا ساختار TiffOptions را با تنظیمات از پیش تعیین شده مانند بخش‌های بعدی در این مقاله مقداردهی ابتدایی کنید. در جدول زیر، مقادیر پارامتر مورد نظر توضیح داده شده‌اند که باید آن‌ها را در تنظیمات TiffOptions تنظیم کنید تا نتایج مطلوب را به دست آورید. لطفا توجه داشته باشید، باید هر چهار ستون را از طریق TiffOptions تنظیم کنید تا هر تصویری را در فرمت TIFF ذخیره کنید/ایجاد کنید.

 TiffOptions.Photometric TiffOptions.Compression TiffOptions.BitsPerSample TiffOptions.Predictor
Palette LZW/بدون‌فشرده‌سازی 1/4/8/16 (حالت پالت، حالت رنگ) تنها یک کانال هیچ
MinIsWhite/MinIsBlack LZW/بدون‌فشرده‌سازی 1/4/8/16 (حالت خاکستری) تنها یک کانال هیچ
Palette LZW/بدون‌فشرده‌سازی 8 (حالت پالت، حالت رنگ) تنها یک کانال افقی (بیشترین فشرده‌سازی در الگوهای یکسان LZW)
MinIsWhite/MinIsBlack LZW/بدون‌فشرده‌سازی 8 (حالت خاکستری) تنها یک کانال افقی (بیشترین فشرده‌سازی برای الگوهای LZW یکسان)
RGB LZW/بدون‌فشرده‌سازی [8,8,8] (3 کانال RGB) هیچ/افقی
RGB LZW/بدون‌فشرده‌سازی [8,8,8,8] (3 کانال RGB و یک کانال آلفای اضافی ممکن است از طریق TiffOptions.AlphaStorage تنظیم شود) در واقع هر تعداد کانال اضافی پشتیبانی می‌شود اما هر کانال باید دارای 8 بیت اندازه باشد مانند [8,8,8,8,8,8] هیچ/افقی
همه 4 ویژگی باید از طریق TiffOptions تنظیم شوند تا هر فرمت تصویری را به فرمت Tiff ذخیره کنید. در صورت استفاده از ترکیب‌های مختلف، برخی از نمایش‌دهندگان (شامل Windows Photo Viewer) ممکن است از نمایش تصویر نهایی به دلیل حمایت محدودی که ارائه می‌دهند، انصراف دهند. در چنین مواردی، لطفا برای تست خود نمایش‌دهنده‌ی متفاوتی انتخاب کنید.

تنظیمات مقدم تعیین‌شده برای کلاس TiffOptions

برای تسهیل برای کاربران و جلوگیری از اشتباه پیکربندی نمونه Tiffoptions، رابط برنامه نویسی Aspose.PSD برای API جاوا یک سازنده دیگر را برای پارامتر نوع TiffExpectedFormat اعمال کرده است. بر اساس مقدار انتخابی از شاخص TiffExpectedFormat، API تمام ویژگی‌های اجباری را برای نمونه Tiffoptions به طور خودکار پیکربندی می‌کند تا نتایج مطلوب تولید شوند. قبل از اینکه به کد نمونه برویم، اینجا فهرستی از فیلدهای TiffExpectedFormat و جزئیات آن‌ها جهت بهترین درک از استفاده آمده است.

  • TiffExpectedFormat.Default: تنظیم این فیلد به حالت پیش‌فرض مشابه سازنده پیش‌فرض کلاس Tiffoptions بدون فشرده‌سازی و BitsPerPixel به 1 به منظور تولید نتیجه سیاه و سفید است. توصیه می‌شود که از این فیلد استفاده شود زمانی که ویژگی‌های خاص دیگر فرمت باید به صورت دستی بر اساس نتایج مطلوب تنظیم شوند.
  • TiffExpectedFormat.TiffCcitRle: خاص برای رمزگذاری RLE در زمان ذخیره نتیجه در یک تصویر TIFF 1 BitsPerPixel (سیاه و سفید).
  • TiffExpectedFormat.TiffCcittFax3: خاص برای رمزگذاری CCITT Fax3 در زمان ذخیره نتیجه در یک تصویر TIFF 1 BitsPerPixel (سیاه و سفید).
  • TiffExpectedFormat.TiffCcittFax4: خاص برای رمزگذاری CCITT Fax4 در زمان ذخیره نتیجه در یک تصویر TIFF 1 BitsPerPixel (سیاه و سفید).
  • TiffExpectedFormat.TiffDeflateBW: خاص برای فشرده‌سازی Deflate در زمان ذخیره نتیجه در یک تصویر TIFF 1 BitsPerPixel (سیاه و سفید).
  • TiffExpectedFormat.TiffDeflateRGB: خاص برای فشرده‌سازی Deflate در زمان ذخیره نتیجه در یک تصویر TIFF (رنگ).
  • TiffExpectedFormat.TiffJpegRGB: خاص برای فشرده‌سازی Jpeg در زمان ذخیره نتیجه در یک تصویر TIFF (رنگ).
  • TiffExpectedFormat.TiffJpegYCBCR: خاص برای فشرده‌سازی Deflate در زمان ذخیره نتیجه در یک تصویر TIFF (رنگ YCBCR).
  • TiffExpectedFormat.TiffLzwBW: خاص برای فشرده‌سازی LZW در زمان ذخیره نتیجه در یک تصویر TIFF 1 BitsPerPixel (سیاه و سفید).
  • TiffExpectedFormat.TiffLzwRGB: خاص برای فشرده‌سازی LZW در زمان ذخیره نتیجه در یک تصویر TIFF (رنگ).
  • TiffExpectedFormat.TiffLzwRGBA: خاص برای فشرده‌سازی LZW در زمان ذخیره نتیجه در یک تصویر TIFF (رنگ با شفافیت).
  • TiffExpectedFormat.TiffNoCompressionBW: خاص برای فرمت TIFF بدون فشرده‌سازی در زمان ذخیره نتیجه در یک تصویر 1 BitsPerPixel (سیاه و سفید).
  • TiffExpectedFormat.TiffNoCompressionRGB: خاص برای فرمت TIFF بدون فشرده‌سازی در زمان ذخیره نتیجه در یک تصویر (رنگ).
  • TiffExpectedFormat.TiffNoCompressionRGBA: خاص برای فرمت TIFF بدون فشرده‌سازی در زمان ذخیره نتیجه در یک تصویر (رنگ با شفافیت).

قطعه کد زیر به توضیح استفاده از فیلدهای TiffExpectedFormat هنگام ایجاد یک نمونه از کلاس Tiffoptions می‌پردازد.

پشتیبانی از فشرده‌سازی Deflate و Adobe Deflate

فرمت پرونده TIFF (Tagged Image File Format) از انواع مختلف فشرده‌سازی پشتیبانی می‌کند در حالی که نوع فشرده‌سازی به عنوان یک برچسب (مقدار عددی) در پرونده ذخیره می‌شود. یکی از این روش‌های فشرده‌سازی، فشرده‌سازی Adobe Deflate (قبلاً به نام Deflate شناخته می‌شد) است. API Aspose.PSD برای API جاوا فشرده‌سازی این روش فشرده‌ساز