EPS (Encapsulated PostScript) یک فرمت فایل گرافیکی است که برای توصیف تصاویر یا نقاشیها استفاده میشود. فایل EPS ممکن است حاوی هر ترکیبی از متن، گرافیک و تصویر باشد. فایلهای PostScript PS/EPS معمولاً برای مقاصد چاپی استفاده میشوند، زیرا بر اساس زبانهای توصیف صفحه هستند. ما به راحتی میتوانیم فایلهای EPS یا PS را به صورت برنامهنویسی به تصاویر PNG تبدیل کنیم. در این مقاله با نحوه تبدیل EPS به PNG در جاوا آشنا می شویم.
موضوعات زیر در این مقاله پوشش داده خواهد شد:
Java EPS به PNG تبدیل API – دانلود رایگان
برای تبدیل EPS به PNG، از Aspose.Page for Java API استفاده خواهیم کرد. این امکان بارگیری، ادغام، تبدیل و رندر اسناد XPS، PS و EPS را در برنامههای جاوا میدهد.
کلاس PsDocument از API اسناد PS/EPS را محصور می کند. کلاس ImageSaveOptions API شامل گزینههای لازم برای مدیریت فرآیند ذخیرهسازی تصویر است. کلاس ImageDevice رندر سند به تصویر را کپسوله می کند. روش getImagesBytes() تصاویر به دست آمده را بر حسب بایت دریافت می کند. روش save(Device, SaveOptions) سند PS/EPS را در دستگاه ذخیره می کند. شمارش ImageFormat حاوی نامهای احتمالی قالبهای تصویر است که توسط تبدیل PS/EPS به تصویر پشتیبانی میشوند.
لطفاً یا JAR API را دانلود کنید یا پیکربندی pom.xml زیر را در یک برنامه جاوا مبتنی بر Maven اضافه کنید.
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>https://repository.aspose.com/repo/</url>
</repository>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-page</artifactId>
<version>22.7</version>
</dependency>
با استفاده از جاوا EPS را به تصویر PNG تبدیل کنید
با دنبال کردن مراحل زیر میتوانیم فایلهای PostScript EPS یا PS را به تصاویر PNG تبدیل کنیم:
- فایل EPS را در FileInputStream بارگیری کنید.
- یک نمونه از کلاس PsDocument با شی جریان ایجاد کنید.
- شی کلاس ImageSaveOptions را با پارامترهای لازم مقداردهی کنید.
- ImageFormat خروجی را به صورت PNG تنظیم کنید.
- یک نمونه از کلاس ImageDevice ایجاد کنید.
- برای ذخیره تصویر در ImageDevice، متد save() را فراخوانی کنید.
- پس از آن، متد Device.getImagesBytes() را برای دریافت بایت های تصویر فراخوانی کنید.
- در نهایت آن را به عنوان تصویر ذخیره کنید.
مثال کد زیر نحوه تبدیل فایل EPS یا PS را با استفاده از جاوا به تصویر PNG نشان می دهد.
// این مثال کد نحوه تبدیل EPS به PNG را نشان می دهد.
// فایل را در جریان ورودی بارگیری کنید
FileInputStream psStream = new FileInputStream("C:\\Files\\input.eps");
// سند PS آنی
PsDocument document = new PsDocument(psStream);
// اگر می خواهید فایل Postscript را با وجود خطاهای جزئی تبدیل کنید، این پرچم را تنظیم کنید
boolean suppressErrors = true;
// شیء گزینه ها را با پارامترهای لازم مقداردهی کنید.
ImageSaveOptions options = new ImageSaveOptions(suppressErrors);
// در صورت تمایل، اگر می خواهید پوشه خاصی را که فونت ها در آن ذخیره می شوند اضافه کنید. پوشه فونت های پیش فرض در سیستم عامل همیشه گنجانده شده است.
//options.setAdditionalFontsFolders(رشته جدید [] {"FONTS_FOLDER"});
// فرمت تصویر را به صورت PNG راه اندازی کنید
ImageFormat imageFormat = ImageFormat.PNG;
// فرمت تصویر پیش فرض PNG است و تنظیم آن در ImageDevice الزامی نیست
// اندازه پیش فرض تصویر 595x842 است و تنظیم آن در ImageDevice الزامی نیست
com.aspose.eps.device.ImageDevice device = new com.aspose.eps.device.ImageDevice();
// اما اگر نیاز به تعیین اندازه و فرمت تصویر دارید، از سازنده با پارامترها استفاده کنید
//دستگاه ImageDevice = New ImageDevice(new Dimension(595, 842), com.aspose.eps.ImageFormat.Jpeg);
try {
// ذخیره در دستگاه
document.save(device, options);
} finally {
psStream.close();
}
// دریافت بایت تصویر
byte[][] imagesBytes = device.getImagesBytes();
int i = 0;
// ذخیره روی دیسک
for (byte [] imageBytes : imagesBytes) {
String imagePath = "C:\\Files\\PSToImage" + i + "." + imageFormat.toString().toLowerCase();
FileOutputStream fs = new FileOutputStream(imagePath);
try {
fs.write(imageBytes, 0, imageBytes.length);
} catch (IOException ex) {
System.out.println(ex.getMessage());
} finally {
fs.close();
}
i++;
}
مجوز API رایگان
شما می توانید یک مجوز موقت رایگان دریافت کنید تا کتابخانه را بدون محدودیت ارزیابی امتحان کنید.
نتیجه
در این مقاله یاد گرفتیم که چگونه یک فایل PostScript EPS/PS را با استفاده از جاوا به تصاویر PNG تبدیل کنیم. علاوه بر این، میتوانید با استفاده از مستندات درباره Aspose.Page for Java API اطلاعات بیشتری کسب کنید. در صورت وجود هرگونه ابهامی، لطفاً با ما در [تالار گفتمان16 تماس بگیرید.