Вообщем понадобилось генерить пдф, да не просто пдф а еще и на чешском, чтоб все букавки были с гачками. Полазив по нету был обнаружен чудо инструмент, UFPDF
для того чтоб показались чарки юникодовые нужно сделать фонт.
в комплекте идет прога ttf2ufm.exe которой нудно скормить фонт в формате ttf на выходе получится 3 файла. например для шрифта tahoma.ttf получил tahoma.t1a tahoma.afm tahoma.ufm
потом нужно сделать финт ушами, путем редактирования файла tahoma.ufm
добавляем туда строчки для чарок:
1 2 3 4 5 6 7 8 9 10 11 12 13 | U 268 ; WX 692 ; N Ccaron ; G 252 ; U 269 ; WX 692 ; N ccaron ; G 266 ; U 273 ; WX 629 ; N dmacron ; G 254 ; U 256 ; WX 690 ; N Amacron ; G 258 ; U 257 ; WX 552 ; N amacron ; G 259 ; U 258 ; WX 690 ; N Abreve ; G 260 ; U 259 ; WX 552 ; N abreve ; G 261 ; U 260 ; WX 690 ; N Aogonek ; G 262 ; U 261 ; WX 552 ; N aogonek ; G 263 ; U 264 ; WX 692 ; N Ccircumflex ; G 264 ; U 265 ; WX 512 ; N ccircumflex ; G 265 ; U 266 ; WX 521 ; N Cdot ; G 254 ; U 267 ; WX 512 ; N cdot ; G 267 ; |
потом заверщающий этам создания шрифта:
в комплекте идет файл makefontuni.php в нем есть метод MakeFont,
скармливаем ему файлы
MakeFont(‘tahoma.ttf’,'tahoma.ufm’);
в итоге получаем файл шрифтов
tahoma.php tahoma.ctg.z tahoma.z
ну и пишем маленький примерчик:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | <?php define('FPDF_FONTPATH', 'font/'); include_once('ufpdf.php'); $pdf = new UFPDF(); $pdf->Open(); $pdf->SetTitle("UFPDF is Cool"); $pdf->SetAuthor('driversoft.net'); $pdf->AddFont('Tahoma', '', 'tahoma.php'); $pdf->AddPage(); $pdf->SetFont('Tahoma', '', 12); $pdf->Write(12, "UFPDF is Cool Doručení.\n"); $pdf->Write(12, "K úhradě za"); $pdf->Write(12, "Množství Hezký den a hodně spokojených zákazníků Vám přeje Váš obchod.\n"); $pdf->Close(); $pdf->Output('unicode.pdf', 'F'); ?> |
и радуемся жизни