דחוס EPS באמצעות Java
בנה יישומי Java משלך כדי לדחוס קבצים של EPS באמצעות ממשקי API בצד השרת.
כיצד לדחוס קבצים EPS באמצעות Java
הכנת תמונות לפרסום כרוכה בהיבטים יצירתיים וטכניים כאחד, כולל דחיסת קבצים. בעוד שתמונות ברזולוציה גבוהה הן חיוניות עבור פרסום מודפס או חוצות, הן עשויות להפחית את ביצועי האינטרנט בשל גודל הקובץ הגדול שלהן. טכניקת דחיסת התמונה המתאימה משתנה בהתאם למטרה ולפלטפורמת הפרסום. קבצים גדולים יכולים להאט את זמני הטעינה, במיוחד בחיבורים ניידים, מה שמוביל לחוויית משתמש גרועה. משתמשים עלולים לנטוש אתר שלוקח יותר מדי זמן להיטען ולחפש חלופה מהירה יותר. לעומת זאת, דחיסת תמונה מוגזמת עלולה לגרום לטשטוש ולפיקסלציה, מה שפוגע בחוויית הצפייה. הבחירה הנכונה של אלגוריתמי דחיסה ויחסי דחיסה חיונית כדי ליצור איזון בין גודל הקובץ ואיכות התמונה. על מנת לדחוס קבצים EPS, נשתמש Aspose.Imaging for Java API שהוא עשיר בתכונות, חזק וקל לשימוש למניפולציה והמרה של תמונות עבור פלטפורמת Java. אתה יכול להוריד את הגרסה האחרונה שלו ישירות מ- Maven ולהתקין אותה בתוך ה-Maven שלך פרויקט מבוסס על ידי הוספת התצורות הבאות לקובץ pom.xml.
מאגר
<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>
שלבים לדחיסת EPSs באמצעות Java
אתה צריך את aspose-imaging-version-jdk16.jar כדי לנסות את זרימת העבודה הבאה בסביבה שלך.
- טען קבצים EPS בשיטת Image.load
- דחוס תמונות;
- שמור תמונה דחוסה לדיסק בפורמט הנתמך על ידי Aspose.Imaging
דרישות מערכת
Aspose.Imaging עבור Java נתמך בכל מערכות ההפעלה העיקריות. רק ודא שיש לך את התנאים המוקדמים הבאים.
- מותקן JDK 1.6 ומעלה.
דחוס תמונות EPS - Java
import com.aspose.imaging.FileFormat; | |
import com.aspose.imaging.IMultipageImage; | |
import com.aspose.imaging.Image; | |
import com.aspose.imaging.ImageOptionsBase; | |
import com.aspose.imaging.imageoptions.*; | |
import java.util.Arrays; | |
import java.util.List; | |
import java.util.function.Function; | |
compressVectorFormatToSvg(); | |
compressVectorFormatToEmf(); | |
compressVectorFormatToWmf(); | |
public static void compressVectorFormatToSvg() | |
{ | |
compressVectorFormat(skip -> { | |
SvgOptions options = new SvgOptions(); | |
options.setCompress(true); | |
return options; | |
}, ".svgz"); | |
} | |
public static void compressVectorFormatToEmf() | |
{ | |
compressVectorFormat(skip -> { | |
EmfOptions options = new EmfOptions(); | |
options.setCompress(true); | |
return options; | |
}, ".emz"); | |
} | |
public static void compressVectorFormatToWmf() | |
{ | |
compressVectorFormat(skip -> { | |
WmfOptions options = new WmfOptions(); | |
options.setCompress(true); | |
return options; | |
}, ".wmz"); | |
} | |
public static void compressVectorFormat(Function<Object, ImageOptionsBase> outOptionsCreator, String extension) | |
{ | |
String templatesFolder = "C:\\WorkDir\\"; | |
List<String> fileFormats = Arrays.asList("cdr", "cmx", "odg", "otg", "eps"); | |
fileFormats.forEach( | |
formatExt -> | |
{ | |
String inputFile = templatesFolder + "template." + formatExt; | |
String outputFile = templatesFolder + "compressed_" + formatExt.toUpperCase(); | |
try (Image image = Image.load(inputFile)) | |
{ | |
Function<Object, VectorRasterizationOptions> rasterizationOptionsFactory = (skip) -> | |
{ | |
VectorRasterizationOptions options; | |
long fileFormat = image.getFileFormat(); | |
if (fileFormat == FileFormat.Cdr) | |
{ | |
options = new CdrRasterizationOptions(); | |
} | |
else if (fileFormat == FileFormat.Cmx) | |
{ | |
options = new CmxRasterizationOptions(); | |
} | |
else if (fileFormat == FileFormat.Odg) | |
{ | |
options = new OdgRasterizationOptions(); | |
} | |
else if (fileFormat == FileFormat.Otg) | |
{ | |
options = new OtgRasterizationOptions(); | |
} | |
else | |
{ | |
return null; | |
} | |
options.setPageWidth(image.getWidth()); | |
options.setPageHeight(image.getHeight()); | |
return options; | |
}; | |
if ((image instanceof IMultipageImage) && ((IMultipageImage) image).getPageCount() > 1) | |
{ | |
IMultipageImage multiPage = (IMultipageImage) image; | |
final Image[] pages = multiPage.getPages(); | |
for (int pageIndex = 0; pageIndex < pages.length; pageIndex++) | |
{ | |
ImageOptionsBase options = outOptionsCreator.apply(null); | |
options.setVectorRasterizationOptions(rasterizationOptionsFactory.apply(null)); | |
pages[pageIndex].save(outputFile + "_p" + (pageIndex + 1) + extension, options); | |
} | |
} | |
else | |
{ | |
ImageOptionsBase options = outOptionsCreator.apply(null); | |
options.setVectorRasterizationOptions(rasterizationOptionsFactory.apply(null)); | |
image.save(outputFile + extension, options); | |
} | |
} | |
}); | |
} |
אודות Aspose.Imaging עבור API של Java
Aspose.Imaging API הוא פתרון לעיבוד תמונה ליצירה, שינוי, ציור או המרת תמונות (תמונות) בתוך יישומים. הוא מציע: עיבוד תמונה חוצה פלטפורמות, כולל אך לא רק המרות בין פורמטים שונים של תמונה (כולל עיבוד תמונה אחיד מרובה עמודים או ריבוי מסגרות), שינויים כגון ציור, עבודה עם פרימיטיבים גרפיים, טרנספורמציות (שינוי גודל, חיתוך, הפוך וסיבוב , בינאריזציה, גווני אפור, התאמה), תכונות מתקדמות של מניפולציה של תמונות (סינון, שיטוט, מיסוך, ביטול הטיה) ואסטרטגיות אופטימיזציה של זיכרון. זוהי ספרייה עצמאית ואינה תלויה בתוכנה כלשהי לפעולות תמונה. אפשר להוסיף בקלות תכונות המרת תמונה בעלות ביצועים גבוהים עם ממשקי API מקוריים בתוך פרויקטים. אלו הם 100% ממשקי API פרטיים מקומיים ותמונות מעובדות בשרתים שלך.דחוס EPS באמצעות אפליקציה מקוונת
דחוס מסמכים ב-EPS על ידי ביקור ב אתר האינטרנט של הדגמות חיות . להדגמה החיה יש את היתרונות הבאים
EPS מה זה EPS פורמט קובץ
קבצים עם סיומת EPS מתארים בעצם תוכנית שפת Encapsulated PostScript שמתארת את המראה של עמוד בודד. השם "Encapsulated" מכיוון שניתן לכלול אותו או לכלול אותו בתיאור עמוד אחר בשפת PostScript. פורמט קובץ זה מבוסס סקריפט עשוי להכיל כל שילוב של טקסט, גרפיקה ותמונות. קובצי EPS עשויים לכלול תמונת תצוגה מקדימה של מפת סיביות מכוסה בפנים לתצוגה על ידי יישומים שיכולים לפתוח קבצים כאלה. ניתן להמיר קבצי EPS לפורמטים סטנדרטיים של תמונה כגון JPG, PNG, TIFF ו-PDF באמצעות יישומים שונים, למשל. Adobe Illustrator, Photoshop ו-PaintShop Pro. בגלל פגיעות אבטחה בקובצי EPS, Office 2016, Office 2013, Office 2010 ו-Office 365 ביטלו את היכולת להכניס קובצי EPS למסמכי Office.
קרא עודפורמטי דחיסה נתמכים אחרים
באמצעות Java, אפשר לדחוס בקלות פורמטים שונים כולל.