Java에서 대화형 양식을 다루는 방법
이 가이드는 Aspose.PDF FOSS를 사용하여 PDF 문서에서 Java 필드를 생성하고 관리하는 방법을 보여줍니다. 라디오 버튼, 체크박스, 텍스트 필드를 추가하고 제출된 폼 필드 값을 읽는 방법을 배울 수 있습니다.
라디오 버튼 그룹 만들기
RadioButtonField은(는) 상호 배타적인 옵션 그룹을 나타냅니다. 각 옵션은 레이블과 Rectangle 경계 상자를 사용하여 추가됩니다. 옵션 레이블 중 하나를 인수로 하여 setValue()를 호출하면 초기 값을 설정합니다:
try (Document doc = new Document()) {
PageCollection pages = doc.getPages();
Page page = pages.add();
RadioButtonField radio = new RadioButtonField(page);
radio.setPartialName("choice");
radio.addOption("Yes", new Rectangle(50, 50, 70, 70));
radio.addOption("No", new Rectangle(50, 80, 70, 100));
doc.getForm().add(radio, 1);
radio.setValue("Yes");
doc.save("form.pdf");
}체크박스 추가
CheckboxField은(는) 단일 부울 필드입니다. 기본적으로 체크되도록 하려면 setChecked(true)을(를) 설정하십시오. 이 필드는 특정 페이지 번호(1부터 시작)에서 폼에 추가됩니다:
try (Document doc = new Document()) {
PageCollection pages = doc.getPages();
Page page = pages.add();
CheckboxField cb = new CheckboxField(page, new Rectangle(50, 50, 70, 70));
cb.setPartialName("agree");
cb.setChecked(true);
doc.getForm().add(cb, 1);
doc.save("form.pdf");
}텍스트 필드 추가
TextBoxField은 사용자 텍스트 입력을 받습니다. setValue()로 기본값을 설정하고 저장하기 전에 필드를 폼에 등록하십시오:
try (Document doc = new Document()) {
PageCollection pages = doc.getPages();
Page page = pages.add();
TextBoxField text = new TextBoxField(page, new Rectangle(50, 200, 250, 220));
text.setPartialName("name");
text.setValue("Enter your name");
doc.getForm().add(text, 1);
doc.save("form.pdf");
}선택된 값 가져오기
폼을 로드한 후, 필드의 부분 이름으로 현재 값을 검색합니다. 필드를 구체적인 타입으로 캐스팅하여 타입별 메서드를 호출합니다:
try (Document doc = new Document("form.pdf")) {
RadioButtonField radio = (RadioButtonField) doc.getForm().get("choice");
String selected = radio.getValue();
System.out.println("Selected: " + selected);
}