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

ה-API הטוב ביותר לדחיסת תמונה של Java - הורדה חינם

Aspose.Imaging for Java הוא API רב עוצמה המאפשר לבצע פעולות שונות של עיבוד תמונה מתוך יישומי Java. יתר על כן, זה מאפשר לך לדחוס תמונות PNG, JPEG ו-TIFF בצורה חלקה. כדי להשתמש ב-API, אתה יכול להוריד את ה-JAR שלו או להתקין אותו בתוך היישומים המבוססים על 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-imaging</artifactId>
    <version>20.12</version>
    <classifier>jdk16</classifier>
</dependency>

דחוס תמונות PNG ב-Java

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

דוגמת הקוד הבאה מראה כיצד לדחוס תמונת PNG באמצעות Java.

// טען תמונה מקובץ (או זרם)
Image image = Image.load("aspose_logo.png");

// לולאה מעל טווח רמת הדחיסה האפשרי
for (int i = 0; i <= 9; i++) {
	
  // צור מופע של PngOptions עבור כל PNG שנוצר
	PngOptions options = new PngOptions();
	
  // הגדר את רמת הדחיסה
	options.setCompressionLevel(i);
	
  // שמור תוצאה בדיסק (או זרם)
	image.save("CompressingFiles_out" + i + ".png", options);
}

דחיסת תמונה JPEG באמצעות Java

עבור דחיסת תמונות JPEG, Aspose.Imaging עבור Java מספקת את סוגי הדחיסה הבאים.

  • קו בסיס
  • פּרוֹגרֵסִיבִי
  • תפסיד פחות
  • JpegLs

להלן השלבים להחלת אחד מסוגי הדחיסה שהוזכרו לעיל על תמונות JPEG באמצעות Java.

דוגמת הקוד הבאה מראה כיצד לדחוס תמונות JPEG באמצעות Java.

// טען תמונה
Image original = Image.load("Input.jpeg");
try
{
    JpegOptions jpegOptions = new JpegOptions()
	  {{
        // החל דחיסה
		    setCompressionType(JpegCompressionMode.Progressive);
	  }};
  
  // שמור תמונה דחוסה
  original.save("result.jpg", jpegOptions);
}
finally
{
  original.dispose();
}

דחוס תמונות TIFF באמצעות Java

Aspose.Imaging עבור Java מספקת מגוון סוגי דחיסה של TIFF הכוללים LZW, Packbits, CCIT Fax 3 & 4 וכו’. לכן, אתה יכול לבחור את סוג הדחיסה המתאים ביותר לדרישתך. להלן השלבים לביצוע דחיסת TIFF באמצעות Java.

דוגמת הקוד הבאה מראה כיצד לדחוס תמונות TIFF באמצעות Java.

// טען תמונה דרך מיקום נתיב הקובץ או זרם
try (Image image = Image.load("sample.tiff"))
{
	// צור מופע של TiffOptions עבור התמונה שנוצרה
	TiffOptions outputSettings = new TiffOptions(TiffExpectedFormat.Default);

	// הגדר את BitsPerSample, דחיסה, מצב פוטומטרי ופלטת גווני אפור
	outputSettings.setBitsPerSample(new int[] { 4 });
	outputSettings.setCompression(TiffCompressions.Lzw);
	outputSettings.setPhotometric(TiffPhotometrics.Palette);
	outputSettings.setPalette(ColorPaletteHelper.create4BitGrayscale(false));
	image.save("SampleTiff_out.tiff", outputSettings);
}

Java API לדחיסת תמונות - קבל רישיון חינם

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

סיכום

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

ראה גם

מידע: Aspose פיתחה לאחרונה אפליקציית אינטרנט מקוונת חדשה המאפשרת לך להפוך סט של תמונות לסרטון. ייתכן שתתעניין גם בשירות אחר שניתן להשתמש בו כדי לדחוס סרטונים על ידי חילוץ הצלילים מסרטונים.