چرخاندن تصاویر بهصورت برنامهنویسی یک نیاز مکرر هنگام ساخت تولیدکنندگان پیشنمایش، ویرایشگرهای عکس یا گردشهای کاری اسناد است. Conholdate.Total for Java یک SDK قدرتمند ارائه میدهد که دستکاری تصویر را در برنامههای جاوا بهصورت ساده انجام میدهد. در این راهنما خواهید آموخت که چگونه فایلهای PNG و JPG را بچرخانید، پارامترهای چرخش را پیکربندی کنید و متادیتا را حفظ کنید در حالی که کیفیت تصویر بالا باقی میماند.
آمادهسازی محیط - پیشنیازها و تنظیمات
قبل از شروع، مطمئن شوید که موارد زیر را دارید:
- Java 17 یا جدیدتر نصب شده.
- یک IDE مانند IntelliJ IDEA یا Eclipse.
- Maven برای مدیریت وابستگیها.
مخزن Maven Conholdate و وابستگی SDK را به pom.xml خود اضافه کنید:
<repositories>
<repository>
<id>conholdate-repo</id>
<name>Conholdate Maven Repository</name>
<url>https://repository.conholdate.com/repo/</url>
</repository>
</repositories>
<dependency>
<groupId>com.conholdate</groupId>
<artifactId>conholdate-total</artifactId>
<version>24.9</version>
<type>pom</type>
</dependency>
آخرین باینریهای SDK را از صفحه دانلود رسمی دریافت کنید: Conholdate.Total for Java دانلود. پس از حل وابستگیها، آمادهاید تا کدی بنویسید که تصاویر را چرخش میدهد.
چرخاندن تصویر در جاوا: راهنمای گام به گام
مرحله 1: بارگذاری مسیرهای منبع و مقصد
موقعیتهای فایل ورودی و خروجی را تعریف کنید. SDK با هر دو فرمت PNG و JPG کار میکند.
String inputPath = "input.jpg";
String outputPath = "output_rotated.jpg";
مرحله ۲: مقداردهی اولیه پردازشگر تبدیل و گزینهها
ایجاد اشیای اصلی که فرآیند تبدیل را هدایت میکنند.
ConversionHandler handler = new ConversionHandler();
ImageConvertOptions options = new ImageConvertOptions();
مرحله ۳: تنظیم زاویه چرخش و رنگ پسزمینه
تعیین کنید چند درجه تصویر باید چرخانده شود و رنگ پر کردن برای گوشههای خالی چیست.
options.setRotateAngle(90); // Rotate 90 degrees clockwise
options.setBackgroundColor(Color.WHITE); // Fill empty space with white
مرحله 4: پیکربندی پارامترهای اضافی
متادیتای اصلی را حفظ کنید و کیفیت JPEG را زمانی که خروجی JPG است تعریف کنید.
options.setPreserveMetadata(true);
options.setQuality(90); // JPEG quality (0‑100)
مرحله 5: اجرای چرخش
متد convert را فراخوانی کنید تا چرخش اعمال شود و نتیجه نوشته شود.
handler.convert(inputPath, outputPath, options);
System.out.println("Image rotated successfully: " + outputPath);
برای جزئیات بیشتر در مورد کلاس ConversionHandler، به مرجع رسمی API مراجعه کنید.
مثال کامل کد: چرخاندن تصویر در جاوا با استفاده از Conholdate.Total
مثال زیر گردش کار کامل برای چرخاندن یک فایل تصویر را نشان میدهد.
این مثال نشان میدهد که چگونه یک تصویر JPG را به میزان 90 درجه چرخانده و نتیجه را ذخیره کنید.
import com.groupdocs.conversion.ConversionHandler;
import com.groupdocs.conversion.options.convert.ImageConvertOptions;
import java.awt.Color;
public class RotateImageExample {
public static void main(String[] args) {
String inputPath = "input.jpg";
String outputPath = "output_rotated.jpg";
try (ConversionHandler handler = new ConversionHandler()) {
ImageConvertOptions options = new ImageConvertOptions();
// Rotation angle in degrees (positive = clockwise)
options.setRotateAngle(90);
// Background color for empty areas after rotation
options.setBackgroundColor(Color.WHITE);
// Preserve original metadata (EXIF, DPI, etc.)
options.setPreserveMetadata(true);
// Optional: for large images you can limit memory usage
options.setQuality(90); // JPEG quality (0-100)
handler.convert(inputPath, outputPath, options);
System.out.println("Image rotated successfully: " + outputPath);
} catch (Exception e) {
System.err.println("Error during image rotation:");
e.printStackTrace();
}
}
}
نکته: این مثال کد عملکرد اصلی را نشان میدهد. قبل از استفاده از آن در پروژه خود، اطمینان حاصل کنید که مسیرهای فایل و مقادیر پیکربندی را بهگونهای بهروزرسانی کنید که با محیط واقعی شما مطابقت داشته باشد، بررسی کنید که تمام وابستگیهای مورد نیاز بهدرستی نصب شدهاند و بهطور کامل در محیط توسعه خود تست کنید. اگر با مشکلی مواجه شدید، لطفاً به مستندات رسمی مراجعه کنید یا برای دریافت کمک با تیم پشتیبانی تماس بگیرید.
پارامترهای چرخش: گزینهها و تنظیمات
SDK چندین گزینه برای تنظیم دقیق فرآیند چرخش ارائه میدهد.
- Rotate Angle - تعیین میکند تصویر چند درجه چرخیده است. مقادیر مثبت به جهت ساعتگرد میچرخند.
options.setRotateAngle(90);
Background Color - رنگ پرکننده را برای گوشههای خالی که پس از چرخش ظاهر میشوند تنظیم میکند. از هر مقدار
java.awt.Colorاستفاده کنید.حفظ متادیتا - هنگامی که فعال باشد، دادههای EXIF ، DPI و سایر متادیتا در فایل خروجی نگه داشته میشوند. برای جزئیات بیشتر، به ImageConvertOptions API مراجعه کنید.
کیفیت - کیفیت فشردهسازی JPEG را کنترل میکند (0‑100). مقادیر بالاتر جزئیات بیشتری را حفظ میکنند اما حجم فایل را افزایش میدهند.
این تنظیمات را طوری تنظیم کنید که با نیازهای برنامه شما مطابقت داشته باشد، چه برای خروجی PNG بدون فقدان یا نتایج JPG با کیفیت بالا.
نتیجهگیری
چرخاندن تصاویر در جاوا ساده است وقتی از Conholdate.Total for Java استفاده میکنید. این راهنما شما را از طریق تنظیمات مورد نیاز، پیادهسازی گام به گام دقیق، و گزینههای کلیدی پیکربندی که به شما امکان کنترل زاویه، پسزمینه، حفظ متادیتا و کیفیت خروجی را میدهد، راهنمایی میکند. بهخاطر داشته باشید که برای استقرارهای تولیدی یک لایسنس مناسب تهیه کنید؛ میتوانید گزینههای قیمتگذاری را در https://purchase.conholdate.com/pricing/total/family/ بررسی کنید یا برای تست یک لایسنس موقت دریافت کنید در https://purchase.conholdate.com/temporary-license/. با یکپارچهسازی SDK، میتوانید چرخاندن تصویر قابل اعتماد را به هر جریان کاری مبتنی بر جاوا اضافه کنید.
سوالات متداول
چگونه میتوانم یک فایل تصویر را در جاوا با استفاده از Conholdate.Total چرخاند؟
از کلاسImageConvertOptionsبرای تنظیم زاویه چرخش مورد نظر استفاده کنید و سپس همانطور که در مثالهای بالا نشان داده شده است، متدhandler.convert(inputPath, outputPath, options)را فراخوانی کنید.آیا میتوانم هر دو تصویر PNG و JPG را با همان کد بچرخانم؟
بله، SDK بهطور خودکار فرمت منبع را تشخیص میدهد. پسوند فایل صحیح را در مسیر ورودی ارائه دهید و همان کد برای هر دو PNG و JPG کار میکند.چه گزینههایی برای سفارشیسازی فرآیند چرخش موجود است؟
میتوانید زاویه چرخش، رنگ پسزمینه، کیفیت خروجی را تنظیم کنید و انتخاب کنید که آیا متادیتا حفظ شود یا نه. برای فهرست کامل به ImageConvertOptions API مراجعه کنید.آیا برای استفاده از این ویژگی در محیط تولید به مجوز نیاز دارم؟
برای استفاده در محیط تولید، یک مجوز معتبر لازم است. برای ارزیابی، یک مجوز موقت دریافت کنید از https://purchase.conholdate.com/temporary-license/ یا جزئیات کامل قیمتگذاری را در https://purchase.conholdate.com/pricing/total/family/ مشاهده کنید.
