pdf 파일의 북마크를 가져오고 내보내고 편집하는 방법은 무엇입니까?


21

pdf 파일의 책갈피가 파일 어딘가에 일반 텍스트로 저장되어 있다고 들었습니다. 일괄 처리를 위해 pdf 파일의 책갈피를 텍스트 파일로 가져오고 내보낼 수 있는지 궁금합니다.

그렇다면 pdf 파일의 책갈피가 포함 된 텍스트 파일을 편집하기위한 구문에 대한 설명이 있습니까?

우분투 10.10 및 Windows 7 용 무료 소프트웨어 솔루션을 원했습니다.

감사합니다.

답변:


22

PDF에서 일반 텍스트 파일로 또는 그 반대로 책갈피를 추출 할 수있는 다양한 도구가 있습니다. 그 중 일부는 다음과 같습니다.

또한 bmconverter.py 와 같은 여러 도구의 형식을 변환 할 수있는 스크립트가 있습니다 .

또 다른 좋은 방법은 pdflatex를 통해 pdf에 책갈피를 추가하는 것 입니다.


13

pdftk이것을 위해 사용할 수 있습니다 . 추가 정보 : PDF 책갈피를 내보내고 가져 오는 방법 .

다음과 같이 명령 행에서 PDF 책갈피를 내보내십시오.

pdftk C:\Users\Sid\Desktop\doc.pdf dump_data output C:\Users\Sid\Desktop\doc_data.txt

다음과 같은 데이터 파일에서 PDF 책갈피를 가져옵니다.

pdftk C:\Users\Sid\Desktop\doc.pdf update_info C:\Users\Sid\Desktop\doc_data.txt output C:\Users\Sid\Desktop\updated.pdf

pdftk북마크 형식은 약간 지루합니다. 대신 내가 사용하는 내 자신의 스크립트를 생성 bash, sed, pdftkpython3. 이 저장소에서 확인하십시오 : https://github.com/SiddharthPant/booky

이제 bkmrks.txt1000 페이지의 pdf를 작성하는 데 5 분 밖에 걸리지 않는 텍스트 파일 ( )을 만들 수 있습니다 .

{
  Title1, 1
  Title2, 2
  {
    Subtitle1, 3
    Subtitle2, 4
    {
      SubSubtitle1, 5
      ...
    }
  }
}

그런 다음 내 스크립트를 사용하십시오.

./booky.sh pdf_file.pdf bkmrks.txt

pdf_file_new.pdf그러면 내 북마크 가 포함 된 pdf ( )가 자동으로 생성 됩니다.

Windows 시스템을 사용하는 경우 * nix 시스템에서 작동합니다. 먼저 설치 python3하고 pdftk바로 사용 booky.py변환 할 REPO에 파일 bkmrks.txtpdftk호환되는 형식

python3 booky.py < bkmrks.txt > output.txt

그런 다음 export 명령을 사용하여 덤프 된 데이터 파일을 생성하십시오. 해당 파일에서 이전 책갈피를 제거하고 output.txt대신 간단한 복사 붙여 넣기를 사용하여 내용을 삽입하십시오 . 그런 다음 해당 데이터를 다시 가져 오십시오.


4

책갈피가있는 문서 버전이 있고이를 복사하려는 경우 훨씬 간단한 방법은 PDF-XChange Viewer를 사용하는 것입니다 (v2.5.211 사용). 책갈피가있는 PDF (소스 PDF)를 열고 책갈피 창에서 모든 책갈피를 선택하고 Ctrl + C를 사용하여 복사 한 다음 책갈피가없는 PDF (대상 PDF)를 열고 붙여 넣기 (Ctrl) 해당 PDF의 북마크 창에 + V)를 입력합니다. PDF-Xchange Viewer는 소스 PDF의 책갈피 속성 (책갈피 텍스트의 굵은 체 / 이탤릭체 포함)을 유지합니다. 어떤 이유로 문서의 수정으로 인해 대상 PDF의 일부 섹션이 더 낮거나 높으면 수정이 필요한 책갈피를 클릭하고 책갈피를 열 페이지의 위치로 스크롤하십시오. 북마크를 다시 클릭하고 "대상 설정"을 클릭하십시오. 문제가되는 책갈피에 필요한 경우이 마지막 부분을 반복하십시오. 완료되면 대상 PDF를 저장하십시오.

이것은 나에게 효과적이었고 매우 직관적이었고 몇 분 안에 완료되었습니다. 필자의 특정한 시나리오에서, 동료는 Mac 용 Word를 사용하여 책갈피가없는 매우 긴 문서를 제작했습니다. 문서의 길이 때문에 문서의 개요에 해당하는 책갈피를 원했습니다. Windows 용 Word에서 책갈피가있는 PDF로 문서를 저장할 수는 있지만 Windows 용 Word와 Mac 용 Word의 일부 서식 차이로 인해 페이지 수가 상당히 줄어 듭니다 (특히 바닥 글 주위의 공백과 차이가 있음) 그림과 캡션 사이의 간격). Windows 용 Word에서 페이지 매김을 올바르게하기 위해 머리글과 바닥 글 및 그림 크기를 가지고 놀 수 있었고 책갈피가있는 PDF에 저장되었습니다. 운수 나쁘게,


1
PDF-Xchange의 경우 +1 도구가 적을수록
Ooker

1

PDF 파일 사양은 Adobe에서 무료로 다운로드 할 수있는 PDF로 제공됩니다. 그러나 대부분의 PDF 파일에는 압축 가능한 데이터가 가장 많이 있습니다. 아마도 한 번에 한 번에 기본적으로 일반 텍스트 버전의 PDF가 있었을 것이므로 지금도 여전히 유효하지만 실제로 해당 형식의 파일을 얻는 것이 문제가 될 수 있습니다.

나는 그것을하지 않았지만, (당신이 기꺼이 지불하려는 경우) 가능성은 Acrobat Pro를 구입하고 해당 응용 프로그램에 내장 된 Javascript 스크립팅 기능을 사용하는 것입니다. 시작하려면 ...

http://acrobatusers.com/tutorials/2008/10/auto_bookmark_creation

이 자습서에서는 Acrobat 7.0 Pro (Creative Suite CS2에 포함 된 버전)에서 Javascript를 사용하여 책갈피를 자동으로 만드는 방법을 보여줍니다. 조금 오래되었지만 최신 기술에서도 동일한 기술이 적용됩니다.

Adobe 응용 프로그램에는 Javascript를 사용하여 텍스트 파일을 읽거나 쓰는 라이브러리 (Javascript에는 표준이없는 것)가 포함되어 있으므로 스크립트를 강력하게 만들기 위해 자체 가져 오기 / 내보내기 스크립트를 작성할 수 있습니다.


감사! Linux 버전의 Acrobat Pro가 있습니까?
Tim

미안합니다. 의심합니다. AFAIK는 Mac 또는 Windows로, Adobe는 수많은 창의적인 전문가가 (1) 해당 플랫폼을 사용하기 시작하지 않고 (2) FOSS를 사용하지 않고 독점 소프트웨어에 많은 비용을 지불 할 의사가 있음을 보여주지 않는 한 Linux를 지원하지 않습니다. 대안. 있을 것 같지 않습니다. 무료 솔루션의 경우 blog.rubypdf.com/2007/12/12/…(Ruby 용) 와 같은 라이브러리를 사용해보십시오 . 나는 이것에 대해 더 적게 알고 있습니다. 방금 Google에서 찾았습니다.
Steve314

1

책갈피를 내보내려면 Microsoft OneNote를 사용해야하는 다른 접근 방식을 따릅니다.

북마크 구조가 표시된 상태에서 PDF 리더 (무료 Foxit 무료 버전 사용)를 연 다음 OneNote에서 스냅 샷을 찍고 Foxit 북마크 구조를 선택합니다.

OneNote로 돌아가서 "이미지에서 텍스트 복사" 옵션 (스냅 샷 이미지를 마우스 오른쪽 단추로 클릭 한 후 나타나는 메뉴에서)을 선택하고 측면에 붙여 넣어 들여 쓰기를 수정합니다 (일반적으로 글 머리 기호 포함).


1

HandyOutline. 한 번의 클릭으로 한 번의 클릭으로 완료됩니다. https://sourceforge.net/projects/handyoutlinerfo/ . 비어 있는. 하위 북마크를 들여 씁니다. PDF 리더 / 편집기가 필요하지 않습니다. 또한 모든 세부 정보를 편집하고 텍스트로 내보내거나 (매크로 작성하여 매크로를 작성하여 완전한 기능을 갖춘 단어 문서로 정리) XML을 다시 페이지에 추가하고 PDF로 가져옵니다. Dev는 기부금을받을 자격이 있습니다.

PDF-Xchange 편집기 (PDFViewer로 교체 됨) 텍스트에 무작위로 복제되거나 누락 된 책갈피

JPDF가 필요합니다. 내 보낸 형식 가비지, 이름 만 가져 오기 위해 깨끗하지 못했습니다.

PDFtk는 지침을 보면서 두통을 줬습니다.

:-)


이것은 더 특이한 형식 대신 XML로 내보내는 것을 좋아합니다. 내보내기를위한 드래그 앤 드롭 인터페이스도 더 간단 할 수 없었습니다. 한 번에 여러 번 할 수 있기를 바랍니다.
Evan Donovan

0

PDF의 모든 책갈피를 다른 곳에서 사용하기 위해 텍스트로 복사하는 다른 "멍청한"해결책을 찾았습니다. Acrobat Pro (Mac OS 용)에서는 모든 책갈피를 선택하여 워드 프로세서에 복사 / 붙여 넣기 할 수 없습니다. 그러나 "한 개의 단일 HTML 페이지 + 책갈피를 기반으로 탐색 프레임 추가"옵션을 사용하여 전체 PDF를 HTML 파일로 내보낼 수 있습니다. 그런 다음 브라우저에서 HTML을 열고 탐색 프레임에서 모든 텍스트를 선택한 다음 워드 프로세서로 복사 / 붙여 넣기하십시오 ...


0

PDF에서 텍스트 파일로 모든 책갈피를 읽으려면 다음과 함께이 명령을 사용할 수 있습니다 pdftk.

pdftk input.pdf dump_data output output.txt

그런 다음 메모장 ++에서 정규식을 사용하여 추가 부품을 제거했습니다. 다음은 빈 문자열로 (순서대로) 대체 한 다음 북마크 목록으로 끝났습니다 (텍스트 편집기에서 정규 표현식을 사용하여 바꾸는 것을 잊지 마십시오).

BookmarkLevel.*
BookmarkPageNumber.*
BookmarkBegin.*
\n\s+\n

숫자를 제거하려면 다음 표현식을 바꾸십시오.

BookmarkTitle: A8.\d.\d+\s
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.