Вопрос по php, tcpdf, pdf, whitespace – Записать пространство с помощью TCPDF в файл PDF

1

Я описал этот простой сценарий, который записывает текст в 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 У кого-нибудь есть решение? !!?

Ваш Ответ

3   ответа
0

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

что такое & lt; & lt; EOD и EOD; ?? trullallero
Извините, но $ label = & quot; Hello world, i & amp; m michele & quot ;; $ pdf-> Cell (0, 0, $ label, 1, 1, 'C'; 0, '; 3; не записывает пробелы ... trullallero
Я решил, что проблема в баге с визуализатором плагина PDF браузера! trullallero
0

I've resolved, the problem is a bug with the browser's PDF plug-in visualizer!!

0

что проблема заключается в «раз» шрифт. У меня были те же проблемы с этим конкретным шрифтом. Вы можете попробовать некоторые другие шрифты в каталоге шрифтов tcpdf.

Я решил, что проблема в баге с визуализатором плагина PDF браузера! trullallero

Похожие вопросы