Jak skopiować tekst z pliku PDF bez utraty formatowania?

41

Kiedy kopiuję tekst z pliku PDF do edytora tekstowego, zostaje on zniekształcony na różne sposoby. Formatowanie, takie jak pogrubienie i kursywa, zostanie utracone; miękkie linie podziału w akapicie tekstu są konwertowane na twarde linie; myślniki przerywające słowo w dwóch wierszach są zachowywane, nawet jeśli nie powinny; a pojedyncze i podwójne cudzysłowy są zastępowane przez? znaki

Idealnie, chciałbym móc kopiować tekst z pliku PDF i przekonwertować formatowanie na kody HTML, „inteligentne cytaty” przekonwertować na „i”, a podział wierszy zrobić poprawnie. Czy jest na to jakiś sposób?

Colen
źródło
2
Word 2013 może otwierać pliki PDF. Nie idealny. Ale wykonalne
pratnala
Może być powiązany: superuser.com/a/455278/13787
Steven R. Loomis

Odpowiedzi:

54

Po pierwsze, musisz zrozumieć, co to jest plik PDF. Pliki PDF zostały zaprojektowane tak, aby naśladować wydrukowaną stronę i zostały zaprojektowane wyłącznie jako format wyjściowy, a nie format wejściowy. PDF to w zasadzie mapa zawierająca dokładną lokalizację znaków (pojedyncze litery lub znaki interpunkcyjne itp.) lub obrazów. W większości przypadków plik PDF nie przechowuje nawet informacji o tym, gdzie kończy się jedno słowo, a zaczyna inne, a tym bardziej takie rzeczy, jak miękkie łamanie vs. twarde łamanie końców akapitów.

(Kilka najnowszych plików PDF zawiera pewne informacje na temat tych rzeczy, ale jest to nowa technologia i możesz mieć szczęście znaleźć takie pliki PDF. Nawet jeśli tak, przeglądarka plików PDF może o tym nie wiedzieć.)

W każdym razie, od twojego oprogramowania zależy wdrożenie „sztucznej inteligencji”, aby wyodrębnić z lokalizacji poszczególnych znaków to, co jest słowem, co jest akapitem i tak dalej. Inne oprogramowanie zrobi to lepiej niż inne, a także będzie zależeć od tego, jak utworzono plik PDF. W każdym razie nigdy nie należy oczekiwać doskonałych rezultatów. Posiadanie wyjściowego pliku PDF to nie to samo, co dokument źródłowy. O wiele lepiej spróbować to uzyskać, jeśli możesz.

Standardowym rozwiązaniem twojego problemu jest użycie Adobe Acrobat Professional (drogi, nie darmowy czytnik) do konwersji pliku PDF na HTML. Nawet to nie zapewni doskonałych rezultatów.

Istnieje bezpłatne oprogramowanie, którego można użyć do wyodrębnienia tekstu z plików PDF z nienaruszonym formatowaniem, ale ponownie nie oczekuj doskonałych rezultatów. Zobacz np. Kaliber (który można przekonwertować do formatu RTF), pdftohtml / pdfreflow lub edytor tekstu AbiWord (z włączonymi wszystkimi wtyczkami importu / eksportu). Dostępna jest również wtyczka do importu plików PDF dla OpenOffice.

Ale proszę nie oczekiwać perfekcji z żadnym z tych wyników. Idziesz tutaj pod prąd. PDF po prostu nie ma być edytowalnym formatem wejściowym.

frabjous
źródło
2
informacja zwrotna 5 lat później: bez dużych ulepszeń: musiałem przekonwertować go na HTML (używając acrobat x), a następnie wstawić każdy wiersz do tabeli MSword. (Zapisywanie słów, Excela lub txta po prostu wszystko pomieszało, kopiowanie przeszłości z chrome też w ogóle nie działało). Wciąż czekam na (bardzo) inteligentne oprogramowanie.
JinSnow,
kliknij prawym przyciskiem myszy tabelę, wybierając opcję „kopiuj z formatowaniem”, z wyżej wymienionymi limitami
JinSnow,
1
Ponieważ jest to zaakceptowana odpowiedź, sugeruję, abyś wspomniał także o (nowszej) opcji, którą pratnala napisał w swoim komentarzu - otwórz plik pdf bezpośrednio z programu Word 2013. Na niektórych plikach PDF wypróbowałem, że dał lepsze wyniki niż wszystkie powyższe oprogramowanie.
BornToCode
8

Inną opcją jest pobranie i rozpoczęcie korzystania z bezpłatnej przeglądarki plików PDF, Foxit (jest dobra). Następnie możesz „Zapisz jako” i wybrać .txt, aby przekonwertować go na plik tekstowy. To pozwoli zachować całe formatowanie. Nie wiem, czy możesz zrobić to samo w programie Adobe, ponieważ przestałem go używać jakiś czas temu, kiedy przekonwertowałem na Foxit.

Chris
źródło
„Zapisz jako ... tekst” działało dla mnie z kilkoma darmowymi przeglądarkami pdf.
Jeff
Używam Foxit i właśnie go wypróbowałem, nie powiedziałbym, że zachował formatowanie. I wszystko, czego chciałem, to przyzwoite zakończenia linii i każdy akapit jako akapit.
pgr
Za pomocą txt stracisz wszystkie formaty: czcionki, pogrubienie, kursywa, kolory i oczywiście bardziej zaawansowane opcje
skan
Foxit Reader działał dla mnie świetnie
Michael Tranchida
5

Istnieje bardzo dobre narzędzie online o nazwie Sej-da . Zajmuje się Advanced Manipulation PDF. Nie ma oprogramowania do pobrania. Ponieważ jest to nowe narzędzie online, obecnie jest jeszcze w fazie beta. Umożliwia wyodrębnianie tekstu z pliku PDF, a także zapewnia mnóstwo innych funkcji PDF

http://www.sejda.com/

Krótki przegląd funkcji sejdy dokonany 14 listopada 2012 r. Przez wersję 3, można znaleźć tutaj:

http://revision3.com/tzdaily/sejda-online-pdf

Szymon, Szymek
źródło
1
One mogłyby nadal pobrać narzędzie wiersza poleceń: sejda.org/download (I nie sądzę, że umożliwia wyodrębnianie tekstu z formatowaniem?)
Arjan
Już poleciłem Sejda powyżej Arjan
Simon
1
Co? Miałem tylko na myśli: mówisz, że to narzędzie online, ale można również pobrać to samo. Patrząc dalej: nie sądzę, by zachowało formatowanie, tak jak o to poproszono?
Arjan,
Wiem, że zażądano zachowania formatu, ale dopóki nie spróbujesz, nigdy się nie dowiesz.
Simon
Jest to bezpłatne narzędzie z bogactwem funkcji, które nie jest nawet poza wersją beta - nie ma nic do stracenia, ale spróbuj. Z czasem jego zestaw funkcji zostanie prawdopodobnie rozszerzony, ale na razie nie mogę narzekać.
Simon
5

Otwórz plik PDF w przeglądarce (Google Chrome i Firefox są testowane), a następnie skopiuj tam swój tekst.

harsini
źródło
Niestety nie działało to dla mnie w przeglądarce Firefox.
Reb
blisko. FF zachował co najmniej rozmiary czcionek. Chrome zawiódł nieszczęśliwie, nawet nie podawał wierszy.
nd34567s32e
Począwszy od października 2019 r. Otwarcie pliku PDF w Chrome i skopiowanie / wklejenie do edytora tekstu przynajmniej zachowuje koniec wiersza (ale niestety, nie ma żadnych wiodących białych znaków na liniach).
DocOc
4

Możesz do tego użyć Adobe Acrobat Pro.

W przypadku tabel: w programie Acrobat 9/10 dostępna była funkcja wyboru tabel. W programie Acrobat X możesz po prostu kliknąć Zapisz jako> Arkusz kalkulacyjny> Excel. Łączy nawet strony w jeden długi arkusz kalkulacyjny. Niesamowita funkcja.

W przypadku tekstu: Istnieje podobna funkcja eksportowania do MS Word. Zapisz jako> Słowo> Dokument Word.

Źródła:

użytkownik156787
źródło
0

Foxit będzie przełączał się między wyświetlaniem oryginalnego pliku jako zwykłego pliku PDF lub jako tekstu, naciskając Ctrl + 6 (przy odrobinie majstrowania przy poziomie powiększenia w trybie tekstowym nie ma zbyt dużego przeskakiwania między czytaniem a kopiowaniem)

Stoatly
źródło
0

Znalazłem to bardzo przydatne ( Usuń łamanie linii ):

Oto przydatna sztuczka, aby szybko rozwiązać ten problem bez konieczności ręcznego usuwania wszystkich podziałów linii. Zasadniczo wszystko, co robi, to automatycznie zastępuje wszystkie niechciane podziały wiersza pojedynczą spacją, dzięki czemu cały tekst jest łączony w jeden akapit:

1- skopiuj żądany tekst z pliku PDF.

2-wklej do nowego dokumentu Word.

3- kliknij „edytuj”, a następnie „zamień”

4 - upewnij się, że jesteś w polu „znajdź co”

5- kliknij „więcej” niż „specjalne”

6- wybierz „znak akapitu” (na górze listy)

7- kliknij pole „zamień na”

8 - naciśnij raz spację

9 - kliknij „zamień wszystko”

10 - kliknij „ok”, a następnie zamknij pole „znajdź i zamień”.

świetlik
źródło
-1

Możesz skopiować z Adobe Reader do MS Excel i sformatować (tabelę) tak, jak chcesz, a następnie skopiować i wkleić z Excela. To rozwiązanie działa świetnie. Nie musisz kupować drogiej profesjonalnej kopii Adobe.

Murali Sastry
źródło
Pytanie omawia tekst. Czy uważasz, że byłoby to dobre ogólne rozwiązanie dla tekstu, w tym konwersja formatowania na kody HTML?
fixer1234
-1

Próbowałem zapisać tekst i format pliku pdf zorganizowanego w tabeli. W programie Acrobat Professional zdałem sobie sprawę, że istnieje opcja „Zapisz jako”, która umożliwia zapisywanie jako dokument programu Excel. To działało dobrze dla moich potrzeb. Zauważyłem również, że istnieje również opcja dokumentu Zapisz jako słowo. Jednak tego nie próbowałem.

Douglas Thompson
źródło
2
To powiela odpowiedź user156787.
fixer1234