Differenze tra le versioni di "MINERVA-APPS:Creare una classe di stampa personalizzata"
(Creata pagina con "← Torna indietro == Introduzione == Questa pagina ti darà le indicazioni di come creare e caricare delle stampe personalizzate. Di base vengono creati...") |
|||
(26 versioni intermedie di uno stesso utente non sono mostrate) | |||
Riga 5: | Riga 5: | ||
Di base vengono creati file PDF, ma nulla vieta di creare i formati desiderati, come fogli di calcolo Excel XSL o testi RTF o DOC. | Di base vengono creati file PDF, ma nulla vieta di creare i formati desiderati, come fogli di calcolo Excel XSL o testi RTF o DOC. | ||
+ | |||
+ | == Esempio == | ||
+ | Iniziamo con il creare una classe base per la stampa di un documento, con la testata della compagnia. | ||
+ | |||
+ | Crea il file {{code|Documento_intestazione.php}} con il seguente contenuto: | ||
+ | <pre> | ||
+ | <?php | ||
+ | |||
+ | /** | ||
+ | * Classe per la stampa del documento | ||
+ | */ | ||
+ | class Documento_intestazione extends \TCPDF { | ||
+ | |||
+ | private $company = null; | ||
+ | |||
+ | public function __construct( $document, $preferences ) { | ||
+ | parent::__construct(); | ||
+ | |||
+ | $this->company = $document->company; | ||
+ | } | ||
+ | |||
+ | public function file_extension() { | ||
+ | return 'pdf'; | ||
+ | } | ||
+ | |||
+ | function header() { | ||
+ | // Logo | ||
+ | if( !empty( $this->company->logo_path ) && file_exists( $this->company->logo_path ) ) { | ||
+ | $this->Image( $this->company->logo_path, PDF_MARGIN_LEFT, 10, 0, 20 ); | ||
+ | $this->SetY( 32 ); | ||
+ | } else { | ||
+ | $this->SetY( 10 ); | ||
+ | } | ||
+ | |||
+ | // azienda | ||
+ | $this->SetFontSize( 14 ); | ||
+ | $this->Cell( 100, 8, $this->company->name, 0, 1, 'L' ); | ||
+ | $this->Ln( 1 ); | ||
+ | $this->SetFontSize( 9 ); | ||
+ | $this->MultiCell( 100, 5, $this->company->identification_data, 0, 'L' ); | ||
+ | $this->Ln( 2 ); | ||
+ | } | ||
+ | |||
+ | public function body() { | ||
+ | |||
+ | } | ||
+ | } | ||
+ | </pre> | ||
+ | Vai in visualizzazione di un documento, premi '''Stampa''' e seleziona il secondo tab (icona graffetta), carica il file creato. | ||
+ | |||
+ | [[File:img_582a2f0ce4sdcdfv68e.png|center|Selezione classe]] | ||
+ | |||
+ | Alla stampa seleziona la nuova classe caricata. | ||
+ | |||
+ | [[File:img_582a2f0ce4sdfv68e.png|center|Caricamento file]] |
Versione attuale delle 22:39, 9 mar 2021
Introduzione
Questa pagina ti darà le indicazioni di come creare e caricare delle stampe personalizzate.
Di base vengono creati file PDF, ma nulla vieta di creare i formati desiderati, come fogli di calcolo Excel XSL o testi RTF o DOC.
Esempio
Iniziamo con il creare una classe base per la stampa di un documento, con la testata della compagnia.
Crea il file Documento_intestazione.php con il seguente contenuto:
<?php /** * Classe per la stampa del documento */ class Documento_intestazione extends \TCPDF { private $company = null; public function __construct( $document, $preferences ) { parent::__construct(); $this->company = $document->company; } public function file_extension() { return 'pdf'; } function header() { // Logo if( !empty( $this->company->logo_path ) && file_exists( $this->company->logo_path ) ) { $this->Image( $this->company->logo_path, PDF_MARGIN_LEFT, 10, 0, 20 ); $this->SetY( 32 ); } else { $this->SetY( 10 ); } // azienda $this->SetFontSize( 14 ); $this->Cell( 100, 8, $this->company->name, 0, 1, 'L' ); $this->Ln( 1 ); $this->SetFontSize( 9 ); $this->MultiCell( 100, 5, $this->company->identification_data, 0, 'L' ); $this->Ln( 2 ); } public function body() { } }
Vai in visualizzazione di un documento, premi Stampa e seleziona il secondo tab (icona graffetta), carica il file creato.
Alla stampa seleziona la nuova classe caricata.