Вопрос по php, tcpdf, pdf, whitespace – Записать пространство с помощью TCPDF в файл PDF
Я описал этот простой сценарий, который записывает текст в PDF для библиотеки php TCPDF. Это скрипт:
// create new PDF document
$pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);
// set document information
$pdf->SetCreator(PDF_CREATOR);
$pdf->SetAuthor('Label Creator');
$pdf->SetTitle('labels');
$pdf->SetSubject('Labels di prova');
$pdf->SetKeywords('TCPDF, PDF, example, test, guide');
// set default monospaced font
$pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED);
$pdf->setPrintHeader(false);
$pdf->setPrintFooter(false);
//set auto page breaks
$pdf->SetAutoPageBreak(TRUE,0);
//set image scale factor
$pdf->setImageScale(PDF_IMAGE_SCALE_RATIO);
//set some language-dependent strings
$pdf->setLanguageArray($l);
// set font
$pdf->SetFont('times', '', 15);
//left margin
$pdf->SetMargins(18,15,18,FALSE);
// add a page
$pdf->AddPage();
$label="Hello world, i'm michele";
$pdf->Cell(0, 0 , $label, 0, 1, 'C', 0, '', 0,FALSE,'T','M');
//Close and output PDF document
$pdf->Output('../../labels.pdf', 'F');
echo 'Labels generate!';
проблема в том, что скрипт работает, но в файле я вижу текст без пробелов! Как это: HelloWorld, я & APOS; mmichele У кого-нибудь есть решение? !!?
Option 1: If you want to use Cell
Прототип является:
//Cell($w, $h=0, $txt='', $border=0, $ln=0, $align='', $fill=0, $link='', $stretch=0, $ignore_min_height=false, $calign='T', $valign='M')
To deal with spacing, use these:
$pdf->Cell(0, 0, 'TEST CELL STRETCH: spacing', 1, 1, 'C', 0, '', 3);
$pdf->Cell(0, 0, 'TEST CELL STRETCH: force spacing', 1, 1, 'C', 0, '', 4);
You can try this:
$label="Hello world, i'm michele";
$pdf->Cell(0, 0 , $label, 1, 1, 'C', 0, '', 3;
Граница включена, так что вы можете видеть, достаточно ли велика ячейка. Надеюсь, это работает. (для обозначения, что следует далее: FALSE, «T», «M» уже являются значениями по умолчанию)
Option 2: You can also use Write()
$pdf->AddPage();
// set some text to print
$label = <<<EOD
About Michele.
Michele is awesome.
EOD;
// print a block of text using Write()
$pdf->Write($h=0, $label, $link='', $fill=0, $align='C', $ln=true, $stretch=0, $firstline=false, $firstblock=false, $maxh=0);
Вы можете найти множество примеров там:Примеры TCPDF
что проблема заключается в «раз» шрифт. У меня были те же проблемы с этим конкретным шрифтом. Вы можете попробовать некоторые другие шрифты в каталоге шрифтов tcpdf.