2016-07-13 9 views
0

나는이 일을 성공적으로 수행하기 위해 두 개의 라이브러리를 조사했다. 나는 가장 경험이 많지 않다.스프레드 시트 데이터에서 보안 PDF를 채우는 방법 [Java]

PDFBox - PDDocument 클래스가 채울 필드를로드 할 수없는 보안 된 PDF이기 때문에 생각합니다. Adobe FDFToolkit - FDF가 아니기 때문에 파일에서 필드를 가져올 수 없습니다. 변환 방법을 모릅니다. PDF를 여는 동안 iText-org/bouncycastle/asn1/ASN1OctetString 오류가 발생했습니다.

파일의 특성상 문제가 발생합니다. 그것은 여기에 찾을 수있는 정부 이민 양식입니다 : https://www.uscis.gov/sites/default/files/files/form/i-589.pdf. 이 문제를 해결하기위한 아이디어가 있습니까?

+0

당신이하고 싶은 것을 알아야합니다. Excel 파일처럼 보이는 PDF를 만드시겠습니까? 또는 엑셀 파일의 특정 필드를 양식 필드 (acroform)가있는 PDF에 할당 할 수 있습니까? PDFBox에는 소스 코드 다운로드 예제가 있습니다. –

+0

iText로 시도하지 않은 이유는 무엇입니까? –

+0

현재 iText를 사용하려고합니다. 나는 그것이 비슷하다는 것을 알고 있었다. –

답변

0

양식은 소유자 암호를 사용하여 암호화됩니다. 사용 권한은 양식 채우기를 허용하는 방식으로 설정되지만 iText와 PdfBox는 현재 사용 권한을 확인할 수있을만큼 세분화되어 있습니다. PDF가 암호화되어 있으면 암호를 입력하라는 메시지가 나타납니다.

그러나 iText의 경우 unethicalreading이라는 설정이 있습니다. 공식 문서에 How to decrypt a PDF document with the owner password?를 참조하십시오이 암호화되지 않은 것처럼

PdfReader.unethicalreading = true; 

true이 정적 변수를 설정함으로써, PDF가 처리됩니다.