Hur kan jag kopiera text från en PDF samtidigt som formatering behålls?
PDF, det allestädes närvarande dokumentformatet, är bra för att dela dokument samtidigt som du behåller teckensnitt, bilder och den allmänna layouten över plattformar. Finns det emellertid ett enkelt sätt att bevara den mycket formateringen när man kopierar och klistrar text ut ur dokumentet?
Dagens Question & Answer-session kommer till oss med tillstånd av SuperUser-en indelning av Stack Exchange, en community-driven gruppering av Q & A-webbplatser.
Frågan
SuperUser-läsare Colen söker efter ett sätt att extrahera text från PDF-filer samtidigt som formateringen bevaras:
När jag kopierar text ur en PDF-fil och till en textredigerare, hamnar det på många olika sätt. Formatering som fet och kursiv förloras; Mjuka radbrytningar inom ett stycke text konverteras till rader med hård linje. bindestrecken för att bryta ett ord över två linjer bevaras även när de inte borde vara; och enkla och dubbla citat ersätts med? tecken.
Helst skulle jag vilja kunna kopiera text från en PDF-fil och ha formatering konverterad till HTML-koder, "smarta citat" konverterade till "och" och radbrytningar gjordes korrekt. Finns det något sätt att göra detta??
Finns det ett snabbt och enkelt sätt för Colen (och resten av oss) att få tag i text utan att offra formateringen?
Svaret
SuperUser-bidragsgivaren Frabjous erbjuder en lösning kombinerad med en stor dos försiktighet:
För det första måste du förstå vad en PDF är. PDF-filer är utformade för att efterlikna en tryckt sida, och de är endast utformade som ett utdataformat, inte ett inmatningsformat. en PDF är i grund och botten en karta som innehåller den exakta platsen för tecken (enskilda bokstäver eller skiljetecken etc.) eller bilder. I de flesta fall lagrar en PDF inte ens information om var ett ord slutar och en annan börjar, mycket mindre saker som mjuka raster vs. hårda raster för styckeändringar.
(Några senaste PDF-filer lagrar lite information om dessa saker, men det är en ny teknik, och du skulle ha tur att hitta PDF-filer på samma sätt. Även om du gjorde det kanske inte PDF-tittaren vet om det.)
Hur som helst, det är upp till din programvara att genomföra någon form av "artificiell intelligens" för att bara hämta ut från platser av enskilda tecken, vad är ett ord, vad är ett stycke och så vidare. Olika program kommer att göra det bättre än andra, och det kommer också att bero på hur PDF-filen skapades. I alla fall borde du aldrig förvänta dig perfekta resultat. Att ha utdataprofilen är inte densamma som att ha källdokumentet. Mycket bättre att försöka få det om du kan.
Standardlösningen för din typ av problem är att använda Adobe Acrobat Professional (den dyra, inte den fria läsaren) för att konvertera PDF till HTML. Även det kommer inte att få perfekta resultat.
Det finns fri programvara som kan användas för att extrahera text från PDF-filer med lite formatering, men återigen, förvänta dig inte perfekta resultat. Se till exempel kaliber (som kan konvertera till RTF-format), pdftohtml / pdfreflow eller AbiWord-ordbehandlaren (med alla import / export plugins aktiverade). Det finns också ett PDF-plugin för OpenOffice.
Men vänligen vänta inte på perfektion med något av dessa resultat. Du går mot korgen här. PDF är inte menat som ett redigerbart inmatningsformat.
Om du har problem med att bestämma vilket verktyg som ska börja med, är Caliber ett verkligt dokument Swiss Army knife. Du kan också använda den för att konvertera PDF-filer för användning på din e-bokläsare och organisera din ebook / dokumentbibliotek.
Har du något att lägga till förklaringen? Ljud av i kommentarerna. Vill du läsa mer svar från andra tech-savvy Stack Exchange-användare? Kolla in hela diskussionsgängan här.