Fórum Root.cz

Hlavní témata => Software => Téma založeno: beer 15. 12. 2014, 13:40:03

Název: Odstranění duplicitních listů z PDF
Přispěvatel: beer 15. 12. 2014, 13:40:03
Ahoj, řeším situaci, kdy jsem si stáhnul pdf soubor, který obsahuje duplicitní listy a rád bych je ze souboru odebral.

Konkrétně se jedná o soubor http://theses.cz/id/jyxdys/Katalog.pdf

Zdá se mi, že se tam některé listy opakují (jsou naprosto shodné s předchozími). Vzhledem k velikosti souboru se mi nepodařilo ručně odstranit z kopie, kterou jsem si stáhnul, duplicity. Napadlo mne, že by se dalo rozdělit na jednotlivé listy a listy, které mají shodné md5sum, odstranit, respektive zachovat jen první výskyt a znovu spojit? Je něco takového reálné, pomohl by mi někdo se skriptem? Tento konkrétní soubor se mi hodí totiž pro genealogické bádání, nechci tu práci autorky kopírovat, jen chci mít přehled v datech.
Název: Re:odstranění duplicitních listů z pdf
Přispěvatel: Patrik Chrz 15. 12. 2014, 14:01:58
Nerozumím "Vzhledem k velikosti souboru se mi nepodařilo ručně odstranit z kopie". Jak jsi je odstraňoval? My v práci používáme PDFsam (teda pro Windows, ale existuje i pro Linux) a tam dám prostě "visual reorder" a vymažu stránky, které nechci.

Pokud by program odmítl s tak velkým souborem pracovat (nevím, zatím jsem na takový problém nenarazil, ale zase běžně pracuji se soubory o maximálně desítkách stránek), tak bych zkusil tisk vybraných stránek na virtuální tiskárnu
Název: Re:odstranění duplicitních listů z pdf
Přispěvatel: beer 15. 12. 2014, 14:16:01
Nerozumím "Vzhledem k velikosti souboru se mi nepodařilo ručně odstranit z kopie". Jak jsi je odstraňoval? My v práci používáme PDFsam (teda pro Windows, ale existuje i pro Linux) a tam dám prostě "visual reorder" a vymažu stránky, které nechci.

Pokud by program odmítl s tak velkým souborem pracovat (nevím, zatím jsem na takový problém nenarazil, ale zase běžně pracuji se soubory o maximálně desítkách stránek), tak bych zkusil tisk vybraných stránek na virtuální tiskárnu

Odstraňoval jsem prostřednictvím PDF Mod a nebo PDF-Shuffler. Dokument má přes 800 stránek, v obou aplikacích to zamrzá, reaguje pomalu, padá. Zkoušel jsem i LibreOffice, tam je to naprosto nepoužitelné. Vzhledem k velkému rozsahu není prakticky možné ručně odebrat všechny duplicitní listy, aniž by člověk neudělal nějakou chybu. Nejlepší by bylo kontaktovat autorku a poprosit jí o zdrojovou databázi, ale bohužel na ní nemám kontakt, psal jsem jí na mail, který mi poslal garant práce a ten mail se mi vrátil zpět jako nedoručitelný.

Asi zkusím všechny listy nějak vyexportovat a pustit na to nějaký program nebo script, co jsou uvedeny zde:
http://askubuntu.com/questions/3865/how-to-find-and-delete-duplicate-files

A pak to znovu zabalit. Nebo máte nějaký lepší nápad?
Název: Re:odstranění duplicitních listů z pdf
Přispěvatel: hawran diskuse 15. 12. 2014, 14:48:41
...
Dokument má přes 800 stránek, v obou aplikacích to zamrzá, reaguje pomalu, padá. ...

800 stránek v pdf dokumentu?
To je na vraždu (autora).
K čemu to je dobré, takové zhovadilost?
Pokud se nepletu, tak pdf má natvrdo formátování stránek, takže se to nedá na něčem menším než monitor ani pořádně číst.
Já bych tydlety péefka zakázala ...
Název: Re:odstranění duplicitních listů z pdf
Přispěvatel: panika 15. 12. 2014, 15:01:20
PDFsam umi prave i rozdelit na jednotlivy listy, pak si to promazes nejakym skriptem a nasledne PDFsam spojis.
Název: Re:odstranění duplicitních listů z pdf
Přispěvatel: gamer 15. 12. 2014, 15:06:58
Mohlo by fungovat:
pdf2ps - převést na postscript
pstops - vyextrahovat jednotlivé stránky a smazat duplicitní (snad to půjde nějak rozumně poznat)
psmerge - dát to dohromady (případně psselect na původním postscript souboru)
ps2pdf - vyrobit z toho znovu pdf
Název: Re:odstranění duplicitních listů z pdf
Přispěvatel: beer 15. 12. 2014, 15:08:43
Je to příloha magisterské práce, zřejmě výstup z databáze v MS Acces odeslaný na virtuální tiskárnu. Ano, je to prasárna, já to nedělal, já se v tom jen chci vyznat :), protože jsou tam geneaologicky cenné informace. Myslím, že PDFsam mne nespasí, rozdělení na jednotlivé soubory umí i ty programy, co jsem již otestoval, funkcionalita v tomto bude asi shodná.

Mohlo by fungovat:
pdf2ps - převést na postscript
pstops - vyextrahovat jednotlivé stránky a smazat duplicitní (snad to půjde nějak rozumně poznat)
psmerge - dát to dohromady (případně psselect na původním postscript souboru)
ps2pdf - vyrobit z toho znovu pdf

Mrknu na to.
Název: Re:odstranění duplicitních listů z pdf
Přispěvatel: Logik 15. 12. 2014, 15:37:15
Pokud umíš rozdělení na jednotlivý listy, tak co Ti brání to rozdělit,
vyhledat duplicitní soubory a znovu složit?

Pokud jsou v stránkách drobný odlišnosti, pak nasaď imagick a vyřaď ty skoro podobný....
http://www.imagemagick.org/Usage/compare/
Název: Re:odstranění duplicitních listů z pdf
Přispěvatel: Filip 15. 12. 2014, 15:39:35
pdftk

https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&cad=rja&uact=8&ved=0CB8QFjAA&url=https%3A%2F%2Fwww.pdflabs.com%2Ftools%2Fpdftk-the-pdf-toolkit%2F&ei=lPKOVPb4PJHcasaSgvAH&usg=AFQjCNGim4v79evG-1lnTBN_mCtU1PZW3w&bvm=bv.81828268,d.d2s
Název: Re:odstranění duplicitních listů z pdf
Přispěvatel: Shrek 15. 12. 2014, 20:59:04
A čo tak skúsiť "pdftotext", potom je z toho textový súbor, ktorý ma 43101 riadkov. To by nemal byť problém spracovať pomocou makra v (MS Excel, LibreOffice Calc), a keď neviem ako, tak aj ručne.  ;)
Název: Re:odstranění duplicitních listů z pdf
Přispěvatel: nOname 16. 12. 2014, 16:41:43
pdftk

https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&cad=rja&uact=8&ved=0CB8QFjAA&url=https%3A%2F%2Fwww.pdflabs.com%2Ftools%2Fpdftk-the-pdf-toolkit%2F&ei=lPKOVPb4PJHcasaSgvAH&usg=AFQjCNGim4v79evG-1lnTBN_mCtU1PZW3w&bvm=bv.81828268,d.d2s

Proč si nepoužil:
https://www.pdflabs.com/tools/pdftk-the-pdf-toolkit/
Název: Re:Odstranění duplicitních listů z PDF
Přispěvatel: beer 18. 12. 2014, 02:14:17
Díky za nápady, naštěstí toto už řešit nemusím. Podařilo se mi kontaktovat autorku a poskytla mi databázový soubor accdb. Bohužel mi v LO nefunguje, tak si ho překonvertuji v práci do nějakého staršího formátu a pak to překonvertuji doma do odg. S databází se mi bude pracovat lépe, nežli s PDF.
Název: Re:odstranění duplicitních listů z pdf
Přispěvatel: pet 18. 12. 2014, 08:03:12
Mohlo by fungovat:
pdf2ps - převést na postscript
pstops - vyextrahovat jednotlivé stránky a smazat duplicitní (snad to půjde nějak rozumně poznat)
psmerge - dát to dohromady (případně psselect na původním postscript souboru)
ps2pdf - vyrobit z toho znovu pdf
Jednodušeji:
# pdfseparate - vyextrahovat jednotlivé stránky a smazat duplicitní (snad to půjde nějak rozumně poznat)
# pdfunite - dát to dohromady
Název: Re:odstranění duplicitních listů z pdf
Přispěvatel: beer 18. 12. 2014, 09:39:28
Mohlo by fungovat:
pdf2ps - převést na postscript
pstops - vyextrahovat jednotlivé stránky a smazat duplicitní (snad to půjde nějak rozumně poznat)
psmerge - dát to dohromady (případně psselect na původním postscript souboru)
ps2pdf - vyrobit z toho znovu pdf
Jednodušeji:
# pdfseparate - vyextrahovat jednotlivé stránky a smazat duplicitní (snad to půjde nějak rozumně poznat)
# pdfunite - dát to dohromady

Díky, mrknu na to, kdyby databáze nefungovala.
Název: Re:odstranění duplicitních listů z pdf
Přispěvatel: Filip 18. 12. 2014, 10:40:11
pdftk

https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&cad=rja&uact=8&ved=0CB8QFjAA&url=https%3A%2F%2Fwww.pdflabs.com%2Ftools%2Fpdftk-the-pdf-toolkit%2F&ei=lPKOVPb4PJHcasaSgvAH&usg=AFQjCNGim4v79evG-1lnTBN_mCtU1PZW3w&bvm=bv.81828268,d.d2s

Proč si nepoužil:
https://www.pdflabs.com/tools/pdftk-the-pdf-toolkit/

To jsem presne chtel. Bohuzel google k tomu pridava ten svuj nesmysl a ja si toho nevsiml.

Jinak pdftk ma i ruzne Gui. Napriklad guipdftk na windows http://www.paehl.de/pdf/gui_pdftk.html (http://www.paehl.de/pdf/gui_pdftk.html) a PDF Chain na linuxu. Oboje aktivne pouzivam zejmena na zaheslovani/odkodovani pdf souboru.
Parkrat jsem to pouzil i na vyriznuti stanek z vetsiho pdf souboru. Kdyz se kouknete do napovedy, tak pdftk umi vsechno a snad i vestit budoucnost  :-)