دمج CMX s عبر Java
أنشئ تطبيقات Java الخاصة بك لدمج ملفات CMX باستخدام واجهات برمجة التطبيقات من جانب الخادم.
كيفية دمج ملفات CMX باستخدام Java
إذا كنت تريد إطلاق العنان لإبداعك، فهذا هو الوقت المناسب لاستخدام مجموعة الصور. ستتيح لك هذه الوظيفة دمج الصور والصور حتى لو كانت الملفات المصدر بتنسيقات مختلفة. هناك طريقة رائعة لجذب الانتباه إلى محفظتك وهي استخدام خلفيات الصور مع الصور أو الأنماط المتكررة. في هذه الحالة، يمكن دمج الصور في الاتجاهين الأفقي والرأسي. في حالة احتياجك إلى إظهار نتيجة معالجة ملف، يمكنك بسهولة دمج صورتين: قبل تطبيق تأثير الصورة وبعده. من أجل دمج ملفات CMX، سنستخدم Aspose.Imaging for Java API وهي واجهة برمجة تطبيقات لمعالجة الصور وتحويلها غنية بالميزات وقوية وسهلة الاستخدام لمنصة Java الأساسية. يمكنك تنزيل أحدث إصدار له مباشرةً من Maven وتثبيته داخل Maven الخاص بك مشروع قائم على أساس إضافة التكوينات التالية إلى ملف pom.xml.
Repository
<repository>
<id> AsposeJavaAPI </id>
<name> Aspose Java API </name>
<url> https://repository.aspose.com/repo/ </url>
</repository>
التبعية
<dependency>
<groupId> com.aspose </groupId>
<artifactId>aspose-imaging</artifactId>
<version>version of aspose-imaging API</version>
<classifier>jdk16</classifier>
</dependency>
خطوات دمج CMX s عبر Java
أنت بحاجة إلى aspose-imaging-version-jdk16.jar لتجربة سير العمل التالي في بيئتك الخاصة.
- تحميل ملفات CMX بطريقة Image.load
- دمج الصور في صورة جديدة
- احفظ الصورة التي تم اقتصاصها على القرص بتنسيق Aspose.Imaging المدعوم
متطلبات النظام
Aspose.Imaging for Java مدعوم على جميع أنظمة التشغيل الرئيسية. فقط تأكد من أن لديك المتطلبات الأساسية التالية.
- تم تثبيت JDK 1.6 أو أعلى.
دمج صور CMX - Java
import com.aspose.imaging.Image; | |
import com.aspose.imaging.RasterImage; | |
import com.aspose.imaging.fileformats.tiff.TiffFrame; | |
import com.aspose.imaging.fileformats.tiff.TiffImage; | |
import com.aspose.imaging.fileformats.tiff.enums.TiffExpectedFormat; | |
import com.aspose.imaging.imageoptions.PdfOptions; | |
import com.aspose.imaging.imageoptions.PngOptions; | |
import com.aspose.imaging.imageoptions.TiffOptions; | |
import java.io.File; | |
import java.io.FilenameFilter; | |
import java.util.HashMap; | |
import java.util.Map; | |
String TestDirectory = "<some directory>\\Many2One\\"; | |
HashMap<String, Image> images = new HashMap<String, Image>(); | |
try | |
{ | |
String outputPath = TestDirectory + "output\\"; | |
File dir = new File(outputPath); | |
assert dir.exists() || dir.mkdirs(); | |
int maxWidth = 0; | |
int maxHeight = 0; | |
// Source file mask, could vary depending on image format (i.e. *.emf, *.wmf, *.svg, *.odg, etc) | |
final String fileMask = ".emf"; | |
File[] files = new File(TestDirectory).listFiles(new FilenameFilter() | |
{ | |
@Override | |
public boolean accept(File dir, String name) | |
{ | |
return name.endsWith(fileMask); | |
} | |
}); | |
if (files == null) | |
return; | |
for (File fileName : files) | |
{ | |
try (Image image = Image.load(fileName.getAbsolutePath())) | |
{ | |
String outputFileName = outputPath + fileName.getName() + ".png"; | |
// Save PNG image | |
image.save(outputFileName, new PngOptions()); | |
Image rasterImage = Image.load(outputFileName); | |
if (rasterImage.getWidth() > maxWidth) | |
{ | |
maxWidth = rasterImage.getWidth(); | |
} | |
if (rasterImage.getHeight() > maxHeight) | |
{ | |
maxHeight = rasterImage.getHeight(); | |
} | |
images.put(outputFileName, rasterImage); | |
} | |
} | |
if (images.isEmpty()) | |
{ | |
return; | |
} | |
String outputPath1 = outputPath + "multiframe.tiff"; | |
String outputPath2 = outputPath + "multipage.pdf"; | |
final Image[] imageArray = images.values().toArray(new Image[0]); | |
try (TiffImage tiffImage = new TiffImage(new TiffFrame((RasterImage) imageArray[0]))) | |
{ | |
for (int i = 1; i < imageArray.length; i++) | |
{ | |
tiffImage.addPage((RasterImage)imageArray[i]); | |
} | |
// Save as muti frame tiff | |
tiffImage.save(outputPath1, new TiffOptions(TiffExpectedFormat.TiffJpegRgb)); | |
// Worry about Pdf ? That's it! | |
tiffImage.save(outputPath2, new PdfOptions()); | |
} | |
} | |
finally | |
{ | |
for (Map.Entry<String, Image> entry : images.entrySet()) | |
{ | |
entry.getValue().close(); | |
new File(entry.getKey()).delete(); | |
} | |
images.clear(); | |
} |
حول Aspose.Imaging Java API
Aspose.Imaging API هو حل لمعالجة الصور لإنشاء أو تعديل أو رسم أو تحويل الصور (الصور) داخل التطبيقات. يوفر: معالجة الصور عبر الأنظمة الأساسية ، بما في ذلك على سبيل المثال لا الحصر ، التحويلات بين تنسيقات الصور المختلفة (بما في ذلك معالجة الصور متعددة الصفحات أو متعددة الإطارات) ، والتعديلات مثل الرسم ، والعمل مع الرسوم الأولية ، والتحويلات (تغيير الحجم ، والقص ، والوجه والتدوير ، وثنائي ، وتدرج رمادي ، وضبط) ، وميزات معالجة الصور المتقدمة (الترشيح ، والتردد ، والإخفاء ، والتكديس) ، واستراتيجيات تحسين الذاكرة. إنها مكتبة قائمة بذاتها ولا تعتمد على أي برنامج لعمليات الصور. يمكن للمرء بسهولة إضافة ميزات تحويل الصور عالية الأداء باستخدام واجهات برمجة التطبيقات الأصلية داخل المشاريع. هذه واجهات برمجة تطبيقات داخلية خاصة بنسبة 100٪ وتتم معالجة الصور على خوادمك.دمج CMX s عبر تطبيق عبر الإنترنت
ادمج مستندات CMX من خلال زيارة Live Demos website . يحتوي العرض التوضيحي المباشر على الفوائد التالية
CMX ما هو CMX تنسيق الملف
الملفات ذات امتداد CMX هي تنسيق ملف صورة Corel Exchange يتم استخدامه كعرض تقديمي بواسطة تطبيقات CorelSuite. يحتوي على بيانات الصورة كرسومات متجهة بالإضافة إلى بيانات أولية تصف الصورة. يمكن فتح ملفات CMX بواسطة CorelDraw و Corel Presentations و Paint Shop Pro وبعض إصدارات Adobe Illustrator.
اقرأ أكثرتنسيقات الدمج المدعومة الأخرى
باستخدام Java ، يمكن بسهولة دمج تنسيقات مختلفة بما في ذلك.