0
PDFBOX에 문제가 있습니다.내 html 필드에서 PDFBOX 작성 문서
이public class DelegationsPdf{
public Delegations getPDF(Delegations delegations) throws IOException{
PDDocument delegation = new PDDocument();
PDDocumentCatalog catalog = delegation.getDocumentCatalog();
PDAcroForm pdAcroForm = catalog.getAcroForm();
PDPage page = new PDPage();
delegation.addPage(page);
page = delegation.getPage(0);
PDPageContentStream content = new PDPageContentStream(delegation, page);
content.beginText();
content.setFont(PDType1Font.TIMES_ROMAN, 20);
content.setLeading(14.5f);
content.newLineAtOffset(275, 750);
content.showText("Delegations");
content.endText();
content.beginText();
content.newLineAtOffset(50 ,650);
content.setFont(PDType1Font.TIMES_ROMAN, 12);
content.showText("Worker:");
content.endText();
// FILL THE FIELD
content.beginText();
PDField name = pdAcroForm.getField(delegations.getName());
content.newLineAtOffset(100 ,650);
content.setFont(PDType1Font.TIMES_ROMAN, 12);
pdAcroForm.getFields().add(name);
content.endText();
content.close();
delegation.save("C:/delegation.pdf");
delegation.close();
return delegations;
}
그래서 내 이유를 설명 필드에서 코드 "/ 필드 채우기"나던 일을 제대로 알려주세요 :
그래서 나는 간단한 코드를 생성? 내 대표단 클래스에서 이름에 대한 정보를 얻습니다. 나 좀 도와 줄 수있어? 이걸 실행하고 버튼을 클릭하면 NULL과 관련된 오류가 발생합니다.
물론입니다. 'pdAcroForm.getField (delegations.getName());'문서에 필드가 없으므로 아무 것도 반환하지 않습니다. Btw 코드가 혼란 스럽습니다. PDDocument 객체는 "document"또는 "delegationDocument"이지만 "delegation"은 명명되지 않아야합니다. PDField는 "이름"이 아닌 "필드"라고해야합니다. –
https://svn.apache.org/viewvc/pdfbox/trunk/examples/src/main/java/org/apache/pdfbox/examples/interactive/form/에서 제안하는 양식을 만드는 방법을 보여줍니다. . –
오 예, 필드를 추가해야한다는 것을 알았습니다. 이름이 나에 의해 변경되었습니다. 왜냐하면 나는 단지 무엇이 잘못되었는지를 알고 싶어했습니다. 그래서 .. 템플릿을 만들 때 양식을 만들고 거기에 추가해야합니다 (예 : apache svn-FillFormField?). 그러나 각 필드의 위치를 어떻게 추가 할 수 있습니까? – Kondziowsky