짧은 버전 :
- MS 휴대용 퍼스널 컴퓨터 형식의 653 페이지에 지정된 두 가지 유형
Launch
대신 액션 형식을 사용하여 MS Word 2007 (또는 최신 버전)에서 상대 파일 하이퍼 링크 (예 : 다른 PDF 파일을 가리키는 하이퍼 링크)를 인코딩 할 수있는 방법이 있습니까?URI
PDF 참조, 버전 1.7, 6 판-http: //wwwimages.adobe.com/www.adobe.com/content/dam/Adobe/en/devnet/pdf/pdfs/pdf_reference_1-7.pdf )? 아니면 모든 "잘못된"URI
인코딩 된 파일 하이퍼 링크를Launch
동등한 것으로 변경할 수있는 포스트 프로세서를 구현하는 유일한 솔루션 입니까?
정교한 버전 :
두 개의 Word 문서가 있습니다. doc1.docx
및 doc2.docx
(둘 다 MS Word 2007로 컴파일 됨).
에서 doc1.docx
내 두 번째 문서 (PDF 버전에 하이퍼 링크 doc2.pdf
) - 그래서 지금 내가 가지고 :
그때 저장 doc1.docx
양쪽으로 파일을 .docx
하고 .pdf
- PDF
세대에 의해 처리됩니다 내장 된 MS Word 2007에서 PDF 발행인 다음 옵션을 사용 :
지금까지는 좋았습니다. 다음 폴더 구조가 있습니다.
/superuser
- doc1.docx
- doc1.pdf
- doc2.docx
- doc2.pdf
그런 다음 doc1.pdf
Adobe Reader X (버전 10.1.3)를 열고를 가리키는 하이퍼 링크를 클릭합니다 doc2.pdf
. 링크가 상대적이기 때문에 Adobe Reader X가 대상 PDF 파일을 별도의 창이나 Adobe Reader X의 동일한 인스턴스에서 열면된다고 추측했거나 추측했습니다 (에 Open cross-document links in same window
지정된 옵션에 따라 Edit -> Preferences -> Documents
).
그러나 그렇지 않습니다 . 대신, Adobe Reader X는 기본 브라우저 (내 경우에는 Windows 7 x64의 Chrome v21 +)를 사용하여 하이퍼 링크를 해결합니다 . 이 문제는 분명 합니다 . ( Open cross-document links in same window
옵션 을 선택하지 않은 경우 ) Adobe Reader X의 다른 인스턴스에서 대상 PDF를 열어서 하이퍼 링크를 해결하기 위해 Adobe Reader X (및 대부분의 이전 버전)를 원합니다 . 내 (기본) PDF 리더를 사용하여 동일한 시나리오를 반복합니다. Sumatra PDF가 예상대로 작동-Sumatra PDF는 대상 PDF 파일을 별도의 창에서 열고 내용을 보여줍니다doc2.pdf
. 그렇다면 왜 Sumatra PDF를 사용하지 않습니까? 그러나 문제는 잠재적 인 최종 사용자가 많은 프로젝트에서 작업하고 있으며 모두 Adobe Reader X 이외의 다른 PDF 리더를 사용한다고 가정 할 수 없다는 것입니다. 따라서 다른 방법은 없습니다. Adobe Reader X에서 무슨 일이 일어나고 있는지 파악합니다.
그래서 거기에 도착하기 위해 파기 시작했습니다.
먼저 Chrome의 주소 표시 줄을 보면 Adobe Reader X가 URI 구성표를 doc2.pdf
사용하여 해결하려고 시도하는 것으로 나타났습니다 .-나에게 공정한 것 같습니다 ( Windows 7 의 대화 상자에 동일한 URI를 붙여 넣으면 기본 PDF 리더가 발생합니다 (Sumatra PDF )-파일을 열려면)-왜 Adobe Reader X가 기본 브라우저에 PDF를 처리하도록 요청합니까?file
file:///C:/superuser/doc2.pdf
Run
이에 답하기 위해 계속 파고 들었습니다. 열기 doc1.pdf
메모장 ++ 하이퍼 링크가 사용하여 인코딩 된 것으로 나타났다 URI
. (참조 페이지 어도비 PDF 형식의 653과 662을 행동 유형, PDF 참조, 버전 1.7, 제 6 판 - http://wwwimages.adobe.com/www.adobe .com / content / dam / Adobe / en / devnet / pdf / pdfs / pdf_reference_1-7.pdf ) :
/Type/Action/S/URI/URI(doc2.pdf)
PDF 참조 (662 페이지)에는 URI
작업 유형 에 대한 다음 내용이 나와 있습니다 .
URI (Uniform Resource Identifier)는 인터넷의 리소스 (일반적으로 하이퍼 텍스트 링크의 대상인 파일)를 식별하는 문자열로, 쿼리 나 다른 엔터티로도 확인할 수 있습니다.
따라서 처음에는 Adobe Reader X의 주요 버그처럼 보이는 것이 공정한 구현처럼 보이기 시작했습니다. 적어도이 시점에서 나는 Adobe Reader X가 그처럼 행동하는 이유를 알아 냈습니다. 새로운 질문에 대한 답을 doc2.pdf
얻었습니다. 결과 PDF가 Adobe Reader X를 만들 도록 파일 하이퍼 링크 (예 : 링크)를 올바르게 인코딩하는 방법 기본 브라우저에서 작업을 수행하도록 요청하는 대신 링크 자체를 처리합니까?
PDF 사양을 다시 살펴보고 Launch
해당 유형에 대한 동작 유형을 찾았다는 답을 얻기 위해 PDF 참조는 다음과 같이 설명합니다 (659 페이지).
실행 조치는 응용 프로그램을 시작하거나 문서를 열거 나 인쇄합니다.
따라서 notepad ++를 사용하여 다음과 같이 변경하면됩니다.
교체 :
/Type/Action/S/URI/URI(doc2.pdf)
이것으로 :
/Type/Action/S/Launch/F(doc2.pdf)
... 그런 다음 Adobe Reader X doc2.pdf
는 별도의 창에서 파일 을 열어 Adobe Reader X의 다른 인스턴스를 열어 링크를 확인합니다. Open cross-document links in same window
옵션 을 선택하지 않은 것으로 가정합니다 (hooray !!).
그리고 지금까지 아직 해결하지 못한 실제 / 최종 질문으로 내려 가면 MS Word 2007 (또는 그 이상)을 사용하여 상대 파일 하이퍼 링크 (예 : 다른 PDF 파일을 가리키는 하이퍼 링크)를 인코딩 할 수있는 방법이 있습니까? 액션 형 Launch
대신 URI
(어도비 PDF 형식, PDF 참조, 버전 1.7의 페이지 653에 지정된 두 가지 유형, 제 6 판 - http://wwwimages.adobe.com/www.adobe.com/content/dam/Adobe/en /devnet/pdf/pdfs/pdf_reference_1-7.pdf )? 아니면 모든 "잘못된" URI
인코딩 된 파일 하이퍼 링크를 Launch
동등한 것으로 변경할 수있는 일종의 포스트 프로세서 응용 프로그램을 구현하는 유일한 솔루션 입니까?
나는 이것이 "TLDR"을 많이 유발할 수 있다는 것을 알고있다. 그러나 만약 당신이 여기에 도착한다면 당신의 관심에 진심으로 감사하고 당신이나 다른 누군가가 나를 올바른 방향으로 안내 할 수 있기를 바랍니다.
감사.