Autor | Zpráva | ||
---|---|---|---|
juraj Profil |
#1 · Zasláno: 18. 9. 2010, 17:02:19 · Upravil/a: juraj
Prajem dobrý deň
pri generovaní súború do pdf,kde používam aplikáciu stiahnutú z tejto adresy http://www.ros.co.nz/pdf mi nechce zobraziť správne diakritiku na niektorých písmenách. Viete mi poradiť,kde treba opraviť kód.Používam verziu php 5.0 ďakujem za rady <?php header('Content-Type','text/html; charset=windows-1250'); ob_start(); require "class.ezpdf.php"; require "eng.php"; ?> <?php $doc =&new Cezpdf( ); $doc->selectFont("./fonts/Helvetica.afm"); $doc->ezStartPageNumbers(320, 15, 8); $doc->ezText("ľščťžýáí", 20, array("justification"=>"left")); $doc->ezStream( ); ?> |
||
H13 Profil |
#2 · Zasláno: 18. 9. 2010, 21:19:35
Použij třídu TCPDF - www.tcpdf.org a kódování utf-8
|
||
Časová prodleva: 5 dní
|
|||
juraj Profil |
#3 · Zasláno: 23. 9. 2010, 10:09:09
H13:
Zdravim aplikáciu som si stiahol z tej adresy,ako si odporúčal ale diakritiku aj tak mi nezobrazuje,prikladam kod,ktorý som použil z interval.cz aspoň si myslím $pdf = new FPDF(); $pdf->AddPage(); $pdf->AddFont('verdana', '', 'verdana.php'); // název písma upravte na to, které jste si stáhli $pdf->SetFont('verdana', '', 10); // název písma upravte na to, které jste si stáhli $pdf->Cell(40, 10, iconv('UTF-8', 'WINDOWS-1250', 'Text s diakritikou: Přííliš žluťoučký kůň úpěl ďábelské ódy')); $pdf->Output(); a mne zobrazí len vetu Text s diakritikou: P ďakujem za rady |
||
H13 Profil |
#4 · Zasláno: 23. 9. 2010, 12:01:28 · Upravil/a: H13
juraj:
Tak problémů bude možná víc: verdana.php - tipuju, že to nebude utf-8 písmo iconv - tam mohou být taky problémy Zkus se podívat na toto: http://diskuse.jakpsatweb.cz/?action=vthread&forum=9&topic=105075 a zkus použít písmo freeserif (který je součástí tcpdf): http://www.tecnick.com/pagefiles/tcpdf/example_008.phps Pokud se ti budou znaky zobrazovat správně pomocí freeserif, pak je chyba v písmu verdana, který zřejmě nebude podporovat utf-8 (pokud by jsi trval na verdaně, musel by jsi si vytvořit utf-8 balíček, viz. link nahoře) BTW: nerozumím nějak používání iconv a kódování windows-1250, soubory ulož pod utf-8 (utf-8 without BOM) a nemusíš vůbec používat iconv. |
||
juraj Profil |
#5 · Zasláno: 24. 9. 2010, 00:08:52 · Upravil/a: juraj
diakritiku v pdf sa mi podarilo rozchodiť,ale ked mi načíta článok z db tak mi zobrazí len jednu vetu na koniec stránky pdf,ani nezalomi
Prikladám kód, prosím poraďte, ďakujem require_once "font/verdana.php"; require_once "fpdf.php"; $sql="select * from kat where id=16"; $vysledok = mysql_query($sql); $zaznam = mysql_fetch_array($vysledok); $pdf = new FPDF(); $pdf->AddPage(); $pdf->AddFont('verdana', '', 'verdana.php'); $pdf->SetFont('verdana', '', 10); $pdf->text(10,5," $zaznam[FCKeditorssk]"); $pdf->Output(); |
||
Tori Profil |
#6 · Zasláno: 24. 9. 2010, 00:48:35
juraj:
$pdf->text(10,5," $zaznam[FCKeditorssk]"); asi bych nejdřív nastavila pozici "kurzoru" (metoda SetXY() ) a pak na vypsání textu použila Cell() - v tom příkladu z intervalu [#3] to je podobně. Text() vám sice umožní zadat počáteční pozici i text jednou funkcí, ale o zalamování řádků se v manuálu nic nepíše (vizte http://www.fpdf.org/). |
||
H13 Profil |
#7 · Zasláno: 24. 9. 2010, 01:07:52
Zdravim aplikáciu som si stiahol z tej adresy,ako si odporúčal ale diakritiku aj tak mi nezobrazuje,prikladam kod,ktorý som použil z interval.cz aspoň si myslím
Příklad, který používáš, využívá knihovnu FPDF, já jsem ale odkazoval na knihovnu TCPDF (plus fungující UTF-8 příklad). S FPDF ti bohužel neporadím :-( |
||
Tori Profil |
#8 · Zasláno: 24. 9. 2010, 02:17:44 · Upravil/a: Tori
TCPDF má stejnojmenné metody SetXY(), Text(), Cell() a MultiCell(), a parametry z FPDF::metoda() jsou ve stejném pořadí i u TCPDF::metoda(), plus u TCPDF jsou ještě nějaké navíc.
edit: omylem jsem reagovala na něco jiného, pozdní hodina, omlouvám se |
||
H13 Profil |
#9 · Zasláno: 24. 9. 2010, 13:16:47
Tori:
Já reagoval na juraje :-) Tuším, že $pdf = new FPDF(); http://www.tecnick.com/pagefiles/tcpdf/example_008.phps ( $pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false); ). Ten příklad rovnou může vyzkoušet a funguje, navíc obsahuje pro všechny části kódu komentáře, takže se jednoduše modifikuje pro vlastní potřeby. Místo načtení utf-8 textu ze souboru: $utf8text = file_get_contents('../cache/utf8test.txt', false); může do proměnné $utf8text zadat přímo text (utf-8) nebo ho tam nahrát z databáze. |
||
juraj Profil |
#10 · Zasláno: 24. 9. 2010, 15:36:50 · Upravil/a: juraj
zdravím všetkých
Mám ešte jednu otázku.Ak je v databaze článok aj s obrázkami.Tak sa vygeneruju aj obrázky spolu s textom do PDF? Lebo mne generuje čistý text bez obrázkov. ďakujem |
||
H13 Profil |
#11 · Zasláno: 24. 9. 2010, 20:06:40
juraj:
No záleží na tom, zda máš obrázky uložený v databázi, nebo tam máš uložený pouze odkazy na obrázky, např. ve formě html (<img src="" ... />), pokud tam máš uložený standardní img tagy s cestou na obrázek, zkus se podívat na tcpdf příklady s obrázky, budeš muset zkontrolovat, jestli má tcpdf oprávnění takové obrázky číst a vložit je do PDF, možná je budeš muset dát do speciální složky, atd. atd. |
||
juraj Profil |
#12 · Zasláno: 24. 9. 2010, 23:08:50
Ďakujem za cenné rady
|
||
Časová prodleva: 14 let
|
0