2017-02-03 5 views
0

PDFBox를 사용하여 각 PDF에 하이퍼 링크를 추가하여 여러 개의 PDF를 서로 연결하는 기능을 구현했습니다.
다음은 코드입니다 :웹 브라우저가 아닌 AdobeReader에서 PDF의 하이퍼 링크를 열려면 어떻게합니까?

PDAnnotationLink txtLink = new PDAnnotationLink(); 
PDActionURI action = new PDActionURI(); 
Uri fileUri = new Uri(filePath); 
action.setURI(fileUri.ToString()); 
txtLink.setAction(action); 

그러나 문제는 내가 PDF에서 하이퍼 링크를 클릭하면, 오히려 어도비 아크로벳 리더의 다른 인스턴스에서 웹 브라우저에서 열립니다 것입니다.

그렇다면 브라우저 대신 PDF 용으로 선택된 기본 프로그램에서 PDF를 열려면 어떻게해야합니까?

편집 : 하이퍼 링크 경로는

파일과 같다 : /// C : /Users/Administrator/Desktop/Oliver%20Unlinked%20set%20-%20Copy/A8.1%20-%20INTERIOR % 20ELEVATIONS.pdf

+0

파일 경로는 무엇이며, PDF 문서를 여는 기본 응용 프로그램은 무엇입니까? –

+0

@ 사이먼 가격은 편집을 참조하십시오. –

+0

Checkout Evermap Autobookmark –

답변

1

PDF 경로는 장치 독립적 양식이라고해야합니다. 아래 예를 참조하십시오. 또한 링크 (file : //)에 프로토콜을 포함 시키면 실제로 Acrobat에서 브라우저에서 열도록 지시하고 있습니다.

/c/Program Files/Adobe/Acrobat DC/Help/AcroHelp.pdf 
+0

그러나이 경로에는 드라이브 및 폴더에 대한 정보가 들어 있으며, 하이퍼 링크가 상주하는 파일의 경로를 기준으로 경로를 지정하는 방법은 무엇입니까? –

+0

상대 경로와 동일한 형식을 사용합니다. 비록 당신이 문자열을 탈출 할 필요가 없음을 주목하십시오. – joelgeraci