다음 코드를 사용하여 확대/축소 수준을 변경하려면을 상속하지만 변경할 수는 없습니다.itext 기존 하이퍼 링크의 확대/축소 수준을 확대 pdf
내가 첫 페이지 (체크 아웃 화면)에 대한 PDF에 DEST 배열이 없기 때문에 PdfName.DEST 및 조건에서 일부 실수를 저질렀을 수 있습니다.
for (int count = 0; count < reader.getNumberOfPages(); count++) {
PdfDictionary page = reader.getPageN(count+1);
PdfArray annots = page.getAsArray(PdfName.ANNOTS);
if (annots != null) {
for (int i = 0; i < annots.size(); i++) {
PdfDictionary annotation = annots.getAsDict(i);
if (PdfName.LINK.equals(annotation.getAsName(PdfName.SUBTYPE))) {
if(annotation.get(PdfName.A)==null){
continue;
}
PdfArray d = annotation.getAsArray(PdfName.DEST);
if (d != null && d.size() == 5 && PdfName.XYZ.equals(d.getAsName(1)))
d.set(4, new PdfNumber(0));
}
}
}
}
첫 번째 페이지에서 두 번째 페이지의 링크를 만들었습니다. 구조에서 이미지를 체크 아웃했습니다.
나는 또한 내가 디버그를 가지고 D의 값을 확인 ... 다음 코드를 사용하려고 한 것은 당신이 당신을 수있는 스크린 샷을 추가
for (int count = 0; count < reader.getNumberOfPages(); count++) {
PdfDictionary page = reader.getPageN(count+1);
PdfArray annots = page.getAsArray(PdfName.ANNOTS);
if (annots != null) {
for (int i = 0; i < annots.size(); i++) {
PdfDictionary annotation = annots.getAsDict(i);
if (PdfName.LINK.equals(annotation.getAsName(PdfName.SUBTYPE))) {
PdfArray d = annotation.getAsArray(PdfName.DEST);
// d is null every time
}
}
}
}
사실 내가 확대 속성을 모든 링크를 변경하고 싶습니다. 미안하지만 나는 영어로 나쁘다. –
또한 조건 앞에 d가 null로 표시됩니다. –
그것이 내가 수프 메타포로 의미했던 것입니다. 당신은 당신의 질문에 답을 보여 주지만 답은 보이지 않습니다 !!! 어떻게 가능합니까 ??? 내 질문을 업데이트 할게. –