User Tools

Site Tools


doc:appunti:linux:sa:tcpdf

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Last revisionBoth sides next revision
doc:appunti:linux:sa:tcpdf [2020/02/12 10:44] – [L'alternativa FPDF] niccolodoc:appunti:linux:sa:tcpdf [2021/03/04 11:36] – [TCPDF su Debian 10 Buster] niccolo
Line 1: Line 1:
 ====== TCPDF su Debian 10 Buster ====== ====== TCPDF su Debian 10 Buster ======
  
-Purtroppo il pacchetto **php-tcpdf** non è presente in **Debian 10 Buster**, per fortuna si puù installare la versione **6.3.2** da Debian Bullseye, scarcando il file da [[https://packages.debian.org/bullseye/php-tcpdf|Debian packages]].+Purtroppo il pacchetto **php-tcpdf** non è presente in **Debian 10 Buster**, esiste però come **[[https://packages.debian.org/buster-backports/all/php-tcpdf/download|backport]]** oppure si dovrebbe poter installare la versione da Debian Bullseye, scarcando il file da [[https://packages.debian.org/bullseye/php-tcpdf|Debian packages]].
  
 <code> <code>
Line 18: Line 18:
 ===== L'alternativa FPDF ===== ===== L'alternativa FPDF =====
  
-In alternativa a **php-tcpdf** esiste il pacchetto **[[https://packages.debian.org/buster/php-fpdf|php-fpdf]]** (home page [[http://www.fpdf.org/|www.fpdf.org]]). Si tratta di una libreria con minori funzionalità, ma più snella. È inclusa nelle ultime versioni di Debian, compresa l'auttuale stabile **10 Buster** che include **php-fpdf 1.8.1**, e la futura **Bullseye**.+In alternativa a **php-tcpdf** esiste il pacchetto **[[https://packages.debian.org/buster/php-fpdf|php-fpdf]]** (home page [[http://www.fpdf.org/|www.fpdf.org]]). Si tratta di una libreria con minori funzionalità, ma più snella. È inclusa nelle ultime versioni di Debian, compresa l'auttuale stabile **10 Buster** (che include **php-fpdf 1.8.1**), e la futura **Bullseye**.
  
 ===== L'estensione FPDI ===== ===== L'estensione FPDI =====
Line 24: Line 24:
 **[[https://packagist.org/packages/setasign/fpdi|FPDI]]** sta per **Free PDF Document Importer**, si tratta di una **estensione** che funziona sia con [[http://www.fpdf.org|FPDF]] che con [[https://github.com/tecnickcom/TCPDF|TCPDF]]. Consente di inlcudere un file PDF esistente ed utilizzarlo come **template** per creare altri documenti. **[[https://packagist.org/packages/setasign/fpdi|FPDI]]** sta per **Free PDF Document Importer**, si tratta di una **estensione** che funziona sia con [[http://www.fpdf.org|FPDF]] che con [[https://github.com/tecnickcom/TCPDF|TCPDF]]. Consente di inlcudere un file PDF esistente ed utilizzarlo come **template** per creare altri documenti.
  
-Al momento non esiste un pacchetto Debian della libreria. La libreria è scaricabile da **GitHub**, ad esempio la release 2.2.0 è scaricabile scegliendo il **[[https://github.com/Setasign/FPDI/tree/v2.2.0|Tag v2.2.0]]**.+Debian includeva **libfpdi-php 1.4.1** fino alla versione **8 Jessie**, nella attuale versione 10 Buster purtroppo non c'è. La libreria è comunque scaricabile da **GitHub**, ad esempio la release 2.2.0 è scaricabile scegliendo il **[[https://github.com/Setasign/FPDI/tree/v2.2.0|Tag v2.2.0]]**.
  
 Per una installazione manuale si può scompattare l'archivio **FPDI-2.2.0.zip** in **/usr/local/share/php/** oppure anche nella directory stessa del progetto PHP. Quello che serve è la directory **src** contenuta nell'archivio ZIP, che può essere rinominata ad esempio in **fpdi220**. Per includerla si aggiunge al codice PHP: Per una installazione manuale si può scompattare l'archivio **FPDI-2.2.0.zip** in **/usr/local/share/php/** oppure anche nella directory stessa del progetto PHP. Quello che serve è la directory **src** contenuta nell'archivio ZIP, che può essere rinominata ad esempio in **fpdi220**. Per includerla si aggiunge al codice PHP:
Line 39: Line 39:
 Come si vede nell'esempio viene utilizzata la keyword **use** per definire quale //variante// di FPDI si vuole utilizzare: quella basata su FPDF oppure quella basata su TCPDF (in effetti sono supportate anche altre varianti). Come si vede nell'esempio viene utilizzata la keyword **use** per definire quale //variante// di FPDI si vuole utilizzare: quella basata su FPDF oppure quella basata su TCPDF (in effetti sono supportate anche altre varianti).
  
-**ATTENZIONE**: La versione **FPDI 2.2.0** richiede **FPDF 1.8.2**. Con versioni più vecchie (ad esempio FPDF 1.7) si incappa nell'errore:+**ATTENZIONE**: La versione **FPDI 2.2.0** richiede **FPDF 1.8**. Con versioni più vecchie (ad esempio FPDF 1.7) si incappa nell'errore:
  
 <code> <code>
Line 57: Line 57:
 <code php> <code php>
 require_once('/usr/share/php/tcpdf/tcpdf.php'); require_once('/usr/share/php/tcpdf/tcpdf.php');
 +use setasign\Fpdi\Tcpdf\Fpdi;
 require_once('./vendor/fpdi/autoload.php'); require_once('./vendor/fpdi/autoload.php');
 </code> </code>
doc/appunti/linux/sa/tcpdf.txt · Last modified: 2021/03/04 11:39 by niccolo