Base64 문자열은 ASCII 형식의 데이터를 보여줍니다. HTML 웹 페이지 또는 스타일 시트에 인라인 이미지 및 기타 정보를 포함하는 데 널리 사용됩니다. 이 기사에서는 Java를 사용하여 Base64 문자열을 PDF, JPGPNG로 변환하는 방법을 배웁니다.

Java Base64 to PDF 변환기 API - 설치

릴리스 섹션에서 또는 다음 Maven 구성을 사용하여 Aspose.PDF for Java API의 JAR 파일을 다운로드할 수 있습니다.

저장소:

<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 문자열 변환 시나리오를 진행해 보겠습니다.

Java를 사용하여 Base64 문자열을 JPG 또는 PNG 이미지로 변환

JPG, PNG 및 기타 종류의 이미지는 때때로 안전하고 안정적인 통신 및 데이터 전송을 위해 Base64 문자열로 인코딩됩니다. 또한 PDF 변환을 살펴보기 전에 Java를 사용하여 Base64 문자열을 JPG 또는 PNG 이미지로 변환하는 방법을 배워야 합니다. 따라서 변환을 위해 다음 단계를 따라야 합니다.

  1. 긴 문자열로 인해 데이터를 TXT 파일로 저장
  2. 문자열 값 읽기
  3. 접두사 바꾸기
  4. Base64 문자열을 JPG 또는 PNG 이미지로 저장

다음 코드 조각은 Java를 사용하여 Base64 문자열을 JPG 또는 PNG 이미지로 변환하는 방법을 보여줍니다.

// 문자열이 길기 때문에 TXT 파일에 base64 문자열 저장
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 = new FileOutputStream(dataDir + "Base64에서 Image.png로");
try {
    fos.write(imageBytes);
}
finally {
    fos.close();
}

Java를 사용하여 Base64를 PDF로 변환

Base64를 PNG 또는 JPG 이미지로 변환하는 방법을 배웠습니다. 이것은 실제로 Base64를 PDF 파일로 변환하는 중간 단계입니다. 한 단계 더 나아가자. 문자열이 래스터 이미지로 저장되면 PDF로 쉽게 변환할 수 있습니다. Base64 문자열을 PDF로 변환하려면 아래 단계를 수행할 수 있습니다.

  1. Base64 문자열의 접두사 제거
  2. Base64 문자열을 PNG 또는 JPG 이미지로 변환
  3. 그런 다음 출력 이미지를 PDF로 변환

따라서 아래 코드 조각은 Java 언어를 사용하여 Base64 문자열을 PDF로 변환하는 방법을 보여줍니다.

// 문자열이 길기 때문에 TXT 파일에 base64 문자열 저장
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 및 기타 여러 형식으로 변환할 수 있습니다. 다른 가능성을 탐색하고 싶으십니까? 주저하지 말고 무료 지원 포럼을 통해 이에 대해 논의하십시오.

또한보십시오