Pdf körlevél mivel?

Van egy adott pdf-em, amiben két adatot (név és szám) egy adatbázis alapján ki kellene cserélnem.

Emlékeim szerint a convert tudott pdf-et generálni, de nem tudom, ez megfelelő eszköz lenne-e egy adat cseréléséhez, vagy van erre valami speci tool? Netán text editorral megoldható?

Szívemnek tetsző valami linux parancssori eszköz lenne.

Tudtok ajánlani ilyet, netán valaki csinált már hasonlót?

Hozzászólások

Szerkesztve: 2020. 10. 09., p – 12:54

Emlékeim szerint a pdftk tud pdf formot kitölteni, de az nem DBből dolgozik, hanem kell neki az fdf adatforrás. Meg persze pdf form kell hozzá - ezt mondjuk meg lehet csinálni linuxon is. Hogy db-ből hogy lehet fdf-eket generálni, ezt nem tudom, de ha az megvan, akkor egy scripttel simán meg lehet oldani, hogy a pdftk betolja az adatokat a formba és generáljon belőle kitöltött kimenetet.

Olyat is lehet, hogy két pdf-et rak egymásra, ezt a stapler is tudja pl. De ez esetben meg a csak az adatokat tartalmazó pdf-eket kell legenerálni vhogy.

Szerk: Itt egy egész ügyes megoldás: http://joewiz.org/2014/02/13/filling-pdf-forms-with-pdftk-xfdf-and-xque…

sima word körlevél, egyesít, mentés pdf, pdfsam szétvág, excelben megírod az mv-ket hogy 1.pdf -> szám1.pdf 2.pdf....
 

A pdf nem szerkesztésre való formátum. Ha annyira kell, generáld inkább újra, kérjétek el az alapul szolgáló forrásdokumentumot, és a CMYK színprofilt, amiből a pdf-et csinálták, és ezek alapján generáljatok sajátot.

Windows 95/98: 32 bit extension and a graphical shell for a 16 bit patch to an 8 bit operating system originally coded for a 4 bit microprocessor, written by a 2 bit company that can't stand 1 bit of competition.”

Ez így ebben a formában nem igaz. A pdfnek ezerféle alváltozata van, a kifejezetten nyomdai kimenet többnyire nem könnyíti meg a szerkesztési lehetőségeket, ez tény. De nem lehetetlen azt sem szerkeszteni. Persze ha raszterezve tartalmazza a szöveget, vagy körvonallá alakítva akkor nem szerencsés hozzá nyúlni, de ha szövegként akkor annyira nem vészes.
Csak szemléltetésként az illustrator meg már nagyon rég óta pdf alapú formátumba mentett, amit a kiterjesztés átírásával többnyire simán meg lehetett nyitni egy pdf nézegetővel is. Más kérdés, hogy a szerkesztési extra adatokat saját kiterjesztésben tárolta le, amit persze más nem feltétlen értett. (A múlt időt azért írom, mert nem tudom, hogy most mibe dolgozik, 3-4 éve nem használtam.)

Nem, pdf-nek nincs változata. Verziói vannak, de a pdf az pdf. Nyomdai formátumnak lett kitalálva, ami minden kijelzőn, gépen, képernyőn azonosan jelenik meg, nyomdahelyes. Erre való, hogy mindenféle szerkesztés UTÁN legyen egy olyan végformátum, amit tovább nem szerkesztenek, hanem már csak nyomtatnak, megjelenítenek. Nem körlevelet példányosítani, nem formanyomtatványt kitölteni. Épp úgy, ahogy az Excel nem való adatbázisok kezelésére, úgy a pdf sem való szerkesztésre, körlevélre, meg a Word se arra való, hogy 300-600 DPI-s jpeg képek formájában tároljad benne a szöveget.

Igen, lehet a pdf-en szerkeszteni ennek ellenére utólag, több program is tudja, de mindig szuboptimális lesz az eredmény, szétcseszi az egységes, nyomdahelyes megjelenítést, tönkreteszi azt az erőfeszítést, amire ki lett találva az egész. Mert a pdf nem azért lett kitalálva, hogy a Wordön kívül ki legyen még egy n+1. formátum, ami után az Adobe tud egy kis extra pénzt beszedni, hanem speciális céllal.

Pdf-et olyan utólag szerkeszteni, mintha kinyomtatnál nyomtatóval egy doksit, és utána írógéppel vagy tollal példányosítanád, meg hibajavítóznád. Lényegében a pdf egy nyomtatós leírónyelv, mint a PLC, PS, de hasonló *TeX-ben a DVI is. Lényegében mikor egy pdf-et hozol létre, akkor egy kinyomtatási folyamatnak veted alá a forrásdokumentumot, az ne tévesszen meg, hogy fájlba nyomtatódik, az attól még ugyanolyan nyomtatás, mintha jpeg fáflba, vagy mintha fénymásolópapírra vagy wc papírra nyomtatnád. Nyomtatott formátumot meg nem csesztetünk utólag, ha szükséges módosítás, akkor azt a forrásdokumentumon ejtjük meg, amit újra kinyomtatunk. Ezzel vitatkozhattok órákig, igen, az Illustrator is tudja szerkeszteni, meg az Adobe Acrobat (nem, nem a Readerről beszélek), de ettől még nem erre való, ez egy utólagos kényelmi funkció, utánagondolás, gányolás, ami azért van, hogy ha a neten belefut valaki egy papírra nyomtatásra szánt pdf formanyomtatványba, akkor ne csak kézzel tudja kitölteni, és el kell kezdjen nekiállni tollal meg tintába mártogatós lúdtollal kapargatni rá, hanem lesz egy szoftveres megoldás, amit gépesíteni tud, kényelmesen, a gépnél ülve. De nem arra való, hogy pdf-et normálisan szerkesztési formátumnak használjatok. És nem azért, mert én nem engedem meg, vagy nem helyeslem, hanem így az egész célja fog meghiúsulni, amire kitalálták. Ha tudjátok, hogy szerkeszteni kell még a doksit, akkor tároljátok szerkesztési formátumban.

Windows 95/98: 32 bit extension and a graphical shell for a 16 bit patch to an 8 bit operating system originally coded for a 4 bit microprocessor, written by a 2 bit company that can't stand 1 bit of competition.”

 Nyomdai formátumnak lett kitalálva, ami minden kijelzőn, gépen, képernyőn azonosan jelenik meg, nyomdahelyes.

Ez nem igaz . Pl. egy Firefoxban megnyitott PDF nem mindig hasonlít egy Acrobat Readerben megnyitotthoz. Azonos PDF -fájlról van szó. Tapasztalat. A grafikusunk agybajt kap, hogy nála az Acrobat -ban (PDF Szerkesztő progi) nem azt látja mint aki egy sima webböngészőben nézi (a megrendelő, akinek elküldte e-mailben az FTP-fájl linket és csak rákattint a linkre).

A hozzászólásod többi részével egytértek ..

Én ebbe még nem futottam bele. Olyanba viszont igen, hogy pl. régen Linuxon az Acrobat Reader jobban kezelte a grafikus élsimítást, élesebbek voltak a betűélek benne, mint az akkori opensource megoldások. De ez néhány év után változott, ma már nem látok különbséget ebben a tekintetben sem az egyes megoldások között.

Az is igaz, hogy a pdf-et nem böngészőben kell nézni, az megint szükségmegoldás. A böngészőmodul csak arra való, hogy bele lehessen nézni a doksiba, ha valakinek nincs jogosultsága, lehetősége, nete rendes pdf reader telepíteni. Természetesen nyomtatásban már úgy fog kinézni, úgy kell kinézzen, mint Acrobat Readerben. Én Zathurát használok Linuxon (de használtam előtte Evince-t, Okular-t, Acrobat Readert), Windows alatt meg a SumatraPDF-et tettem fel mindig (előtte Foxit Reader, azelőtt Acrobat Reader).

Amiben szerintem az Acrobat Reader jobb, hogy extra funkciókat jobban kezel, kommentálás, nyomtatványkitöltés, titkosítás kezelése, címek, fejezetek kezelése, stb.. De alap pdf megjelenésügyileg és nyomtatásügyileg eddig nálam minden progival rendben volt. Ez is az egész pdf-nek a lényege.

Ami még ezt a grafikusi agybajt okozhatja, az a betűtípus, ha nincs beágyazva legalább a használt karakterek készlete a dokumentumban, akkor a pdf-néző fallbackelhet valami hasonló rendszerfontra, ami a doksi megjelenését befolyásolhatja negatív irányban. A másik, az a pdf verziója, lehet valami nagyon modern verziós pdf, amit egy régebbi verziók kezelésére fekészített reader modul nem kezel le jól. Ilyenkor megoldás lehet, hogy a dokumentumot még valami régebbi pdf verzióban menteni, 1.4 vagy 1.5, és esetleg ha van extension level, azt is lejjebb venni. Nem biztosan segít, de egy próbát megérhet.

Windows 95/98: 32 bit extension and a graphical shell for a 16 bit patch to an 8 bit operating system originally coded for a 4 bit microprocessor, written by a 2 bit company that can't stand 1 bit of competition.”

Lehet írni olyan .pdf olvasót, ami nem úgy jeleníti meg a pdf file tartalmát, ahogy az elvárt, de attól még 100 %-ban igaz amit Raynes írt.
A pdf egy oldalleíró formátum, elsősorban profi nyomdák, grafikusok, kiadványszerkesztők számára. Deklarált céljai közé tartozik a tartalom egységes megjelenítése, eszköztől függetlenül. Természetesen ez régebben sem teljesült maradéktalanul. Mert hát, egy hercules monitoron ugyanazt a képet kapni mint CGA-n, vagy EGA-n, hát, az nem egy habkönnyű feladat. 

Hát hívhatod verziónak a pdf A-t meg a pdf X1-et, nekem mindegy, én ezeket változatoknak ismerem/hívom. De az hogy nyomdai formátumnak lett kitalálva, az hülyeség. Lásd pl. webre optimalizált pdf (optimised for streaming), video és animáció támogatás, de felület megjelenítésre is használták mac-en korábban, most nem tudom, hogy van-e ilyen a háttérben. Támogat a pdf 1.4-től asszem átlátszóságot - ezt a nyomdák nem szokták megemészteni sok helyen. Az inkább helyes, hogy végterméknek szánták, de ez sem teljesen igaz. Az sem, hogy azonosan jelenik meg mindenhol - ez erősen függ attól, hogy mi és hogyan kerül bele (amellett, hogy az OS fontrenderingjétől is erősen függ). Ttf vagy otf fontok pl beágyazhatóak, de ez nem kötelező, és ha jól emlékszem csak pdf 1.4 és afelett támogatott csak, így hiányzó font esetén nem azt látod, vagy nem is látod amit kéne.
Az majdnem igaz, hogy az adobe readerével ugyanúgy néz ki mindenhol (ahol van reader), illetve mára azért vannak jó rendererek linuxra is, amik elég jól hozzák a szintet, legalábbis egy doc-hoz képest...

Ha meg nem nyomdai pdf-et küldesz nyomdába, az minden lesz, csak nyomdahelyes nem, pedig szabványos, szabályos pdf... a preflight (vagy még előtte a szakember) villámgyorsan visszadobja, vagy fizetheted az elkefélt nyomatokat.

Pdf-et olyan utólag szerkeszteni, mintha kinyomtatnál nyomtatóval egy doksit, és utána írógéppel vagy tollal példányosítanád, meg hibajavítóznád.

Elég sok kifejezetten nyomdai pdf-et szerkesztettem már, ismerni kell a lehetőségeket, és ennek nincs akadálya. Pontosan ugyanazokra kell figyelni, mint nyomdai kimenet 0-ról előállításánál, eredetileg. Meg tudni kell, hogy mit és hogyan használj hozzá. De ha nem értesz hozzá, akkor pont olyan, mint ahogy leírtad az idézetben. A nyomdai előkészítés egy fél szakma, nem elég elolvasni hozzá a pdf wikipedia oldalát.

... Netán text editorral megoldható?...

Talán... Elméletileg a LibreOffice-ban szerkeszthetők a PDF dokumentumok, meg lehet próbálni, hogy a tieddel működik-e.

(Kalapácsom van, mindent szögnek nézzek?)

Tartalmat megcsinálod .html-ben, a név és szám helyére raksz egy template tag-et (pl. {{nev}}, {{szam}}), ezt utána egy egyszerű script-el beolvastatod (.sh, .php, .py, .js, ...), beírod a nevet és számot tetszőleges forrásból (pl. egy .csv fájlba is lerakhatod az adatokat, beolvasod onnan, nem kell SQL adatbázis, ha nem sok adatod van, és nem sűrűn kell), majd tetszőleges html-to-pdf generátorral létrehozod a .pdf fájlokat. Pl. .php-ben ez ilyen 1 óra alatti feladat (ha kész a .html), mpdf-el a generálás elég egyszerűen megoldható. De ugyan így a .php script lehet parancssori használatú is, nem tudom mennyire akarod bővíteni később, milyen mennyiséget akarsz vele generálni, akarod-e több különböző .html-el használni, stb.. Én biztos nem keresnék erre programot, ha van bármelyik script nyelven egy kis tudásod. (Vannak parancssorból elérhető html-to-pdf generátorok is, ha esetleg nem találnál mondjuk az adott programnyelvhez .pdf generátort.)

(Fontos, hogy a .html fájlt már úgy kell megírnod, hogy tudd, mit tud a html-to-pdf generátorod, pl. display:inline-block asszem még mindig nincs az mpdf-ben, ez tud korlátozni, vagy legalább is úgy kell tervezni a .html-t, hogy ezt már tudod. De mivel ezek mind ingyenes eszközök, van lehetőséged kipróbálni.)

Ha nem válaszolnék kommentben, hát küldj privátot!

Itt: 

https://askubuntu.com/questions/803850/find-and-replace-with-on-pdf-fil…

van egy ilyen komment: 

pdftk input.pdf output uncompressed.pdf uncompress
sed -i 's/foo/bar/g' uncompressed.pdf
# uncompressed.pdf now has all the changes
pdftk uncompressed.pdf output changed.pdf compress

Ugy tunik mintha erre gondoltal volna? 

Nyilvan az eredeti "master" PDF-ben a kicserelendo adatot egyertelmuen jelold meg. 

Peldaul #egyikadat# #masikadat# es akkor a sed parancsnal cat uncompressed.pdf | sed s/"#egyikadat#"/"DB-bol jott kimenet"/g > peldany_neve_uncompressed.pdf modszerrel cserelheto lesz. 

Pl. benne van a probléma leírásában. "Van egy adott pdf-em, amiben két adatot (név és szám) egy adatbázis alapján ki kellene cserélnem".

Lehet hogy félreértem, de olyan megoldás kéne, ami "Jó Pál" és "Tengelengi Boldizsár" nevére is működik. (Azt bele se mertem keverni, hogy mi van akkor, amikor az egyes karakterek egyedileg vannak pozicionálva.)

Persze HA olyan a pdf, hogy a név és szám után nincs semmi, akkor csak abban kell reménykedni, hogy az adott név nem lóg ki a margóból.

'van "master" pdf amiben az eredeti adatra lehe regexet irni'

Szerintem a mutatvány - mint arra Fisher is utalt - itt bukik meg. Nagy valószínűséggel semmilyen, értelmesen illeszthető mintát nem fogsz benne találni. Kipróbáltam a pdftk-s módszeredet egy LibreOffice-ban sima szövegből (Lorem ipsum) előállított pdf-fel. Az uncompressed változatban sem volt semmi felismerhető karaktersorozat az eredetiből.

----------
Were antimatter present, its detection would be quite simple and straightforward. The most rudimentary detector suffices: simply place it down and wait. If the detector disappears, antimatter has been discovered - get out fast!

Akkor a tanulság az, hogy van, amikor működik, és van amikor nem. Tippem továbbra is az, hogy az utóbbi a többség.

----------
Were antimatter present, its detection would be quite simple and straightforward. The most rudimentary detector suffices: simply place it down and wait. If the detector disappears, antimatter has been discovered - get out fast!

Ezek valamiféle oklevelek/plakettek/hirdetmények lesznek. Még nem kaptam meg a mintadarab PDF-et, de fotót már kaptam róla. :) Egy darab fektetett oldal, pár sor szöveg, és illusztrációs grafika.

A név helye egyelőre egy teljesen üres sor.

A szám pedig "XXX XXX XXX Forint" formában látható rajta szintén önálló sorban.

Annyit tudok még róla, hogy valóban CMYK.

Ha megkapom, a pdftk-val meg fogom próbálom, de addig nincsenek pontosabb információim.

Ha a név helye egy teljesen üres sor, akkor csak akkor van esélyed, ha tudod ennek a koordinátáit.

Tennék egy próbát pdftk watermark-kal. A vízjeleket generálnám bármiből (szeretem a LaTeX-et és én abban csinálnám, de Inkscape is jó lehet) paraméterezhetően pdf-ben és azt vasalnám rá az eredeti pdf-re.

Ez csak akkor működik, ha a helyettesítendő szövegek helye üresen van hagyva és fix pozícióban van, ahol a leghosszabb behelyettesítésnek is van hely.

En anno ugy csinaltam hogy word korlevellel megcsinaltam a megszemelyesitest bepozicionalva az ures lapra a neveket meg ami kell es a master pdf-t hatterkent raktam ha jol emlekszem pdftk-val

azota megoregedtem es atkuldom az adatbazist a grafikusoknok mivel 1 percnel nem tobb melo nekik edig sehol nem szamoltak fel erte polusz dijat.

G.

mgb

mi ugy csinaltuk anno, hogy a doski rtf formatumban volt lementve, %FOO% amit cserelni kellett benne. aztan a Ted nevu programmal ps/pdf lett belole. de mar nem resze az ubuntunak/debiannak. de megfelel helyette barmelyik rtf -> ps konverter is.

A vegtelen ciklus is vegeter egyszer, csak kelloen eros hardver kell hozza!

Szerkesztve: 2020. 12. 09., sze – 15:06

A datatool csomagot javasolnám latex fordítóval. Nekem körlevélhez is bejött.

van egy csv file,tele adatokkal, ebből generáljaakimenetet.

https://tex.stackexchange.com/questions/42554/datatool-with-longtable

Sajnos rég körleveleztem, nincsenek meg már a scriptjeim, de ebből indultam ki.

10-féle lény van:
-- aki ismeri a bináris számrendszert,
-- és amelyik nem.