PDA

Pogčedajte punu verziju : ezpdf klasa problem sa karakterima


conica
28. 12. 2006., 13:56
Pozdrav

za jedan deo projekta, potreban mi je export php->pdf
U te svrhe sam skinula ezpdf klasu.
e sad..imam problem sa latinicnim slovima č i ć
Postoji referenciranje na osnovu naziva karaktera:

/** ovo je primer za nemacke karaktere **/
$diff=array(196=>'Adieresis');
$pdf->selectFont('./fonts/Helvetica.afm',array('encoding'=>'WinAnsiEncoding','differences'=>$diff));


... ali ne mogu da ga nateram za ta dva (cetri) karaktera da proradi

Da li je neko vec koristio ovu klasu i da li je uspeo da resi ovaj problem?

Hvala

jablan
28. 12. 2006., 14:55
Nisam radio sa paketom, ali možda uspeš da nađeš put do odgovora na

http://forum.planetpdf.com/wb/default.asp?action=9&fid=3&read=49286

conica
28. 12. 2006., 15:21
Hvala na linku

however, uspela sam da se izmanevrisem u medjuvremenu, pa evo ako nekom zatreba:
$diff=array(198=>'Cacute',230=>'cacute',232=>'ccaron',200=>'Ccaron');
$pdf->selectFont('./fonts/Helvetica.afm',array('encoding'=>'WinAnsiEncoding','differences'=>$diff));

naime, trazene karaktere sam dobila kombinovanjem naziva elemenata i zamenom u fontu. Jedini problem ostaje sirina slova, koja biu sustini ovim metodom trebala da bude resena, ali sam za sada malo budzila pa da ispadne relativno okay

cheers

ivanhoe
28. 12. 2006., 15:58
EDIT: kasno marko na kosovo stize... Conica je vec resila problem, pa ovo moje mozete slobodno da brisete...

nisam nikad koristio ezPDF sa nasim slovima, ali evo taj deo iz dokumentacije:
The encoding directive is a little experimental, it allows the user to re-map character numbers from
the 0->255 range to any named character in the set (as most of the sets have more than 256
characters). It should be an array of <number> => <name> pairs in an associative array. This is
important to ensure that the right width for the character is used within the presentation characters, it
has been noticed that sometimes, although the right character appears on the page, the incorrect width
has been caluclated, using this function to explicitly set that number to the named character should fix
the problem.
Note that the encoding directive will be effective only the first time that a font is selected, and it
should not be used on symbolic fonts (such as Symbol or ZapfDingbats).


Sudeci po ovom boldovanom delu komentara, fora je da nadjes imena za nase karaktere (ako to postoji uopste ?) i da onda remapiras odredjene karaktere iz Ansi seta u nasa slova. E sad, znam da ovo verovatno i nije od neke pomoci :/

conica
28. 12. 2006., 16:01
da, tako sam i resila.

Naime acute i caron su nazivi za crticu i kvacicu na ta dva slova, dok su c i C naravno..sta?..c :)

Doduse, mnogo je nezgodnije da se recimo "kreiraju" cirilicna slova..ne smem ni da pomislim koliko bi tu bilo kombinovanja ;) heh

jablan
28. 12. 2006., 16:26
ccaron i cacute su već predefinisana imena tih karaktera (iz unikoda mislim), mislim da ih ti nisi "kreirala". :)

conica
28. 12. 2006., 16:37
koliko sam videla, nisu bash
znam da su predefinisani zcaron, Zcaron, scaron i Scaron (i jos po neki ali tih slova nema u nasoj abecedi)
samim tim oni imaju i svoju sirinu, pa nema potrebe za zezanjem oko toga

e sad, cinjenica je da pcaron nista ne ispisuje, dok ccaron ispisuje č, ALI
1. nema ga u tablici predefinisanih (http://www.baw.de/vip/abteilungen/wbk/Publikationen/docs/pdfspec.pdf strana 343)
2. sirina mu nije definisana

u svakom slucaju, mogao bi neko ko ima dosta iskustva sa ovim da malo pojasni :)

dootzky
29. 12. 2006., 09:33
hi all :)

ja sam se isto mucio sa time, ali ovo resenje mi je odradilo sve, a cenim da je najlakse:

http://www.fpdf.org/

uostalom, ceo taj thread je malo ispod ovoga:
http://devprotalk.com/showthread.php?t=2072&pp=10

reko cisto da vam dam jos jedan link za resenje koje je meni odradilo posao :)

poz,
d