使大的 JPG 文件更小而不損失質量。刪除不必要和未使用的數據。在代碼中縮小 JPG 文件的大小。 Java 庫為開發人員提供了一個集成的 API 來優化 JPG 內容。
Java 庫是一個獨立的解決方案,不需要安裝任何第三方軟件。
使用 'Aspose.Words for Java' 可以輕鬆實現無損壓縮和深度內容優化。以下示例演示瞭如何優化 Java 中的 Java JPG 文件的內容:
// Repository path: https://releases.aspose.com/java/repo/
// Maven, where 'ver' - Aspose.Words version number, for example, 24.4.
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-words</artifactId>
<version>ver</version>
<classifier>jdk17</classifier>
</dependency>
複製
// Repository path: https://releases.aspose.com/java/repo/
// Gradle, where 'ver' - Aspose.Words version number, for example, 24.4.
compile(group: 'com.aspose', name: 'aspose-words', version: 'ver', classifier: 'jdk17')
複製
// Repository path: https://releases.aspose.com/java/repo/
// Ivy, where 'ver' - Aspose.Words version number, for example, 24.4.
<dependency org="com.aspose" name="aspose-words" rev="ver">
<artifact name="aspose-words" m:classifier="jdk17" ext="jar"/>
</dependency>
複製
// Repository path: https://releases.aspose.com/java/repo/
// Sbt, where 'ver' - Aspose.Words version number, for example, 24.4.
libraryDependencies += "com.aspose" % "aspose-words" % "ver"
複製
import com.aspose.words.*;
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
Shape shape = builder.insertImage("Input.jpg");
ImageSaveOptions saveOptions = new ImageSaveOptions(SaveFormat.JPEG);
saveOptions.setJpegQuality(50);
shape.getShapeRenderer().save("Output.jpg", saveOptions);
import com.aspose.words.*;
Document doc = new Document("Input.jpg");
doc.cleanup();
NodeCollection nodes = doc.getChildNodes(NodeType.SHAPE, true);
for (Shape shape : (Iterable<Shape>) nodes)
{
if (shape.isImage())
{
// 由開發人員選擇用於圖像壓縮的庫。
BufferedImage image = ImageIO.read(shape.getImageData().toStream());
// ...
// 壓縮圖像並將其設置回形狀。
shape.getImageData().setImage("yourCompressedImage");
}
}
OoxmlSaveOptions saveOptions = new PdfSaveOptions();
saveOptions.setCacheBackgroundGraphics(true);
doc.save("Output.jpg", saveOptions);
import com.aspose.words.*;
Document doc = new Document("Input.jpg");
doc.cleanup();
NodeCollection nodes = doc.getChildNodes(NodeType.SHAPE, true);
for (Shape shape : (Iterable<Shape>) nodes)
{
if (shape.isImage)
{
// 由開發人員選擇用於圖像壓縮的庫。
BufferedImage image = ImageIO.read(shape.getImageData().toStream());
// ...
// 壓縮圖像並將其設置回形狀。
shape.getImageData().setImage("yourCompressedImage");
}
}
doc.save("Output.jpg");
import com.aspose.words.*;
Document doc = new Document("Input.jpg");
doc.cleanup();
NodeCollection nodes = doc.getChildNodes(NodeType.SHAPE, true);
for (Shape shape : (Iterable<Shape>) nodes)
{
if (shape.isImage())
{
// 由開發人員選擇用於圖像壓縮的庫。
BufferedImage image = ImageIO.read(shape.getImageData().toStream());
// ...
// 壓縮圖像並將其設置回形狀。
shape.getImageData().setImage("yourCompressedImage");
}
}
OoxmlSaveOptions saveOptions = new OoxmlSaveOptions();
saveOptions.setCompressionLevel(CompressionLevel.MAXIMUM);
doc.save("Output.jpg", saveOptions);
import com.aspose.words.*;
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
Shape shape = builder.insertImage("Input.jpg");
ImageSaveOptions saveOptions = new ImageSaveOptions(SaveFormat.JPEG);
saveOptions.setJpegQuality(50);
shape.getShapeRenderer().save("Output.jpg", saveOptions);
我們在Maven存儲庫中託管我們的 Java 'Aspose.Words for Java' 是一個常見的包含字節碼的 JAR 請按照有關如何將其安裝到 Java 開發人員環境的分步說明進行操作。
Java SE 7 和更新的 Java 版本。 Java SE 6 提供了一個單獨的包,以防您不得不使用這個過時的 JRE 。
我們的 Java 包是跨平台的,可以在所有具有 JVM 實現的 Microsoft Windows 、Linux、macOS、Android 和 iOS。
有關可選包依賴項的信息,例如 JogAmp JOGL 、 Harfbuzz 字體引擎、 Java Advanced Imaging JAI ,請參閱產品文檔。