Внедрих функционалност за добавяне на относителна връзка в pdf с помощта на библиотеката pdfbox. По-долу е кодът, който използвам за добавяне на връзката:
PDAnnotationLink txtLink = new PDAnnotationLink();
PDActionRemoteGoTo remoteGoto = new PDActionRemoteGoTo();
PDComplexFileSpecification fileDesc = new PDComplexFileSpecification();
fileDesc.setFile(System.IO.Path.GetFileName(path));
remoteGoto.setOpenInNewWindow(true);
remoteGoto.setFile(fileDesc);
txtLink.setAction(remoteGoto);
txtLink.setRectangle(rect);
page.getAnnotations().add(txtLink);
Ето командата, въведена в pdf:
14 0 obj
<<
/Type /Filespec
/F (A-201-NORTH & SOUTHSITE ELEVATIONS.pdf)
>>
endobj
Връзките работят в adobe, ios viewer. Но не работи в PSPDF. Освен това имам файл, чиято връзка работи в PSPDF. Но командите в този файл се различават леко от горните. Ето командата за връзка, която работи в PSPDF:
113 0 obj
<<
/Type /Filespec
/F (A8.1 - INTERIOR ELEVATION.pdf)
/UF (A8.1 - INTERIOR ELEVATION.pdf)
/Desc()
>>
И така, как да създам тази команда с помощта на pdfbox.