Base64 문자열은 ASCII 형식의 데이터를 보여줍니다. HTML 웹 페이지 또는 스타일 시트에 인라인 이미지 및 기타 정보를 포함하는 데 널리 사용됩니다. 이 기사에서는 Java를 사용하여 Base64 문자열을 PDF, JPG 및 PNG로 변환하는 방법을 배웁니다.
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 문자열 변환 시나리오를 진행해 보겠습니다.
Java를 사용하여 Base64 문자열을 JPG 또는 PNG 이미지로 변환
JPG, PNG 및 기타 종류의 이미지는 때때로 안전하고 안정적인 통신 및 데이터 전송을 위해 Base64 문자열로 인코딩됩니다. 또한 PDF 변환을 살펴보기 전에 Java를 사용하여 Base64 문자열을 JPG 또는 PNG 이미지로 변환하는 방법을 배워야 합니다. 따라서 변환을 위해 다음 단계를 따라야 합니다.
- 긴 문자열로 인해 데이터를 TXT 파일로 저장
- 문자열 값 읽기
- 접두사 바꾸기
- 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로 변환하려면 아래 단계를 수행할 수 있습니다.
- Base64 문자열의 접두사 제거
- Base64 문자열을 PNG 또는 JPG 이미지로 변환
- 그런 다음 출력 이미지를 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 및 기타 여러 형식으로 변환할 수 있습니다. 다른 가능성을 탐색하고 싶으십니까? 주저하지 말고 무료 지원 포럼을 통해 이에 대해 논의하십시오.