Prestashop 1.7.4.2 - TCDPF генерирует штрих-код в ошибке счета - PullRequest
0 голосов
/ 18 декабря 2018

Я использую TCDPF для создания штрих-кода в счете.Таким образом, когда я загружаю счет-фактуру, нажимая «Просмотреть счет-фактуру» на странице «Заказы», ​​он должен загружаться с созданным штрих-кодом.В данный момент я просто проверяю случайное число.

В HTMLTemplateInvoice.php я добавил следующие коды:

// Random number for testing
$barcodeobj = new TCPDFBarcode('1234567890123', 'C39');

// Assign to template
   // All other unnecessary variables not displayed
   'barcode' => base64_encode($barcodeobj->getBarcodePNG(1, 30, array(255,255,255))),
);

Для целей тестирования я добавил следующие коды в накладную.address.tab.tpl

<img src="data:image/png;base64,{$barcode}>">

Отображается штрих-код.К сожалению, он отображается как страница и не создается в счете.Счет также не будет загружен.

Barcode generated as page

Я использую Prestashop 1.7.4.2 и обновлен до PHP 7.2.

1 Ответ

0 голосов
/ 20 августа 2019

Я попробовал этот код

$barcodeobj = new TCPDFBarcode("123456789123", 'C39');       
$Barcode = $barcodeobj->getBarcodePngData(2, 40, array(0,0,0));

, а затем я создал новый pdf:

$Barcode_pdf = new TCPDF('P', 'mm', 'A5', true, 'UTF-8', false);
$Barcode_pdf->SetMargins(7, 10.4, 8);
$Barcode_pdf->setImageScale(0.5);
$Barcode_pdf->AddPage();
$Barcode_pdf->Image('@'.$Barcode,'10','20','60' );
$Barcode_pdf->Output('Barcode.pdf', 'I')

, вы можете прикрепить его к электронной почте, если хотите , но изменитетип вывода: «S» :

$Barcode_attachment = array();
$Barcode_attachment['content'] = $Barcode_pdf->Output('Barcode.pdf', 'S');
$Barcode_attachment['name'] = 'Barcode.pdf'; // getting pdf file name
$Barcode_attachment['invoice']['mime'] = 'application/pdf';
$Barcode_attachment['mime'] = 'application/pdf';

, а затем просто добавьте $Barcode_attachment к своей электронной почте.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...