Řetězec Base64 zobrazuje data ve formátu ASCII. Je populární pro vkládání vložených obrázků a dalších informací do HTML webových stránek nebo stylů. V tomto článku se naučíme, jak převést řetězec Base64 na PDF, JPG a PNG pomocí Java.
Java Base64 to PDF Converter API – instalace
Soubory JAR Aspose.PDF for Java API si můžete stáhnout ze sekce Releases nebo pomocí následujících konfigurací Maven:
ú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-pdf</artifactId>
<version>20.7</version>
</dependency>
Takže Aspose.PDF for Java API bylo nakonfigurováno. Než přistoupíme k převodu řetězce Base64, podívejme se na ukázková data:
Příklad řetězce pro konverzi Base64
Řetězec Base64 si můžete stáhnout z zde.
Náhled ukázkového řetězce Base64
Nyní přejdeme k následujícím scénářům převodu řetězce Base64:
- Převeďte řetězec Base64 na obrázek JPG nebo PNG pomocí Java
- Převeďte řetězec Base64 na soubor PDF pomocí Java
Převeďte řetězec Base64 na obrázek JPG nebo PNG pomocí Java
JPG, PNG a další druhy obrázků jsou někdy kódovány do řetězce Base64 pro bezpečnou a spolehlivou komunikaci a přenos dat. Kromě toho, než prozkoumáme převod PDF, musíme se dozvědět o převodu řetězce Base64 na obrázky JPG nebo PNG pomocí Java. Pro převod je tedy třeba postupovat podle těchto kroků:
- Kvůli dlouhému řetězci uložte data do souboru TXT
- Přečtěte si hodnotu řetězce
- Nahraďte předpony
- Uložte řetězec Base64 do obrázku JPG nebo PNG
Následující fragment kódu ukazuje, jak převést řetězec Base64 na obrázek JPG nebo PNG pomocí Java:
// Uložte řetězec base64 do souboru TXT, protože řetězec je dlouhý
FileInputStream fis = new FileInputStream(dataDir + "base64.txt");
String base64 = IOUtils.toString(fis, "UTF-8");
String base64ImageString = base64.replace("data:image/png;base64,", "");
byte[] imageBytes = javax.xml.bind.DatatypeConverter.parseBase64Binary(base64ImageString);
// Převést Base64 na JPG nebo PNG obrázek
FileOutputStream fos = new FileOutputStream(dataDir + "Base64 to Image.jpg");
//FileOutputStream fos = new FileOutputStream(dataDir + "Base64 to Image.png");
try {
fos.write(imageBytes);
}
finally {
fos.close();
}
Převeďte Base64 do PDF pomocí Java
Dozvěděli jsme se o převodu Base64 na obrázky PNG nebo JPG. Toto je vlastně mezikrok převodu Base64 do souboru PDF. Pojďme o další krok dále. Jakmile je řetězec uložen jako rastrový obrázek, můžete jej snadno převést do PDF. Pro převod řetězce Base64 do PDF můžete postupovat podle níže uvedených kroků:
- Odstraňte předpony řetězce Base64
- Převeďte řetězec Base64 na obrázek PNG nebo JPG
- Poté převeďte výstupní obrázek do PDF
Níže uvedený fragment kódu tedy ukazuje, jak převést Base64 String do PDF pomocí jazyka Java:
// Uložte řetězec base64 do souboru TXT, protože řetězec je dlouhý
FileInputStream fis = new FileInputStream(dataDir + "base64.txt");
String base64 = IOUtils.toString(fis, "UTF-8");
String base64ImageString = base64.replace("data:image/png;base64,", "");
byte[] imageBytes = javax.xml.bind.DatatypeConverter.parseBase64Binary(base64ImageString);
String path = dataDir + "Base64 to Image.png";
// Převést Base64 na PNG nebo JPG obrázek
FileOutputStream fos = new FileOutputStream(path);
try {
fos.write(imageBytes);
}
finally {
fos.close();
}
BufferedImage readImage = null;
try {
readImage = ImageIO.read(new File(path));
int h = readImage.getHeight();
int w = readImage.getWidth();
com.aspose.pdf.Document doc = new com.aspose.pdf.Document();
com.aspose.pdf.Page page = doc.getPages().add();
com.aspose.pdf.Image image = new com.aspose.pdf.Image();
image.setFile(path);
page.getPageInfo().setHeight(h);
page.getPageInfo().setWidth(w);
page.getPageInfo().getMargin().setBottom(0);
page.getPageInfo().getMargin().setTop(0);
page.getPageInfo().getMargin().setRight(0);
page.getPageInfo().getMargin().setLeft(0);
page.getParagraphs().add(image);
doc.save(dataDir + "Base64-to-PDF.pdf");
} catch (Exception e) {
readImage = null;
}
Závěr
Abychom to shrnuli, prozkoumali jsme, jak převést řetězec Base64 na obrázky PDF, PNG a JPG. pomocí Java Generování PDF souboru navíc otevře mnohem více možností pro další konverzi. Stejně jako soubor PDF lze převést do SVG, XPS, DOCX a mnoha dalších formátů. Máte zájem prozkoumat další možnosti? Neváhejte a proberte to s námi prostřednictvím bezplatných fór podpory.