Рядок Base64 відображає дані у форматі ASCII. Він популярний для вбудовування вбудованих зображень та іншої інформації у веб-сторінки HTML або таблиці стилів. У цій статті ми навчимося перетворювати рядок Base64 у PDF, JPG і PNG за допомогою Java.

Java Base64 to PDF Converter API – встановлення

Ви можете завантажити JAR-файли API Aspose.PDF for Java із розділу Releases або за допомогою таких конфігурацій 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-pdf</artifactId>
    <version>20.7</version>
</dependency>

Отже, Aspose.PDF for Java API налаштовано. Перш ніж перейти до перетворення рядка Base64, давайте подивимося на зразки даних:

Приклад рядка для перетворення Base64

Ви можете завантажити рядок Base64 тут.

Попередній перегляд рядка прикладу Base64

Base64 у PNG JPG

Тепер перейдемо до наступних сценаріїв перетворення рядка Base64:

Перетворіть рядок Base64 на зображення JPG або PNG за допомогою Java

JPG, PNG та інші види зображень іноді кодуються в рядок Base64 для безпечного та надійного зв’язку та передачі даних. Більше того, перш ніж досліджувати перетворення PDF, нам потрібно дізнатися про перетворення рядка Base64 у зображення JPG або PNG за допомогою Java. Тому вам потрібно виконати такі кроки для перетворення:

  1. Збережіть дані у файлі TXT через довгий рядок
  2. Прочитайте значення рядка
  3. Замініть префікси
  4. Збережіть рядок Base64 у форматі JPG або PNG

У наступному фрагменті коду показано, як перетворити рядок Base64 на зображення JPG або PNG за допомогою Java:

// Збережіть рядок base64 у файлі TXT, оскільки рядок довгий
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);

// Перетворення Base64 на зображення JPG або PNG
FileOutputStream fos = new FileOutputStream(dataDir + "Base64 to Image.jpg");
//FileOutputStream fos = новий FileOutputStream(dataDir + "Base64 to Image.png");
try {
    fos.write(imageBytes);
}
finally {
    fos.close();
}

Перетворіть Base64 у PDF за допомогою Java

Ми дізналися про перетворення зображень Base64 у PNG або JPG. Фактично це проміжний етап перетворення Base64 у файл PDF. Зробимо ще один крок далі. Коли рядок буде збережено як растрове зображення, ви можете легко перетворити його на PDF. Щоб перетворити рядок Base64 у PDF, виконайте наведені нижче дії.

  1. Видаліть префікси Base64 String
  2. Перетворення рядка Base64 на зображення PNG або JPG
  3. Потім конвертуйте вихідне зображення у PDF

Тож наведений нижче фрагмент коду показує, як конвертувати Base64 String у PDF за допомогою мови Java:

// Збережіть рядок base64 у файлі TXT, оскільки рядок довгий
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";

// Перетворення Base64 на зображення PNG або JPG
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;
}

Висновок

Підводячи підсумок, ми дослідили, як перетворити рядок Base64 на зображення PDF, PNG і JPG. використання Java Крім того, створення PDF-файлу відкриє набагато більше можливостей для подальшого перетворення. Подібно до файлу PDF можна конвертувати у SVG, XPS, DOCX та багато інших форматів. Хочете вивчити інші можливості? Не соромтеся обговорити це з нами через безкоштовні форуми підтримки.

Дивись також