Převést APNG na JPEG přes Java
Transformujte APNG na JPEG pomocí nativních Java API, aniž byste potřebovali editor obrázků nebo knihovny třetích stran.
Jak převést APNG na JPEG pomocí Java
Převod formátů souborů se může zdát jako rutinní úkol, se kterým se grafici setkávají. Přesto by bylo chybou podceňovat jeho význam. Hodnocení vaší práce může záviset na tom, jak rychle a efektivně se s tímto úkolem vypořádáte. Původní obrázky obvykle vyžadují převod do formátů, které jsou vhodnější pro tisk nebo online publikaci. Pokud původní obrázek pochází z grafického editoru, může být ve vektorovém formátu. V tomto scénáři musí být rastrován a převeden na rastrový formát pro účely publikování. Máte na výběr, zda chcete uložit obrázek v nekomprimovaném formátu pro optimální kvalitu, nebo jej převést do bezztrátového komprimovaného formátu pro zmenšení velikosti souboru. V určitých kontextech, jako je publikování na webu, se můžete rozhodnout pro ztrátové komprimované formáty. Speciálně navržené algoritmy pro kompresi obrazových dat umožňují výrazné snížení velikosti souboru při zachování přijatelné kvality obrazu. To usnadňuje rychlé stahování obrazových souborů z internetu. Abychom převedli APNG na JPEG, použijeme Aspose.Imaging for Java API, které je funkčně bohaté, výkonné a snadno použitelné rozhraní API pro manipulaci a konverzi obrázků pro platformu Java. Jeho nejnovější verzi si můžete stáhnout přímo z Maven a nainstalovat do svého Maven -založený projekt přidáním následujících konfigurací do souboru pom.xml.
Úložiště
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>https://repository.aspose.com/repo/</url>
</repository>
Závislost
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-imaging</artifactId>
<version>version of aspose-imaging API</version>
<classifier>jdk16</classifier>
</dependency>
Kroky k převodu APNG na JPEG prostřednictvím Java
Vývojáři mohou snadno načíst a převést soubory APNG do formátu JPEG pomocí několika řádků kódu.
- Načtěte soubor APNG pomocí metody Image.load
- Vytvořte a nastavte instanci požadované podtřídy ImageOptionsBase (např. BmpOptions, PngOptions atd.)
- Zavolejte metodu Image.save
- Předat cestu k souboru s příponou JPEG a objektem třídy ImageOptionsBase
Požadavky na systém
Před spuštěním ukázkového kódu konverze se ujistěte, že máte následující předpoklady.
- Operační systém: Windows nebo Linux.
- Vývojové prostředí: Podporuje .NET Core 7 a vyšší, jako je Microsoft Visual Studio.
Bezplatná aplikace pro převod APNG na JPEG
- Vyberte nebo přetáhněte obrázek APNG
- Vyberte formát a klikněte na tlačítko Převést
- Kliknutím na tlačítko Stáhnout stáhnete obrázek ve formátu JPEG
Podívejte se na naše živé ukázky k převodu APNG na JPEG
Převést APNG na JPEG – Java
import com.aspose.imaging.Image; | |
import com.aspose.imaging.ImageOptionsBase; | |
import com.aspose.imaging.fileformats.jpeg2000.Jpeg2000Codec; | |
import com.aspose.imaging.fileformats.png.PngColorType; | |
import com.aspose.imaging.fileformats.tiff.enums.TiffExpectedFormat; | |
import com.aspose.imaging.imageoptions.*; | |
//This example demonstrates how to convert all supported file formats from one to another | |
String templatesFolder = "D:\\WorkDir\\"; | |
//Formats that support both - save and load | |
HashMap<String, ImageOptionsBase> formatsThatSupportExportAndImport = new HashMap<String, ImageOptionsBase>(); | |
formatsThatSupportExportAndImport.put("bmp", new BmpOptions()); | |
formatsThatSupportExportAndImport.put("gif", new GifOptions()); | |
formatsThatSupportExportAndImport.put("dicom", new DicomOptions()); | |
formatsThatSupportExportAndImport.put("emf", new EmfOptions()); | |
formatsThatSupportExportAndImport.put("jpg", new JpegOptions()); | |
formatsThatSupportExportAndImport.put("jpeg", new JpegOptions()); | |
formatsThatSupportExportAndImport.put("jpeg2000", new Jpeg2000Options() ); | |
formatsThatSupportExportAndImport.put("j2k", new Jpeg2000Options() {{ setCodec(Jpeg2000Codec.J2K); }} ); | |
formatsThatSupportExportAndImport.put("jp2", new Jpeg2000Options() {{ setCodec(Jpeg2000Codec.Jp2); }} ); | |
formatsThatSupportExportAndImport.put("png",new PngOptions() {{ setColorType(PngColorType.TruecolorWithAlpha); }}); | |
formatsThatSupportExportAndImport.put("apng", new ApngOptions()); | |
formatsThatSupportExportAndImport.put("svg", new SvgOptions()); | |
formatsThatSupportExportAndImport.put("tiff", new TiffOptions(TiffExpectedFormat.Default)); | |
formatsThatSupportExportAndImport.put("tif", new TiffOptions(TiffExpectedFormat.Default)); | |
formatsThatSupportExportAndImport.put("wmf", new WmfOptions()); | |
formatsThatSupportExportAndImport.put("emz", new EmfOptions() {{ setCompress(true); }}); | |
formatsThatSupportExportAndImport.put("wmz", new WmfOptions() {{ setCompress(true); }}); | |
formatsThatSupportExportAndImport.put("svgz", new SvgOptions(){{ setCompress(true); }}); | |
formatsThatSupportExportAndImport.put("tga", new TgaOptions()); | |
formatsThatSupportExportAndImport.put("webp", new WebPOptions()); | |
formatsThatSupportExportAndImport.put("ico", new IcoOptions()); | |
//Formats that can be only saved | |
HashMap<String, ImageOptionsBase> formatsOnlyForExport = new HashMap<String, ImageOptionsBase>(); | |
formatsOnlyForExport.put("psd", new PsdOptions()); | |
formatsOnlyForExport.put("dxf", new DxfOptions() {{ setTextAsLines(true); setConvertTextBeziers(true); }} ); | |
formatsOnlyForExport.put("pdf", new PdfOptions()); | |
formatsOnlyForExport.put("html", new Html5CanvasOptions()); | |
//Formats that can be only loaded | |
List<String> formatsOnlyForImport = Arrays.asList("djvu", "dng", "dib", "eps", "cdr", "cmx", "otg", "odg"); | |
//Get total formats that can be saved | |
HashMap<String, ImageOptionsBase> exportToFormats = new HashMap<String, ImageOptionsBase>(formatsOnlyForExport); | |
exportToFormats.putAll(formatsThatSupportExportAndImport); | |
//Get total formats that can be loaded | |
List<String> importFormats = new LinkedList<>(formatsOnlyForImport); | |
importFormats.addAll(formatsThatSupportExportAndImport.keySet()); | |
importFormats.forEach((formatExt) -> { | |
String inputFile = templatesFolder + "template." + formatExt; | |
for (Map.Entry<String, ImageOptionsBase> exportFormat : exportToFormats.entrySet()) | |
{ | |
String outputFile = String.format("%s\\%s\\%s-%s-to-%s.%s", templatesFolder, "convert", "convert-", formatExt, exportFormat.getKey(), exportFormat.getKey()); | |
System.out.println(outputFile); | |
// More about load method can be found at | |
// https://apireference.aspose.com/imaging/java/com.aspose.imaging/Image#load-java.lang.String- | |
try (Image image = Image.load(inputFile)) | |
{ | |
ImageOptionsBase exportOptions = exportFormat.getValue().deepClone(); | |
if ((formatExt.equals("emf") || formatExt.equals("emz")) && (exportFormat.getValue() instanceof WmfOptions)) | |
{ | |
EmfRasterizationOptions rasterizationOptions = new EmfRasterizationOptions(); | |
rasterizationOptions.setPageWidth(image.getWidth()); | |
rasterizationOptions.setPageHeight(image.getHeight()); | |
exportOptions.setVectorRasterizationOptions(rasterizationOptions); | |
} | |
image.save(outputFile, exportOptions); | |
} | |
} | |
}); |
APNG co je APNG Formát souboru
Soubor s příponou .apng (Animated Portable Network Graphics) je rastrový grafický formát a je neoficiálním rozšířením Portable Network Graphic (PNG). Skládá se z několika snímků (každý z obrázku PNG), které představují sekvenci animace. To poskytuje podobnou vizualizaci jako soubor GIF. Soubory APNG podporují 24bitové obrázky a 8bitovou průhlednost. APNG je zpětně kompatibilní s neanimovanými soubory GIF. Soubory APNG používají stejnou příponu .png a lze je otevřít aplikacemi, jako je Mozilla Firefox, Chrome s podporou APNG, aplikace iMessage pro iOS 10.
Přečtěte si více | APNGJPEG co je JPEG Formát souboru
JPEG je typ obrazového formátu, který se ukládá pomocí metody ztrátové komprese. Výstupní obraz, jako výsledek komprese, je kompromisem mezi velikostí úložiště a kvalitou obrazu. Uživatelé mohou upravit úroveň komprese tak, aby dosáhli požadované úrovně kvality a zároveň snížili velikost úložiště. Kvalita obrazu je zanedbatelně ovlivněna, pokud je na obraz aplikována komprese 10:1. Čím vyšší je hodnota komprese, tím vyšší je zhoršení kvality obrazu.
Přečtěte si více | JPEGDalší podporované konverze
Pomocí Java lze snadno převádět různé formáty včetně.