Autor Zpráva
juraj
Profil
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
Použij třídu TCPDF - www.tcpdf.org a kódování utf-8
juraj
Profil
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
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
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
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
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
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
Tori:
Já reagoval na juraje :-)

Tuším, že
$pdf = new FPDF();
atd. nebude to správný jak rozjet TCPDF (i v případě, že TCPDF vychází z FPDF), pokud by použil TCPDF, bylo by dobrý držet se tohoto příkladu:


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
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
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
Ďakujem za cenné rady

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: