Html to PDF álom
Igen, nem kis csapás egyszerűen és weben könnyen szerkeszthető formátumban tartanunk dokumentumainkat, és azokat PDF formában alakítani. A leírásban megkísérlek néhány egyszerűbb és bonyolultabb módszert bemutatni.
Néhány korábbi kapcsolodó írás:
- PDFtoImage
- DOC, RTF, PDF, ETC.. szöveges formátumba történő alakítása
- Dokumentumok indexelése Linuxon és Windowson
Bár a PDF dokumentumot is lehet szerkeszteni (PDF edit), de most vonatkoztassunk el az asztali alkalmazások világától, a leírás főleg webes felületről használható eszközöket kíván bemutatni. Ahol némi Php és HTML, CSS esetleg XML ismerettel varázsolunk egy korrekt PDF állományt, ahol az alap sablon szerkeszthető marad.

Sablon elkészítése:
Létrehozunk egy HTML állományt, ahol jeleket és stílus bejegyzéseket helyezünk el {nev} {cim}. Az állományt PHP-ben beolvassuk (file_get_contents; file_put_contents), az adatokat felcuccoljuk, majd kimentjük. A sablon önállóan is megtekinthetőnek kell lennie (head,body,etc). A CSS inline módon, a HTML tag-ek re írjuk adjuk meg, használhatunk táblázatok is.
HTMLtoPDF API amit letölthetsz az oldalról:
A letöltések között találsz egy API-t, amit ebből alakítottam ki. Egyébiránt az eredeti kód, szerintem még Windows-on sem működött volna (mivel az az útvonalak nagyon így voltak megadva).
Az xhtmltopdf-et és FPDF-et használja arra, hogy egy megadott linken található html tartalomból pdf-et gyártson. Az eredeti nem így működött és sok minden nem is tetszett, így átalakítottam. A call_api.php fajl mutatja hogy kéne használni (saját felelőségedre).
Beállítások, fájlok:
api_html2pdf.php
- A fájl elején van néhány egszerű beállítás, ezeket lépjük meg a kommentezett részek segítenek. Szerverre másolva adjunk 0777 jogosultásot a tmp mappára.
- Ez egy egyszerű példafájl arra, hogy bírhatjuk működésre az API-t. Ezt nem kell feltölteni.
- Ez az API-val készült, csak test ne töltsd fel.
További lehetőségek PDF fajlok gyártására:
PDF gyártás lehetséges problémák:
- A legtöbb olyan eszköz ami kiszolgálná az igényeinket, az ISO-8859-2 karakterkészlet ékezetes elemeinél tutira megakad.
- Olyan rendszer közeli hívásokat kéne lebonyolítani amire jó ha nincs lehetőség weben.
- XHTML, CSS elemeknél leakad a mutatvány
- Túl lassú a szerver és kifutunk az időből (A böngésző vagy a szerver bontja)
- Bár az átalakítás megtörtént a kimenet csúnya
Az imageMagick mindenre kapható többek között a Html átalakítását Pdf-re, Ps-re de akár képformátumba is átalakítja. Ehhez a háttérben néhány (html2ps) formátumba át ping-pong-ozza az állományokat, de ez minket nem is zavarna annyira.
Ami gáz és zavaró:
- A Convert nagyon nem foglalkozik a sablonba beállított formázásokkal, a karakterek csúnyák és sokat kell vele vacakolni mire valahogy kinéz a doksink. Jellemzően átalakítás, ahogy esik úgy puffan módra, jobban járunk a txt fájl használatával.
- A legtöbb esetben Php System vagy exec függvény kell a használatához, ami jobb helyeken tiltva van, nem véletlenül.
- A legtöbb ócsó hoston nemhogy system és exec de az ImageMagick-ot sem telepítik, biztos nagyon sokba kerül feltelepíteni (1 perc 10 másodperc, szerverindítással együtt :-)
Megfigyelések a szerkeszthetőség figyelembevételével:
Mivel SVG formátumból is tud konvertálni ezért érdemes itt azt a formátumot használni, majd kimenetet csinálni jpg-re vagy png-re és ebből nyomni Pdf-et. Az eredménye valamivel jobb. Ha kapásból Pdf-et nyomunk SVG-ből akkor valahogy elbaltázza a méreteket, forgatásotokat. SVG fájlt létrehozhatunk Inkscape nevű vektorgrafikus ingyenes programmal; magát az SVG állományt akár Firefox-ban is megtekinthetjük.
- convert letter.svg tmpl.jpg
- convert tmpl.jpg letter.pdf
FOP
A FOP egy nagyon használható eszköz, feltéve ha tudjuk telepíteni és a leíró nyelvét (XSL-FO) elsajátítjuk (3 év 6 hónap). Az egyik legígéretesebb módszer a PDF és egyéb formátumokba való átalakításra mint PDF, PS, PCL, AFP, XML, RTF,... Gyakorlatilag ha van lehetőségünk a FOP felvarázsolására akkor itt a vége a toPDF problémának.
XHTML fájlok átalakításáról és konvertálásáról szóló JAVA cikk.
FPDF
Egy jóval egyszerűbb megközelítése a FPDF Lib használata. Az FPDF-re épül néhány használható XHTML to PDF koverter, amiknek a beüzemelése egyszerű.
Ezekből akár saját API-t is kialakíthatunk:
HtmltoPdf : http://radekhulan.cz/other/html2pdf.zip
HTML2PDF: http://sourceforge.net/projects/html2fpdf/
Ez utóbbi képes CSS-el formázott táblázatokat, kiválasztott, bejelölt Input elemeket méret arányosan megjeleníteni. Bár régi bútordarab és nagyon nem fejlesztik, de tüzet oltani nagyon jó, és játszva csinálhatunk belőle saját eszközt.
Ha megtekintjük a példában szereplőhtml oldalt és a kimenet PDF-változatát, láthatjuk mire is képes a html2pdf.
TCPDF:
A TCPDF legnagyobb előnye az, hogy nem halt ki alóla a fejlesztő csapat, a legújabb változat innen letölthető.
TCPDF alapú:
CSS formázott XHTML átalakításra alkalmas lib az XHTML2PDF, FPDF-re épül. Ígéretes és fejlesztik, a teszt is elárulja hogy a bétás PDF átalakító nem is rossz.
Xhtml2PDF Python alapokon:
XHTML2PDF Python alapokon. Ha szerverünk alkalmas Python scriptek futtatására illetve a fent említett rendszerközeli hívásokra alkalmas PHP fügvényeket el tudjuk érni, ez is egy hasznos konvertáló eszköz lehet. A weben felellhető Online átalakító eszközök egy része ezt használja. Egy példa arra miért is értemes Python tanulni, vagy használni.
LibHaru:
Újabb lehetőségünk egy PHP extension-ben a LibHaru-ban rejlik, amit megint nem tudom ki fog feltelepíteni, olcsó hostingra.

Projekt oldal: http://libharu.sourceforge.net/
Egy nagyszerű cikket, útmutatót a telepítésről és használatáról itt találunk. Használható cuccnak tűnik, és nagyon jó dokumentált.
Zend_Pdf:
A Zend_Pdf dokumentációt itt találjuk, nem rossz bár Én többet vártam tőle, személy szerint el sem kezdtem, mert elég mazó egy pl.: egy számla sablon létrehozása, és átalakítása.
Dokumentum formátumból PDF-re alakítás Asztali alkalmazásokkal:
Az itt felsorolt programok az Ubuntu repóban bent vannak, tehát telepítés előtt nézük meg a Synaptic-ban.
- OpenOffice Export
- OpenOffice PDFImport
- AbiWord Export
- PDF-ek összefűzése
- PDF edit
- PDFTK, PDFTK GUI Mindenre alkalmas amit PDF-el lehet követni.
- PDF Sam JAVA alapú PDF manipulációs eszköz, nagyon használható
Hasznos parancssoros eszközök a PDF témakörhöz, Ubuntu Linuxon:
pdf2svg:
- PDF formátumot átalakít SVG formátumba (Inkscape, Gimp, Firefox)
- képekből PDF - import, A PhoenixArt oldalon nagyszerű leírást találunk róla.
pdfedit:
- Pdf szerkesztés
- PDF-ek összefűzésére is használható
poppler-utils:
- PDF to PostScript converter, PDF-ből képeket szedhetünk ki vele, Pdf állományról infókat szolgáltat, PDF to HTML, PDF to text, PDF elemző progi
pdfcrack:
- PDF fájlok jelszavának törésére használható
pstoedit:
- PS és PDF fájlokat szerkeszthető vektoros formára hozza
htmldoc:
- HTML processor that generates indexed HTML, PS, and PDF
Online átalakító eszközök:
- http://www.pdfonfly.com/
Nagyon jó képet ad akár weboldalról is. - http://www.htmltopdf.co.uk/
- http://web2.pdfonline.com/
- http://www.pdfonline.com/pdf2word/index.asp
- http://pdftextonline.com/q/
- DOC2PDF: http://www.doc2pdf.net
- WebPage2PDF, és emailben kapod: http://www.pdfdownload.or
A tartalomhoz kapcsolódó linkek:
Cikkhez tartozó letöltés(ek):
api_xhtml2pdf.zip- Az API segítségével egy hivatkozáson lévő HTMl fájlt alakíthatunk PDF formátumba. A html fájl tartalmazhat CSS formázást és táblázatokat is. Az API képes megjeleníteni a bejelölt input mezőket is így a RADIO vagy CHECKBOX elemek állapotot is.
114939 Byte
application/zip
Bejegyzés küldése
xhtmltopdf
Nekem ezzel az xhtmltopdf-el van problémám. Régóta webprogramozok, de online pdf készítéssel még nem volt dolgom. Letöltöttem az állományokat, beállítottam mindent, de csak nem akar elmenteni nekem semmit a háttértárra!
Mit ronthattam el? A sablonos részt sem igazán értem. Hogy néz ki egy ilyen sablon? Anélkül nem működik?
Opendir:
---------------------
Valószínű hogy Windowson nyekteted, a progi az útvonalakra és az API kulcsra nagyon érzékeny. Ezeket ellenőrizd le, vannak követelmények PHP oldalon is de azok nem veszélyesek.
A sablon az igazából akkor kell, ha pl.: 'számlát' akarsz csinálni.
Annó mikor ezt kipróbáltam akkor egy Linuxos szerverre töltöttem fel az API-t és localhostról hívtam meg, egy olyan fájl URL-el amit elér a program. (de ezt a call_api.php-ben van).
Python xhtml2pdf
Ubuntura az sudo easy_install pisa utasítással telepíthető. Egyéb követelmények itt.
Rengeteg CMS és egyéb alkalmazás ezt használja a háttérben PDF gyártásra.
még egy html2pdf átalakító
Tufat / Html2ps Html2Pdf
Amikor pár éve konvertert kerestem, ez volt az egyetlen, ami megfelelően támogatta a CSS-t ÉS a magyar ékezeteket. Pure PHP-ban van írva, weben is ki lehet próbálni. Szerintem sok tekintetben veri az FPDF-et.
-------
Opendir:
Igen tényleg sok hiba van az oldalakon, ha van kedved kijavíthatod :-).
Köszi az ajánlást bár elvileg ez a link a kapcsolódó linkek között megtalálható.
További kapcsolódó oldalak
- jQuery Loader V2
- Mysql Ajax Table Editor
- Grafikon készítése egyszerűen
- NetBeans IDE használata FTP,SFTP-n keresztül
- Adminer alternatív PHPMyAdmin
- Web-design csere fájldalommentesen
- KFM webes fájlmenedzser
- Php Framework CodeIgniter alapok
- Videó letöltés és átalakítás PHP-vel
- Memcache használata
- NetBeans IDE gyorsbillentyűk
- Smarty Editor NetBeans Plugin
- PHP MYSQL Smarty Online CRUD generátor
- Webfejlesztési eszközök Linuxon
- NetBeans IDE 6.5 telepítése Ubuntura
- Aptana Stúdió telepítése Linuxra
- PHP forrás formázás
- JavaScript programozás PHP utasításokkal
- Ügyfélnyilvántartó demó
- Zend Framework és Doctrine
- Fájlok tárolása MySQL adatbázisban, PHP segítségével
- SQL Insert teszt
- Regexp Vagy Like, melyiket szeressem
- Webes kódtöredék kezelés Ubuntura WCS
- Website uptime monitoring
- PHP,Zenity,ImageMagick képmanipuláció Ubuntu Linuxon
- Smarty AJAX függvények
- Zenity GTK+ GUI PHP-vel
- Parancssoros képmanipuláció Linuxon
- PHP array, String CheatSheet
- Alapvető műveletek PHP és MySQL adatbázis kapcsolatához
- $Smarty puska 1.
- Virtuálhost létrehozása localhoston
- Dokumentumok konvertálása
- kód optimalizálás tömböknél
- Curl funkciók telepítése XAMPP webszerverre
- Barátságos URL átirányítás
- PHP MySQL cheatSheet
- Forrás összehasonlítás, eltérés felderítés
- PHP, SQLite CheatSheet
Blogmarkok
Simple Chat
Egyszerû szöveges fájl alapú PHP chat progi.
Showcase of Interesting Navigation Designs
Érdekes menü, navigáció megvalósítások.
Több mint 306 magyar Linkgyûjtemény
Érdekes gyûjtemény magyar katalógusokról, linkgyûjteményekrõl, cikk katalógusokról. PR érték és alkalmazás szerinti megjegyzéssel. Igényes munka és használható forrás, weblap népszerûsítéshez. Az egyik legjobb hazai publikus SEO lista.
AdMax SEO Toolbar
Firefox kiterjesztés SEO eszközként.
Identica PHP
Identi.ca mikroblog szolgáltatáshoz PHP class, egyszerû használattal.
Twitter OAuth PHP
PHP Oauth részletes leírás, avagy hogyan használhatod távolról a Twittert.
Lightweight PHP Picasa API Version 3.0
PHP osztály Picasa képgaléria elemeinek a kezelésére. RSS-bõl feldolgozza az albumokat és képeket.

Blogmark felhő
- Új, jquery, php, plugin, css, gfx, seo, tools, javascript, online, menu, tipp, ui, mysql, google, class, framework, lib, html, flash, gallery, firefox, pdf, js, ajax, web-design, speedup, form, codeigniter, template, oop, joomla, table, maps, linux, upload, security, book, color, cheatsheet, mvc, web, font, api, fejlesztes, gimp, zend framework, editor, php5, input, generator, slider, ubuntu, design, wordpress, lightbox, css3, effekt, free, sql, netbeans, test, snippet, leiras, zf, drupal, tanulas, twitter, python, tooltip, html5, newsletter, db, graph, open source, grafikon, wysiwyg, tarhely, jqueryui, cms, memcache, ide, smarty, photos, gyujtes, theme, browser, json, file, firebug, link, canvas, gyujtemeny, pattern, xhtml, scroll, xml, gui, tutorial, foto, rss, icons, player, image, code, grid, url, orm, gd, php oop, chrome, apache, ftp, regexp, extension, programozas, docs, website, video, kereso, basic
Top5 webes fájlmenedzser
A gyűjtésben szereplő elemek weben keresztül valósítanak meg fájlkezelést. A kiválasztásnál kiemelt szempont volt az egyszerű deszktop jellegű szoftverektől megszokott kényelem, a biztonság és a többfelhasználós beállítási lehetőség, egyszerű integrálhatóság és a felhasználhatósági (licenc) szempontok.
2009-5 kedvenc jQuery pluginje
2009-ben is vannak kedvenc jQuery plugin-jeim. Ezt szeretném veletek megosztani.
Úgy érzem kicsit változtam, a plugin választás a funkcionalitáson túl egy picit a parasztvakítás is bejátszik.
(Parasztvakítás (PW): olyan effektek aminek a gyakorlatban szinte semmi haszna nincs, de szemet gyönyörködtető)
Nem..
10 hasznos FireBug kiterjesztés
Hasznos FireBug képességeit kiterjesztő pluginek. Bár a FireBug önmagába is egy rendkívül jól használható Firefox kiterjesztés. De elérhető hozzá néhány nagyon profi kütyü, ami sokszor önálló funkciót valósít meg, de az esetek nagyobb részében a FirBug képességeit combosítják ki.
Ha még nem ismernéd a
50 Hasznos Firefox kiterjesztés Linuxra
Kedvenc Linuxon is működö Firefox kiterjesztések, mindennapos felhasználásra és webfejlesztőknek.
A addon-ok működnek Windows-os rendszereken is, de a cikk kifejezetten a Linuxra elérhető és hasznos Firefox kiterjesztésekből szemezget.
A Firefox 3.0 megjelenésekor már volt egy
350 hasznos Gimp effekt, Plugin, Script-Fu
Hasznos pluginek, Script-fu-k, effektekkel, technikai megoldások gyűjteménye Gimp 2.6.X verziójához.
A cikknek célja az, hogy egyszerű megoldást adjon Gimp-hez, pluginek beszerzésére.
Szerencsére vannak olyan önzetlen projektek ahol összegyűjtik számunkra ezeket a nélkülözhetetlen eszközöket. Így sikerült összehozni 5 bejegyzésben..
Szoftverek
ArtH2O Blog tartalmából:
PHP Twitter Codeigniter OAuth
2010 Augusztus végétől már csak OAuth-on keresztül lehet bejegyzéseket küldeni a Twitterre illetve a hitelesítés ezen keresztül megy. Sok megoldás létezik a dologra, de mindegyik eléggé nyakatekert és nem igazán akarnak működni.Érdemes elolvasnod a cikket, ha néhány óra kísérletezés meg szeretnél úszni!
10 hasznos új Codeigniter lib
Több okból is szeretem a Codeigniter keretrendszert. Az egyik oka, hogy ezt választottam keretrendszerül az nem más mint az egyszerűség. A másik az, hogy nem kell feltalálni a kereket, mert szinte minden tud, amire nekem egy alap alkalmazásnál szükségem lehet. Biztonságos, gyors és egyszerűen tanulható, jól dokumentált, szerethető rendszer. De a bejegyzés nem erről szól, hanem néhány 2010-es hasznos Codeigniter Lib-ről.
Stílusos űrlap elemek
Nem egy
szerű minden űrlap elemnek stílust adni. Gyakorlatilag checkbox, select, radio, file elemeknek nagyon nem is lehet, vagy csak részben. Erre találtak ki egy érdekes technikát, ami a működés közben az eredeti HTML elemet elfedi és azt egy grafikai elemmel helyettesíti. pl.: Egy checkbox, vagy radio esetében 2 állapota van bekapcsolt és kikapcsolt. Ha lehet kerüljük ezeket a technikákat, mert nagyon böngészőfüggő a működésük. Ha lehet maradjunk az eredeti űrlap elemeknél és azt csinosítsuk.
Térképes cég-és weblapkatalógus
Már régóta szerettem volna egy olyan oldalt, ami weblapkatalógusként működik, de kicsit másképpen közelíti meg a dolgokat, mint a jelenleg piacion lévő katalógusok. Egy ilyen újszerű kezdeményezésem volt a szintén Codeigniter alapú Twitt.hu, ami egyben linkrövidítő szolgáltatás is. De a sok jó tulajdonsága mellet, még mindig hiányoltam benne valamit. Ezt a plusz dolgot sikerült beleplántálnom a RegionalisBank.info cég-és weblapkatalógusba.
Kép átméretezés és cache
Van néhány hasznos Smarty plugin, ilyen a Thumb nevű bővítmény is. Nagyon sokáig nem fejlesztették, már azt gondoltam kihalt alóla a fejlesztés, de 2010-ben egy újabb változat jelent meg belőle. Smarty 2.6.X és PHP 5.X.Y verzióhoz.A bővítménnyel a sablonon tudunk képméreteket legyártani és gyorsítótárazni.


