How to output formatted text to pdf

21.02.2018 06:04
#1
kit2m2
Joomshopping forum user no avatar
Name: Dmitriy
03.12.2010
Posts: 100
Quote
How to output formatted text to pdf

Как вывести форматированный текст в pdf?

$html = '<h1>Заголовок</h1><p><strong>жирный текст</strong>параграф</p><a href="https://www.joomla.org/">Сайт Joomla</a>';
// output the HTML content
$pdf->writeHTML($html, true, false, true, false, '');

Не выводит, выдает ошибку. Возможно это связано с версией библиотеки - TCPDF


Joomla: 3.8.5
JoomShopping: 4.16.3
 
21.02.2018 09:03
#2
admin
(Support Team)
User admin
Name: Admin
05.08.2010
Posts: 25853
Quote
Aw: How to output formatted text to pdf

Используется старая версия tcpdf
Без writeHTML
(новая занимаєт много места)

 
21.02.2018 09:31
#3
kit2m2
Joomshopping forum user no avatar
Name: Dmitriy
03.12.2010
Posts: 100
Quote
Aw: How to output formatted text to pdf

Много места?
Скачал последний релиз -TCPDF-6.2.13 В упакованном виде - 16,5мб, в распакованном - 32мб
Это с кучей ненужных файлов, примерами... а если убрать все не нужное, то не так уж много.
Можно в конце концов сделать установку отдельным установочным пакетом - аддоном.
На хостинге 20мб - это не так уж много, зато куча возможностей работы с pdf

 
21.02.2018 12:43
#4
kit2m2
Joomshopping forum user no avatar
Name: Dmitriy
03.12.2010
Posts: 100
Quote
Aw: How to output formatted text to pdf

Можете подготовить библиотеку новой версии? А установочный пакет сам сделаю.
Просто никогда не работал с ней, не знаю что нужно, а что нет.

 
22.02.2018 10:38
#5
kit2m2
Joomshopping forum user no avatar
Name: Dmitriy
03.12.2010
Posts: 100
Quote
Aw: How to output formatted text to pdf

Значит не поможите с библиотекой разобраться? Придется текст вставлять картинкой?

 
22.02.2018 10:54
#6
admin
(Support Team)
User admin
Name: Admin
05.08.2010
Posts: 25853
Quote
Aw: How to output formatted text to pdf

Будет аддон для обновления версии tcpdf

 
22.02.2018 11:01
#7
kit2m2
Joomshopping forum user no avatar
Name: Dmitriy
03.12.2010
Posts: 100
Quote
Aw: How to output formatted text to pdf

Спасибо. Платный или бесплатный аддон будет?

 
22.02.2018 11:14
#8
admin
(Support Team)
User admin
Name: Admin
05.08.2010
Posts: 25853
Quote
Aw: How to output formatted text to pdf

Бесплатный.


Last change: 22.02.2018 11:14
 
27.02.2018 21:33
#9
admin
(Support Team)
User admin
Name: Admin
05.08.2010
Posts: 25853
Quote
Aw: How to output formatted text to pdf

https://www.webdesigner-profi.de/joomla-webdesign/shop/special/update-tcpdf.html

 
28.02.2018 09:49
#10
kit2m2
Joomshopping forum user no avatar
Name: Dmitriy
03.12.2010
Posts: 100
Quote
Aw: How to output formatted text to pdf

Спасибо. Но есть одна проблема - Перед каждой страницей вставляет еще одну (пустую).

 
28.02.2018 14:36
#11
admin
(Support Team)
User admin
Name: Admin
05.08.2010
Posts: 25853
Quote
Aw: How to output formatted text to pdf

Works for my test site.
screenshot or pdf?

 
28.02.2018 15:04
#12
kit2m2
Joomshopping forum user no avatar
Name: Dmitriy
03.12.2010
Posts: 100
Quote
Aw: How to output formatted text to pdf

На стандартном функционале (стандартном счете, не - addon_rus_invoices_for_payment_1.0.7) тоже создает перед счетом пустую страницу.
Это связано с header.jpg У себя поправил в аддоне, теперь не создает пустую страницу

Сделал так:

function addTitleHead(&$pdf){
$jshopConfig = JSFactory::getConfig();
//$pdf->Image($jshopConfig->path.'images/header.jpg',1,1,$jshopConfig->pdf_header_width,$jshopConfig->pdf_header_height);
//$pdf->Image($jshopConfig->path.'images/footer.jpg',1,265,$jshopConfig->pdf_footer_width,$jshopConfig->pdf_footer_height);
$vendorinfo = $pdf->_vendorinfo;

$y=12;
$x=12;

if($vendorinfo->logo){
$pdf->Image($vendorinfo->logo,$x,$y-2,25,25);
$x+=30;
}

$pdf->SetFont('freesans','',8);
//$pdf->SetXY($x,$y);
$pdf->SetXY(136,$y);
$pdf->SetTextColor($pdf->pdfcolors[3][0], $pdf->pdfcolors[3][1], $pdf->pdfcolors[3][2]);
$_vendor_info = array();
$_vendor_info[] = $vendorinfo->company_name;
$adress = array();
if($vendorinfo->zip)$adress[] = $vendorinfo->zip;
//if($vendorinfo->country)$adress[] = $vendorinfo->country;
if($vendorinfo->city)$adress[] = $vendorinfo->city;
if($vendorinfo->adress)$adress[] = $vendorinfo->adress;

$_vendor_info[] = implode(", ",$adress);
unset($adress);
if ($vendorinfo->phone) $_vendor_info[] = _JSHOP_CONTACT_PHONE.": ".$vendorinfo->phone;
if ($vendorinfo->fax) $_vendor_info[] = _JSHOP_CONTACT_FAX . ": ".$vendorinfo->fax;
if ($vendorinfo->email) $_vendor_info[] = _JSHOP_EMAIL.": ".$vendorinfo->email;
$str_vendor_info = implode("\n",$_vendor_info);
//$pdf->MultiCell(60, 3, $pdf->Image($jshopConfig->path.'images/header.jpg',1,1, $jshopConfig->pdf_header_width,$jshopConfig->pdf_header_height));
$pdf->MultiCell(60, 3, $pdf->Image($jshopConfig->path.'images/header.jpg',1,1, $jshopConfig->pdf_header_width,$jshopConfig->pdf_header_height).$str_vendor_info, 0, 'R');
$pdf->SetTextColor($pdf->pdfcolors[0][0], $pdf->pdfcolors[0][1], $pdf->pdfcolors[0][2]);
}


Last change: 28.02.2018 22:16
 
28.02.2018 22:18
#13
admin
(Support Team)
User admin
Name: Admin
05.08.2010
Posts: 25853
Quote
Aw: How to output formatted text to pdf

Думаю проблема в настройках
$jshopConfig->pdf_header_height
$jshopConfig->pdf_footer_height

 
01.03.2018 12:26
#14
kit2m2
Joomshopping forum user no avatar
Name: Dmitriy
03.12.2010
Posts: 100
Quote
Aw: How to output formatted text to pdf

Даже если меняю настройки, ничего не меняется. Все равно добавляются лишние пустые страницы.

У Вас нет? Решается только при помощи кода, который разместил выше.

 
01.03.2018 16:16
#15
admin
(Support Team)
User admin
Name: Admin
05.08.2010
Posts: 25853
Quote
Aw: How to output formatted text to pdf

У меня работает нормально.

 


Copyrights MAXXmarketing GmbH. Alle Rechte vorbehalten
Durch die Nutzung dieser Website stimme ich zu, dass Cookies zur optimalen Gestaltung der Website sowie zur Analyse der Nutzung der Website verwendet werden. Weiterführende Informationen finden Sie hier. OK, einverstanden.