2017-09-21 1 views
0

누군가가 내가 가지고있는 문제를 밝힐 수 있다면 고맙겠습니다.base64 문자열을 base64 PDF 문자열로 변환하려면 어떻게해야합니까?

AngularJS에서 .pdf 뷰어를 사용하고 있는데, base64에서 문서를 모달로 표시합니다. base64가 .pdf 문서에서 생성 될 때 잘 작동합니다.

이 base64는 Base64.getEncoder().encodeToString() 기능을 사용하여 백엔드 (Java)에서 생성됩니다.

다른 형식의 파일 (.jpeg, .png, .docx)을 해당 파일을 나타내지 만 .pdf 형식으로 인코딩하는 방법은 자바 스크립트 또는 자바와 함께 할 수 있습니까?

제 질문 사항이 확실하지 않은 경우 언제든지 저를 시정하십시오!

미리 감사드립니다.

답변

1

파일 형식이 원본에 정의되어 있습니다 (예 : 파일이 PDF, PNG, JPEG 등으로 생성됨). 변환하지 않고 PDF 뷰어에서 PDF가 아닌 파일을 볼 방법이 없습니다. 원본 형식을 PDF로 변환합니다.

PDF로 파일을 변환에 관심이 있다면 편집, 도움이되는 여러 가지 오픈 소스 라이브러리가 있습니다. 일반적인 예는 Apache PDF Box이지만 다른 많은 옵션도 있습니다.

+0

파일을 .pdf로 먼저 변환 한 다음 .pdf를 base64 문자열로 변환하는 유일한 방법은 무엇입니까? (사용하여 회피 4j '하자?) – Vitz

+0

@Vitz 당신이 취급하는 파일 형식에 대해 다른 특정 뷰어를 사용하고 싶지 않다면 나는 그렇다고 말할 것입니다. –

+1

@Vitz 또한 클라이언트 (예 : 자바 스크립트 코드)로 스트리밍하기 전에 콘텐츠를 Base64로 변환 할 필요는 없습니다. 응답에 올바른'Content-Type' 헤더를 설정하면 모든 바이너리 파일을 그대로 스트리밍 할 수 있고 응용 프로그램 서버는이를 Base64로 변환합니다. 예를 들어, PDF 파일을'byte [] pdf' 변수에 저장하면'response.getOutputStream(). write (pdf)'를 사용하여 PDF 파일을 스트리밍 할 수 있습니다. –

관련 문제