Odstranění duplicitních listů z PDF

beer

  • *****
  • 729
    • Zobrazit profil
Odstranění duplicitních listů z PDF
« kdy: 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.
« Poslední změna: 15. 12. 2014, 21:22:49 od Petr Krčmář »


Re:odstranění duplicitních listů z pdf
« Odpověď #1 kdy: 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

beer

  • *****
  • 729
    • Zobrazit profil
Re:odstranění duplicitních listů z pdf
« Odpověď #2 kdy: 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?

Re:odstranění duplicitních listů z pdf
« Odpověď #3 kdy: 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 ...

panika

Re:odstranění duplicitních listů z pdf
« Odpověď #4 kdy: 15. 12. 2014, 15:01:20 »
PDFsam umi prave i rozdelit na jednotlivy listy, pak si to promazes nejakym skriptem a nasledne PDFsam spojis.


gamer

Re:odstranění duplicitních listů z pdf
« Odpověď #5 kdy: 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

beer

  • *****
  • 729
    • Zobrazit profil
Re:odstranění duplicitních listů z pdf
« Odpověď #6 kdy: 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.

Logik

  • *****
  • 1 022
    • Zobrazit profil
    • E-mail
Re:odstranění duplicitních listů z pdf
« Odpověď #7 kdy: 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/


Shrek

Re:odstranění duplicitních listů z pdf
« Odpověď #9 kdy: 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.  ;)


beer

  • *****
  • 729
    • Zobrazit profil
Re:Odstranění duplicitních listů z PDF
« Odpověď #11 kdy: 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.

pet

Re:odstranění duplicitních listů z pdf
« Odpověď #12 kdy: 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

beer

  • *****
  • 729
    • Zobrazit profil
Re:odstranění duplicitních listů z pdf
« Odpověď #13 kdy: 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.

Filip

Re:odstranění duplicitních listů z pdf
« Odpověď #14 kdy: 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 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  :-)