큰 PDF를 페이지가 수직 또는 수평으로 정렬되는지 여부에 따라 더 작은 PDF로 분리하는 프로그램을 작성 중입니다. 때로는 프로그램이 페이지의 방향을 결정할 수없는 경우가 있는데, 사용자의 기본 사진 뷰어 (Windows 사진 뷰어)에서 이미지로 PDF를 열고 사용자에게 방향을 선택하도록 요청합니다. 그림을 불러오는 코드는 다음과 같습니다.자바에서 프로그래밍 방식으로 창 닫기 (스윙이 아님)
Desktop dt = Desktop.getDesktop();
File picture = new File(pic.getFileName());
Object[] options = { "Vertical", "Horizontal", "Cancel" };
dt.open(picture);
int n = JOptionPane.showOptionDialog(null,
"This PDF orientation could not be determined.\n" +
"Select your desired orientation below.",
"PDF Orientation Error", JOptionPane.YES_NO_CANCEL_OPTION,
JOptionPane.QUESTION_MESSAGE, null, options, options[2]);
if (n == JOptionPane.YES_OPTION) {orientation = 0;}
if (n == JOptionPane.NO_OPTION) {orientation = 1;}
if (n == JOptionPane.CANCEL_OPTION || n == JOptionPane.CLOSED_OPTION) {System.exit(0);}
사용자가 방향을 선택하면 프로그램이 기본 뷰어에서 그림을 계속 열어 놓습니다. 때로 PDF에 20 ~ 30 개의 미확인 페이지가있을 수 있습니다. 이는 사용자가 처리하기에 실망 스러울 수 있습니다. 사용자가 방향을 선택하면 Windows 사진 뷰어 창을 닫거나 Windows 사진 뷰어 프로그램을 종료 할 수있는 방법이 있는지 궁금합니다. 어떤 도움이라도 대단히 감사합니다.
다시 작동 예에서입니다 내 오류 알림을 처리 ... 나는 이것이 도움이되기를 바랍니다! – booleanCube
감사합니다. 정확히 내가 무엇을 찾고 있었는지. – user2484253
향후 독자를 위해 런타임은 어딘가에 선언되어야합니다. 런타임 런타임 = Runtime.getRuntime(); – booleanCube