Możesz pdftk
do tego użyć . Więcej informacji: Jak eksportować i importować zakładki PDF .
Eksportuj zakładki PDF w wierszu polecenia w następujący sposób:
pdftk C:\Users\Sid\Desktop\doc.pdf dump_data output C:\Users\Sid\Desktop\doc_data.txt
Zaimportuj zakładki PDF z pliku danych takiego jak ten:
pdftk C:\Users\Sid\Desktop\doc.pdf update_info C:\Users\Sid\Desktop\doc_data.txt output C:\Users\Sid\Desktop\updated.pdf
pdftk
Format zakładek jest trochę uciążliwy. Zamiast tego stworzyłem własny skrypt za pomocą bash
,sed
, pdftk
i python3
. Sprawdź to w tym repozytorium: https://github.com/SiddharthPant/booky
Teraz mogę utworzyć plik tekstowy (bkmrks.txt
), którego napisanie zajmuje tylko 5 minut, nawet dla 1000 stron pdf.
{
Title1, 1
Title2, 2
{
Subtitle1, 3
Subtitle2, 4
{
SubSubtitle1, 5
...
}
}
}
a następnie użyj mojego skryptu
./booky.sh pdf_file.pdf bkmrks.txt
to automatycznie tworzy plik pdf ( pdf_file_new.pdf
) z moimi zakładkami.
Działa to w systemach * nix, jeśli zamiast tego używasz komputera z systemem Windows. Następnie najpierw zainstaluj python3
i pdftk
po prostu użyj booky.py
pliku w repozytorium, aby przekonwertować bkmrks.txt
na pdftk
zgodny format
python3 booky.py < bkmrks.txt > output.txt
a następnie użyj polecenia eksportowania, aby wygenerować zrzut danych. Usuń poprzednie zakładki z tego pliku i wstaw treść output.txt
zamiast zwykłego wklejania. A następnie zaimportuj te dane z powrotem.
Specyfikacja plików PDF jest dostępna jako darmowy plik PDF do pobrania od Adobe - a przynajmniej był to ostatni raz, kiedy sprawdzałem. Jednak większość plików PDF zawiera najbardziej skompresowane dane. Pewnego razu istniała wersja PDF w postaci zwykłego tekstu, a jeśli tak, to nadal będzie aktualna, ale uzyskanie pliku w takiej formie może stanowić problem.
Chociaż tego nie zrobiłem, jedną z bardzo prawdopodobnych możliwości (jeśli jesteś gotów zapłacić) jest zakup Acrobat Pro i wykorzystanie wbudowanych w tę aplikację skryptów JavaScript. Na początek ...
http://acrobatusers.com/tutorials/2008/10/auto_bookmark_creation
W tym samouczku pokazano, jak automatycznie tworzyć zakładki przy użyciu Javascript w programie Acrobat 7.0 Pro (wersja dołączona do pakietu Creative Suite CS2). Chociaż robi się to trochę starsze, ta sama technika powinna działać dobrze w przypadku nowszych wersji.
Aplikacje Adobe zawierają bibliotekę do odczytu / zapisu plików tekstowych za pomocą Javascript (coś, czego Javascript nie ma w standardzie), więc można pisać własne skrypty importu / eksportu, choć nie jest to trywialne, aby uczynić je odpornymi.
źródło
Aby wyeksportować zakładki, stosuję inne podejście, które wymaga użycia Microsoft OneNote:
Otwieram czytnik PDF (korzystam z darmowej wersji Foxit) z widoczną strukturą zakładek, a następnie w OneNote proszę o zrobienie migawki i wybranie struktury zakładek Foxit.
Wracając do OneNote, wybieram opcję „Kopiuj tekst z obrazu” (w menu, które pojawia się po kliknięciu obrazu migawki prawym przyciskiem myszy) i wklejam go z boku, aby poprawić wcięcie (zwykle za pomocą punktorów).
źródło
HandyOutline. 1 przeciągnięcie, 1 kliknięcie, gotowe. https://sourceforge.net/projects/handyoutlinerfo/ . Wolny. Wcięcia podokładki. Nie wymaga żadnego czytnika / edytora plików PDF. Edytuj także, eksportuj wszystkie szczegóły do tekstu (skopiuj do słowa, napisz makro, aby uporządkować w pełni funkcjonalny dokument tekstowy) lub XML, powtórz, importuj do PDF. Dev zasługuje na darowizny.
PDF-Xchange Editor (zastąpiony PDFViewer) losowo powielone / brakujące zakładki eksportowane do tekstu
JPDF wymagał Java, wyeksportował śmieci formatowania, nie mógł go wyczyścić, aby uzyskać tylko nazwy
PDFtk sprawił mi ból głowy, patrząc na instrukcje
:-)
źródło
Znalazłem inne dość „głupie” rozwiązanie, aby skopiować wszystkie zakładki do pliku PDF jako tekst do użycia w innym miejscu. W programie Acrobat Pro (dla systemu Mac OS) nie ma możliwości zaznaczenia wszystkich zakładek i skopiowania / wklejenia ich w edytorze tekstu. Możesz jednak wyeksportować cały plik PDF jako plik HTML z opcją „jedna strona HTML + dodaj ramkę nawigacji na podstawie zakładek”. Następnie otwórz HTML w przeglądarce, zaznacz cały tekst w ramce nawigacji i skopiuj / wklej go do edytora tekstu ...
źródło
Aby odczytać wszystkie zakładki z pliku PDF do pliku tekstowego, możesz użyć tego polecenia za pomocą
pdftk
:Następnie użyłem wyrażenia regularnego w Notepad ++, aby usunąć dodatkowe części. Następujące zastąpiłem pustym ciągiem (w kolejności), a następnie skończyłem z listą zakładek (nie zapomnij zastąpić wyrażeniem regularnym w edytorze tekstu):
Jeśli chcesz usunąć liczby, zamień to wyrażenie:
źródło