Czy ktoś ma jakieś zalecenia lub procedury naprawy uszkodzonego pliku PDF? Po otwarciu pliku pojawia się komunikat „Wystąpił błąd podczas otwierania tego dokumentu. Plik jest uszkodzony i nie można go naprawić”. Wydaje się, że istnieje niezliczona ilość narzędzi, ale nie można tego nazwać godną zaufania. Czy są jakieś rozwiązania oparte na systemie Linux typu open source?
pdf
repair
ghostscript
Tim Alexander
źródło
źródło
Odpowiedzi:
Ghostscript naprawi uszkodzony plik PDF automatycznie ... jeśli będzie mógł go otworzyć w pierwszej kolejności (to znaczy, jeśli nie zostanie uszkodzony nie do naprawienia). Ale potem nadal musisz dokładnie sprawdzić wynik ...
W systemie Linux wypróbuj to polecenie:
W systemie Windows spróbuj tego:
źródło
Miałem uszkodzony plik PDF
print.pdf
, którego Ghostscript nie mógł otworzyć, ale zwykłe graficzne przeglądarki plików PDF dla systemu Linux (Okular, Evince) otworzyły się dobrze. (W moim przypadku plik miał śmieci na początku zamiast nagłówka PDF po otwarciu w edytorze szesnastkowym).Te przeglądarki plików PDF używają Popplera jako mechanizmu renderującego pliki PDF. Możesz więc naprawić plik PDF za pomocą narzędzi wiersza polecenia Popplera. W Ubuntu są one w
poppler-utils
pakiecie. Użyłem:który wygenerował plik PDF z poprawnymi nagłówkami, które narzędzia takie jak Ghostscript są teraz akceptowane.
źródło
mutool
( Strona projektu , podręcznika ) będzie naprawić złamane plików PDF bez konieczności ich drukowania .sudo apt-get install mupdf-tools
mutool clean input.pdf output.pdf
Alternatywnie istnieje kilka narzędzi i struktur, które mogą rozkładać / dekompilować pliki PDF na ich komponenty bez ich renderowania. Mogą one być przydatne do wyodrębniania tekstu, skryptów i obrazów. Zobacz tę odpowiedź, aby uzyskać listę takich narzędzi: https://reverseengineering.stackexchange.com/q/1526/8210 . Np. Możesz wypróbować aktualną odpowiedź Origami , ma przeglądarkę opartą na GTK.
źródło
mutool clean
nie naprawia wszystkich możliwych błędów. Mam plik z różnymi błędami w strumieniach czcionek i zawartości, a mutool zachowa te błędy.Miałem uszkodzony plik pdf, ponieważ plik php użyty do pobrania go powtórzył niektóre błędy (w HTML) i znaki NUL na końcu.
Rozwiązaniem było otwarcie pliku pdf za pomocą Notepad ++ i usunięcie całego tekstu po wierszu
źródło
%%EOF
. Usunąłem wszystko po pierwszym%%EOF
użyciu edytora szesnastkowego. Teraz wszystko działa dobrze.