SVG (Scalable Vector Graphics) הוא פורמט תמונה וקטור מבוסס XML להגדרת גרפיקה דו מימדית עם תמיכה בהנפשה. תמונות אלו משמשות בעיקר ברשת בגלל צפיפות הפיקסלים הגבוהה. מצד שני, התכונות העשירות גם משפרות את הגודל של תמונות SVG בהשוואה לתמונת PNG בעלת אותו מימד. הבדלים כאלה מאפשרים למפתחים לחשוב על המרת תמונות מפורמט אחד לאחר. מאמר זה דן כיצד להמיר וקטורים SVG לתמונות PNG ב-Java.

המרת SVG ל-PNG ב-Java (גווני אפור, סיבוב, הפוך, בהיר, סימן מים)

Java API להמרת תמונות

GroupDocs.Conversion מציג מסמכים ו-API להמרת תמונה עבור מפתחי Java. הוא תומך ברשימה גדולה של פורמטים של תמונות להמרה מפורמט אחד לאחר. בנוסף, ניתן להתאים אישית את תוצאות ההמרה באמצעות אפשרויות מתקדמות זמינות. אני אשתמש ב-API הזה, GroupDocs.Conversion for Java כדי להמיר את הגרפיקה הווקטורית של SVG לפורמט תמונה PNG.

הורד או הגדר

אתה יכול להוריד את קובץ ה-JAR מקטע ההורדות, או פשוט לקבל את תצורות המאגר והתלות עבור ה-pom.xml של יישומי Java המבוססים על maven.

<repository>
	<id>GroupDocsJavaAPI</id>
	<name>GroupDocs Java API</name>
	<url>http://repository.groupdocs.com/repo/</url>
</repository>
<dependency>
        <groupId>com.groupdocs</groupId>
        <artifactId>groupdocs-conversion</artifactId>
        <version>22.3</version> 
</dependency>

המרת תמונת SVG ל-PNG ב-Java

מבלי לבזבז זמן, בואו נתחיל בהמרה הבסיסית עם תצורת ברירת המחדל. השלבים הבאים מראים כיצד להמיר את קובץ הגרפיקה הווקטורית של SVG לתמונת PNG ב-Java.

  • טען את גרפיקת ה-PNG באמצעות המחלקה Converter.
  • הכן את אפשרויות המרת התמונה.
  • הגדר את סוג קובץ ההמרה כ-PNG.
  • קרא למתודה convert() כדי להמיר את קובץ ה-SVG שנטען לתמונת PNG.

קוד המקור של Java הבא ממיר את ה-SVG לתמונת PNG.

// כיצד להמיר קובץ SVG לפורמט PNG ב-Java באמצעות אפשרויות ברירת המחדל
Converter converter = new Converter("path/vector-graphics.svg");

ImageConvertOptions options = new ImageConvertOptions();
options.setFormat(ImageFileType.Png);

converter.convert("path/svg-to-png.png", options);

תמונת SVG ל-PNG באמצעות אפשרויות מתקדמות ב-Java

ניתן להחיל אפשרויות התאמה אישית רבות על פלט PNG בזמן המרה מ-SVG כדי לקבל את התוצאה הרצויה. להלן כמה מהמאפיינים שניתן להתאים בזמן המרת SVG ל-PNG:

|אפשרות התאמה אישית|שיטה|

|—|—|

|Brightness|setBrightness(int value)|

|Contrast|setContrast(int value)|

|מצב Flip (אופקי / אנכי)|setFlipMode(ערך ImageFlipModes)|

|Gamma|setGamma(ערך צף)|

|גווני אפור|הגדר גווני אפור(ערך בוליאני)|

|Height|setHeight(int value)|

|זוויות סיבוב|setRotateAngle(int value)|

|סימן מים|setWatermark(ערך WatermarkTextOptions)|

|Width|setWidth(int value)|

השלבים הבאים מראים כיצד להחיל וריאציות תוך המרת גרפיקת SVG לתמונת PNG ב-Java.

  • טען את גרפיקת ה-SVG באמצעות המחלקה Converter.
  • הכן את אפשרויות המרת התמונה.
  • הגדר את סוג קובץ ההמרה כ-PNG.
  • הגדר מאפיינים רלוונטיים אחרים באמצעות שיטות ההגדרה המתאימות והתאם את הערכים שלהם בהתאם.
  • המר לתמונת PNG בשיטת convert() עם אפשרויות מוכנות.

אתה יכול להחיל כל אחד מהאפקטים האלה או בשילוב כדי לקבל את פלט ה-PNG הנדרש. קוד המקור הבא מחיל התאמה אישית על תמונת PNG בזמן המרת SVG ל-PNG ב-Java.

// המר קובץ SVG לפורמט PNG ב-Java באמצעות התאמות אישיות שונות
Converter converter = new Converter("path/vector-graphics.svg");

ImageConvertOptions options = new ImageConvertOptions();
options.setFormat(ImageFileType.Png); // Set output format as PNG

options.setFlipMode(ImageFlipModes.FlipY); // Flip Vertically or Horizontally
options.setBrightness(50);  // Set Brightness
options.setContrast(50);    // Set Contrast
options.setGamma(0.5F);     // Set Gamma
options.setGrayscale(true);	// Set Grayscale
options.setRotateAngle(45);	// Set Rotation

// הוסף סימן מים ל-PNG כאשר הומר מפורמט SVG
WatermarkTextOptions watermark = new WatermarkTextOptions("Watermark");
watermark.setColor(Color.BLUE);
watermark.setBackground(false);
watermark.setRotationAngle(-45);
watermark.setTop(50);
watermark.setLeft(50);
watermark.setTransparency(0.2);
watermark.setWidth(450);
watermark.setHeight(450);
options.setWatermark(watermark);

converter.convert("path/svg-to-png-customized.png", options);

קבל רישיון API בחינם

אתה יכול לקבל רישיון זמני בחינם לשימוש ב-API ללא מגבלות ההערכה.

סיכום

לסיכום, למדנו להמיר קבצי SVG לפורמט PNG בתוך יישומי Java. למדנו עוד יותר כיצד אנו יכולים לסובב, להעיף או לסמן קובצי PNG כשהם מומרים מפורמט SVG. יתר על כן, דנו כיצד להתאים אפשרויות בהירות, גמא וגווני אפור.

אתה יכול לנסות לבנות יישום Java המרת תמונה משלך. תוכל ללמוד עוד על ממשקי ה-API מתוך תיעוד לאוטומציה של המרות מסמכים ותמונה.

הדרך הקלה ביותר היא לחוות את הדוגמאות מ-GitHub. צור איתנו קשר לכל שאלה דרך הפורום.

ראה גם