Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Generisanje dokumenta za stamapnje na strogo definisanom obrascu

[es] :: PHP :: Generisanje dokumenta za stamapnje na strogo definisanom obrascu

[ Pregleda: 3739 | Odgovora: 13 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

boky84
Novi sad

Član broj: 125284
Poruke: 18
91.233.24.*



Profil

icon Generisanje dokumenta za stamapnje na strogo definisanom obrascu23.10.2013. u 14:37 - pre 127 meseci
Postovani,

imam PHP web aplikaciju pomocu koje skladistim podatke koji se koriste za stampanje na odredjenim obrascima. Podatke cuvam u MySQL bazi podataka i model baze je modelovan tako da jednim slozenijim upitom mogu da dobavim sve ono sto treba da stampam na jednom obrascu.

Ono sto mi pravi problem jeste stroga struktura obrasca jer to su vec gotovi dokumenti na kojima ja samo treba da ispisem odredjene podatke, tj. na tacno odredjenim pozicijama dokumenta treba da se nadje tacno odredjen podatak.

Npr. kao kada bih programski hteo da stampam sadrzaj opste uplatnice. Na uplatnici se zna tacno koliko je koje polje veliko i samo u njega treba da se upise npr. broj ziro racuna.

Ono sto otezava posao jeste cinjenica da su obrasci takvog tipa da mi je cesto neophodna preciznost na nivou milimetra.

Ono sto sam ja pokusao da implementiram jeste da izgenerisem word dokument i da njega stampam. Medjutim, problem nastaje sa marginama i cesto imam situaciju da stringovi nisu na svom mestu i budu pomereni gore/dole ili levo/desno. Ne mogu nikako da implementiram resenje koje ce generisati .doc ili .docx ciji sadrzaj ce biti na tacno odredjenim pozicijama. Bitno mi je da bude bas .doc ili .docx, a ne neki drugi format (PDF i sl.).

Pokusao sam da koristim neke gotove biblioteke (PHPWord itd.) ali nisam uspeo sa njima da ostvarim zeljeni efekat. Takodje, pokusao sam da dinamicki generisem html kod, pa da njega export-ujem u .docx i onda njega da stampam. Medjutim, ni to nije imalo efekta jer neka podesavanja koja sam postavio u html-u (paddings, margine, div-ovi) se ne zadrze uvek u .docx-u.

Da li neko ima ideju kako bih mogao da resim problem? Znaci, ne treba mi gotovo resenje nego samo smernica koju tehniku da iskoristim za resavanje problema ovog tipa.

Unapred hvala.
 
Odgovor na temu

ivan.a
PHP developer

Član broj: 83976
Poruke: 403
*.dynamic.isp.telekom.rs.



+44 Profil

icon Re: Generisanje dokumenta za stamapnje na strogo definisanom obrascu23.10.2013. u 18:02 - pre 127 meseci
Možeš li da obrazac koristiš kao pozadinu (možda kao pozadinsku sliku), a dodavanje vrednosti i teksta uz pomoć html, css, javascript.
Na primer:
https://github.com/jonathantneal/html5-invoice
Test:
http://www.jonathantneal.com/examples/invoice/

Ovo je možda bitno za print. U css-u se koristi:
-webkit-print-color-adjust
@page - normalizovanje margina

Code:
@page { margin: 0; }

I hope I didn't brain my damage - Homer
if (wife.position == kitchen) {return sandwich};
 
Odgovor na temu

dusans
Stojanov Dušan
Pančevo

Član broj: 9551
Poruke: 1343
*.dynamic.sbb.rs.



+311 Profil

icon Re: Generisanje dokumenta za stamapnje na strogo definisanom obrascu23.10.2013. u 18:36 - pre 127 meseci
Zašto ne bi probao obrnutim pristupom, umesto da generišeš ceo Docx iz koda/html-a,
napraviš u Word-u valjan obrazac i postaviš sve u milimetar - tabele za layout ili
šta god treba da bi dobio valjan rezultat, tj. dokument koji se ne raspada.
U samom dokumentu, umesto podataka staviš npr. [*BrojRacuna*], [*Adresa*], itd...

Onda uzmeš takav Docx i otpakuješ ga - videćeš da se sastoji od hrpe xml-ova. Document.xml fajl sadrži tvoj dokument.
U kodu, učitaš ovaj fajl i uradiš replace [*BrojRacuna*] sa stvarnim podatkom (xml ecoded!), [*Adresa*] sa stvarnom adresom (xml ecoded!), itd...
U kodu, zip-uješ novi Document.xml zajedno sa ostalim fajlovima u neki novi Docx i to je to.

Ovo pije vode za jednostave stvari, gde je uglavnom sve fiksirano i nema puno dinamike.
Pogledaj da li ti odgovara i Word-ov xml format umesto docx-a, tu je onda još prostije, nema zip-ovanja, sve je u jednom fajlu.

Pozdrav!
 
Odgovor na temu

djordjevic_i
Ivan Djordjevic
Tf Cacak
Cacak

Član broj: 212093
Poruke: 176
*.dynamic.isp.telekom.rs.

Sajt: www.codeart.in.rs


+2 Profil

icon Re: Generisanje dokumenta za stamapnje na strogo definisanom obrascu23.10.2013. u 20:38 - pre 127 meseci
Mislim da ti je najbezbolnije da koristis neku gotovu biblioteku, tipa:
http://phpword.codeplex.com/

Ivan Djordjevic
 
Odgovor na temu

agvozden
Aleksandar Gvozden
founder
Info-G
Beograd

Član broj: 37813
Poruke: 1123
*.dynamic.sbb.rs.

Sajt: www.gvozden.info


+68 Profil

icon Re: Generisanje dokumenta za stamapnje na strogo definisanom obrascu24.10.2013. u 09:12 - pre 127 meseci
ja bih to radio sa pdf-om.

postoje klase koje mogu da uvuku postojeci pdf(templejt) da u njega ubacis potrebne podatke i eksportujes drugi pdf.

 
Odgovor na temu

valjan
Janko Valencik
Software Deployer
Schneider Electric
Novi Sad

Član broj: 158605
Poruke: 3531
*.static.sbb.rs.



+553 Profil

icon Re: Generisanje dokumenta za stamapnje na strogo definisanom obrascu24.10.2013. u 09:40 - pre 127 meseci
Ako je neko stara škola web dizajna, onda je Excel mnogo prikladniji za "prelom", a razlog su tabele - jeste da su razvojem CSS-a postale omražene, ali je nekad samo uz pomoć tabela mogao da se pravilno odradi raspored elemenata na stranici. A koji softver je bolji za igrarije sa tabelama od Excela - mogu se vrlo precizno postaviti dimenzije ćelija i njihov položaj na papiru, a kao što reče @dusans, savremene verzije Office aplikacija generišu XML dokumente, tako da se sve to na kraju može nafilovati podacima iz PHP-a...
 
Odgovor na temu

dsivic

Član broj: 188446
Poruke: 105



+2 Profil

icon Re: Generisanje dokumenta za stamapnje na strogo definisanom obrascu24.10.2013. u 16:53 - pre 127 meseci
najbolje je TCPDF, sa Multicell() možeš sve da pozicioniraš gdje želiš, ja sam printao samoljepljive deklaracije raznih dimenzija, sve u milimetar...
 
Odgovor na temu

peromalosutra
Ivan Rajkovic
Software engineer
Luxoft
Berlin

Član broj: 54774
Poruke: 871
*.teol.net.



+148 Profil

icon Re: Generisanje dokumenta za stamapnje na strogo definisanom obrascu24.10.2013. u 18:44 - pre 127 meseci
Jos jedan glas za PDF. Sa TCPDF bibliotekom mozes da odaberes milimetre za jedinicu i onda sve radis sa milimetarskom preciznoscu, bas kako ti i treba.

 
Odgovor na temu

boky84
Novi sad

Član broj: 125284
Poruke: 18
91.233.24.*



Profil

icon Re: Generisanje dokumenta za stamapnje na strogo definisanom obrascu25.10.2013. u 09:21 - pre 127 meseci
Analizirao sam svaki od izlozenih resenja i opredelio sam se za TCPDF jer ima dobre mogucnosti za veoam suptilna podesavanja. Jeste da mi vise odgovra .doc ili .docx zato sto bi u tom slucaju korisnik rucno mogao nesto da ispravim u dokumentu ukoliko nije dobar neki podatak. Ali s druge strane, posto je .pdf u pitanju, onemugucavam korisnika da bilo sta menja u dokumentu, sto i nije tako lose.

Hvala svima na odgovorima i predlozima, veoma mnogo ste pomogli. :)
 
Odgovor na temu

dsivic

Član broj: 188446
Poruke: 105



+2 Profil

icon Re: Generisanje dokumenta za stamapnje na strogo definisanom obrascu25.10.2013. u 10:04 - pre 127 meseci
mora se napomenuti da i sam printer igra veliku ulogu, neki "jako" povlače papir i napravi problem.

[Ovu poruku je menjao dsivic dana 25.10.2013. u 17:13 GMT+1]
 
Odgovor na temu

boky84
Novi sad

Član broj: 125284
Poruke: 18
91.233.24.*



Profil

icon Re: Generisanje dokumenta za stamapnje na strogo definisanom obrascu25.10.2013. u 10:24 - pre 127 meseci
Generalno, to je problem vec do stapmanja, a ne do same tehnike kako se generise dokument. Sva sreca, pa ovaj stampaca na kome ce biti stampani dokumenti normalno uvlaci papir, ne "usisava" ga, da tako kazem. :D
 
Odgovor na temu

agvozden
Aleksandar Gvozden
founder
Info-G
Beograd

Član broj: 37813
Poruke: 1123
*.dynamic.sbb.rs.

Sajt: www.gvozden.info


+68 Profil

icon Re: Generisanje dokumenta za stamapnje na strogo definisanom obrascu26.10.2013. u 11:27 - pre 127 meseci
ima jos jedan nacin, mozda i najbolji.

podrazumeva da stampac bude prikaljucen na unix/linux, a moze i na dow/win uz odredjene modifikacije.

a to je da se text salje direktno na port stampaca. u ux sistemima se moze lako napisati drajver da podrzi ovakve stvari, a tekst se moze prihvatiti kroz skoro svaki interfejs (samba. ftp). Nisam nikada radio kroz http, ali pretpostavljam da se i to moze lako napisati.

prednost je sto dobijes generisani txt fajl i to sibnes na stampac. tako smo ranije stampali uplatnice, resenja, dostavnice na linijskim stampacima.

 
Odgovor na temu

boky84
Novi sad

Član broj: 125284
Poruke: 18
91.233.24.*



Profil

icon Re: Generisanje dokumenta za stamapnje na strogo definisanom obrascu28.10.2013. u 08:05 - pre 127 meseci
Zvuci kao dobar predlog, vredelo bi se time pozabaviti, makar iz entuzijazma. :) Ja sam sada ogranicen vremenom, pa ne mogu sada da isprobavam, ali mozda nekome bude od koristi ideja.
 
Odgovor na temu

valjan
Janko Valencik
Software Deployer
Schneider Electric
Novi Sad

Član broj: 158605
Poruke: 3531
*.static.sbb.rs.



+553 Profil

icon Re: Generisanje dokumenta za stamapnje na strogo definisanom obrascu28.10.2013. u 09:22 - pre 127 meseci
Ovo sa raw/txt modom će teško funckionisati na savremenim printerima i Win sistemima. Na tržištu je danas previše Win only štampača koji nemaju ni pravu podršku za PCL ili PS, a druga stvar je da savremeni Windows sistemi ne podržavaju RAW format fajlova za štampu, tako da ovo uglavnom može da se primeni samo na Linux/Unix sistemima ili prastarim Windowsima. A sećam se i ja vremena kad smo iz Clippera štampali personalizovane uplatnice baš na taj način...
 
Odgovor na temu

[es] :: PHP :: Generisanje dokumenta za stamapnje na strogo definisanom obrascu

[ Pregleda: 3739 | Odgovora: 13 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.