diff --git a/htdocs/includes/fpdf/fpdfi/fpdi.php b/htdocs/includes/fpdf/fpdfi/fpdi.php index be4d5073356..4d732b9f274 100644 --- a/htdocs/includes/fpdf/fpdfi/fpdi.php +++ b/htdocs/includes/fpdf/fpdfi/fpdi.php @@ -29,7 +29,7 @@ if (defined('DOL_URL_ROOT')) define ("K_PATH_URL_CACHE", DOL_URL_ROOT."/document /* End DOLCHANGE Added by Regis */ // DOLCHANGE LDR -if (empty($conf->global->MAIN_USE_TCPDF)) require_once(DOL_DOCUMENT_ROOT.'/includes/fpdf/fpdf/fpdf.php'); +if (! empty($conf->global->MAIN_USE_FPDF)) require_once(DOL_DOCUMENT_ROOT.'/includes/fpdf/fpdf/fpdf.php'); else require_once(DOL_DOCUMENT_ROOT.'/includes/tcpdf/tcpdf.php'); //require_once(DOL_DOCUMENT_ROOT.'/includes/tcpdf/tcpdf.php'); diff --git a/htdocs/includes/modules/action/rapport.pdf.php b/htdocs/includes/modules/action/rapport.pdf.php index b8f15e057ef..7c552ec0145 100644 --- a/htdocs/includes/modules/action/rapport.pdf.php +++ b/htdocs/includes/modules/action/rapport.pdf.php @@ -106,7 +106,7 @@ class CommActionRapport if (file_exists($dir)) { // Protection et encryption du pdf - if ($conf->global->PDF_SECURITY_ENCRYPTION) +/* if ($conf->global->PDF_SECURITY_ENCRYPTION) { $pdf=new FPDI_Protection('P','mm',$this->format); $pdfrights = array('print'); // Ne permet que l'impression du document @@ -118,6 +118,8 @@ class CommActionRapport { $pdf=new FPDI('P','mm',$this->format); } +*/ + $pdf=pdf_getInstance($this->format); if (class_exists('TCPDF')) { diff --git a/htdocs/includes/modules/cheque/pdf/pdf_blochet.class.php b/htdocs/includes/modules/cheque/pdf/pdf_blochet.class.php index 8ebc63b6bb3..961d255090e 100644 --- a/htdocs/includes/modules/cheque/pdf/pdf_blochet.class.php +++ b/htdocs/includes/modules/cheque/pdf/pdf_blochet.class.php @@ -114,18 +114,20 @@ class BordereauChequeBlochet extends ModeleChequeReceipts $_file = $dir . "/bordereau-".$number.".pdf"; // Protection et encryption du pdf - if ($conf->global->PDF_SECURITY_ENCRYPTION) +/* if ($conf->global->PDF_SECURITY_ENCRYPTION) { - $pdf = new FPDI_Protection('P','mm','A4'); + $pdf = new FPDI_Protection('P','mm',$this->format); $pdfrights = array('print'); // Ne permet que l'impression du document $pdfuserpass = ''; // Mot de passe pour l'utilisateur final - $pdfownerpass = NULL; // Mot de passe du propri�taire, cr�� al�atoirement si pas d�fini + $pdfownerpass = NULL; // Mot de passe du proprietaire, cree aleatoirement si pas defini $pdf->SetProtection($pdfrights,$pdfuserpass,$pdfownerpass); } else { $pdf=new FPDI('P','mm',$this->format); } +*/ + $pdf=pdf_getInstance($this->format); if (class_exists('TCPDF')) { diff --git a/htdocs/includes/modules/commande/pdf_edison.modules.php b/htdocs/includes/modules/commande/pdf_edison.modules.php index a5cfb589624..bcb44cce0e2 100644 --- a/htdocs/includes/modules/commande/pdf_edison.modules.php +++ b/htdocs/includes/modules/commande/pdf_edison.modules.php @@ -134,7 +134,7 @@ class pdf_edison extends ModelePDFCommandes if (file_exists($dir)) { // Protection et encryption du pdf - if ($conf->global->PDF_SECURITY_ENCRYPTION) +/* if ($conf->global->PDF_SECURITY_ENCRYPTION) { $pdf=new FPDI_Protection('P','mm',$this->format); $pdfrights = array('print'); // Ne permet que l'impression du document @@ -146,6 +146,8 @@ class pdf_edison extends ModelePDFCommandes { $pdf=new FPDI('P','mm',$this->format); } +*/ + $pdf=pdf_getInstance($this->format); if (class_exists('TCPDF')) { diff --git a/htdocs/includes/modules/commande/pdf_einstein.modules.php b/htdocs/includes/modules/commande/pdf_einstein.modules.php index d2609e4c08b..30abd9c7317 100644 --- a/htdocs/includes/modules/commande/pdf_einstein.modules.php +++ b/htdocs/includes/modules/commande/pdf_einstein.modules.php @@ -155,7 +155,7 @@ class pdf_einstein extends ModelePDFCommandes $nblignes = sizeof($object->lines); // Protection et encryption du pdf - if ($conf->global->PDF_SECURITY_ENCRYPTION) +/* if ($conf->global->PDF_SECURITY_ENCRYPTION) { $pdf=new FPDI_Protection('P','mm',$this->format); $pdfrights = array('print'); // Ne permet que l'impression du document @@ -167,6 +167,8 @@ class pdf_einstein extends ModelePDFCommandes { $pdf=new FPDI('P','mm',$this->format); } +*/ + $pdf=pdf_getInstance($this->format); if (class_exists('TCPDF')) { diff --git a/htdocs/includes/modules/expedition/pdf/pdf_expedition_merou.modules.php b/htdocs/includes/modules/expedition/pdf/pdf_expedition_merou.modules.php index b92d9c0067e..d7140997a62 100644 --- a/htdocs/includes/modules/expedition/pdf/pdf_expedition_merou.modules.php +++ b/htdocs/includes/modules/expedition/pdf/pdf_expedition_merou.modules.php @@ -142,7 +142,7 @@ Class pdf_expedition_merou extends ModelePdfExpedition if (file_exists($dir)) { // Protection et encryption du pdf - if ($conf->global->PDF_SECURITY_ENCRYPTION) +/* if ($conf->global->PDF_SECURITY_ENCRYPTION) { $pdf=new FPDI_Protection('l','mm',$this->format); $pdfrights = array('print'); // Ne permet que l'impression du document @@ -154,8 +154,10 @@ Class pdf_expedition_merou extends ModelePdfExpedition { $pdf=new FPDI('l','mm',$this->format); } +*/ + $pdf=pdf_getInstance($this->format,'mm','l'); - if (class_exists('TCPDF')) + if (class_exists('TCPDF')) { $pdf->setPrintHeader(false); $pdf->setPrintFooter(false); diff --git a/htdocs/includes/modules/expedition/pdf/pdf_expedition_rouget.modules.php b/htdocs/includes/modules/expedition/pdf/pdf_expedition_rouget.modules.php index 54c39bda3dc..9e76facc518 100644 --- a/htdocs/includes/modules/expedition/pdf/pdf_expedition_rouget.modules.php +++ b/htdocs/includes/modules/expedition/pdf/pdf_expedition_rouget.modules.php @@ -263,7 +263,7 @@ Class pdf_expedition_rouget extends ModelePdfExpedition if (file_exists($dir)) { // Protection et encryption du pdf - if ($conf->global->PDF_SECURITY_ENCRYPTION) +/* if ($conf->global->PDF_SECURITY_ENCRYPTION) { $pdf=new FPDI_Protection('P','mm',$this->format); $pdfrights = array('print'); // Ne permet que l'impression du document @@ -275,6 +275,8 @@ Class pdf_expedition_rouget extends ModelePdfExpedition { $pdf=new FPDI('P','mm',$this->format); } +*/ + $pdf=pdf_getInstance($this->format); if (class_exists('TCPDF')) { diff --git a/htdocs/includes/modules/facture/pdf_crabe.modules.php b/htdocs/includes/modules/facture/pdf_crabe.modules.php index 0670d22311b..411ae170562 100644 --- a/htdocs/includes/modules/facture/pdf_crabe.modules.php +++ b/htdocs/includes/modules/facture/pdf_crabe.modules.php @@ -159,19 +159,22 @@ class pdf_crabe extends ModelePDFFactures $nblignes = sizeof($object->lines); // Protection et encryption du pdf - if ($conf->global->PDF_SECURITY_ENCRYPTION) +/* if ($conf->global->PDF_SECURITY_ENCRYPTION) { - $pdf=new FPDI_Protection('P','mm',$this->format); - $pdfrights = array('print'); // Ne permet que l'impression du document - $pdfuserpass = ''; // Mot de passe pour l'utilisateur final - $pdfownerpass = NULL; // Mot de passe du proprietaire, cree aleatoirement si pas defini - $pdf->SetProtection($pdfrights,$pdfuserpass,$pdfownerpass); + if ($conf->global->MAIN_USE_FPDF) $pdf = new FPDI_Protection('P','mm',$this->format); + else $pdf = new FPDI('P','mm',$this->format); + $pdfrights = array('print'); // Ne permet que l'impression du document + if (empty($conf->global->MAIN_USE_FPDF)) $pdfrights[]='assemble'; + $pdfuserpass = ''; // Mot de passe pour l'utilisateur final + $pdfownerpass = NULL; // Mot de passe du proprietaire, cree aleatoirement si pas defini + $pdf->SetProtection($pdfrights,$pdfuserpass,$pdfownerpass); } else { $pdf=new FPDI('P','mm',$this->format); - //$pdf=new TCPDF('P','mm','A4'); } +*/ + $pdf=pdf_getInstance($this->format); if (class_exists('TCPDF')) { diff --git a/htdocs/includes/modules/facture/pdf_oursin.modules.php b/htdocs/includes/modules/facture/pdf_oursin.modules.php index be1758e4a66..89478ee8f32 100644 --- a/htdocs/includes/modules/facture/pdf_oursin.modules.php +++ b/htdocs/includes/modules/facture/pdf_oursin.modules.php @@ -155,7 +155,7 @@ class pdf_oursin extends ModelePDFFactures { // Protection et encryption du pdf - if ($conf->global->PDF_SECURITY_ENCRYPTION) +/* if ($conf->global->PDF_SECURITY_ENCRYPTION) { $pdf=new FPDI_Protection('P','mm',$this->format); $pdfrights = array('print'); // Ne permet que l'impression du document @@ -167,6 +167,8 @@ class pdf_oursin extends ModelePDFFactures { $pdf=new FPDI('P','mm',$this->format); } +*/ + $pdf=pdf_getInstance($this->format); if (class_exists('TCPDF')) { diff --git a/htdocs/includes/modules/fichinter/pdf_soleil.modules.php b/htdocs/includes/modules/fichinter/pdf_soleil.modules.php index 5ea11b58c22..d1ed2748ff7 100644 --- a/htdocs/includes/modules/fichinter/pdf_soleil.modules.php +++ b/htdocs/includes/modules/fichinter/pdf_soleil.modules.php @@ -127,7 +127,7 @@ class pdf_soleil extends ModelePDFFicheinter if (file_exists($dir)) { // Protection et encryption du pdf - if ($conf->global->PDF_SECURITY_ENCRYPTION) +/* if ($conf->global->PDF_SECURITY_ENCRYPTION) { $pdf=new FPDI_Protection('P','mm',$this->format); $pdfrights = array('print'); // Ne permet que l'impression du document @@ -139,6 +139,8 @@ class pdf_soleil extends ModelePDFFicheinter { $pdf=new FPDI('P','mm',$this->format); } +*/ + $pdf=pdf_getInstance($this->format); if (class_exists('TCPDF')) { diff --git a/htdocs/includes/modules/livraison/pdf/pdf_sirocco.modules.php b/htdocs/includes/modules/livraison/pdf/pdf_sirocco.modules.php index 2325eb35496..fbb66ea3ef4 100644 --- a/htdocs/includes/modules/livraison/pdf/pdf_sirocco.modules.php +++ b/htdocs/includes/modules/livraison/pdf/pdf_sirocco.modules.php @@ -117,7 +117,7 @@ class pdf_sirocco extends ModelePDFDeliveryOrder if (file_exists($dir)) { // Protection et encryption du pdf - if ($conf->global->PDF_SECURITY_ENCRYPTION) +/* if ($conf->global->PDF_SECURITY_ENCRYPTION) { $pdf=new FPDI_Protection('P','mm',$this->format); $pdfrights = array('print'); // Ne permet que l'impression du document @@ -129,6 +129,8 @@ class pdf_sirocco extends ModelePDFDeliveryOrder { $pdf=new FPDI('P','mm',$this->format); } +*/ + $pdf=pdf_getInstance($this->format); if (class_exists('TCPDF')) { diff --git a/htdocs/includes/modules/livraison/pdf/pdf_typhon.modules.php b/htdocs/includes/modules/livraison/pdf/pdf_typhon.modules.php index 46bde86d934..e03bf78e294 100644 --- a/htdocs/includes/modules/livraison/pdf/pdf_typhon.modules.php +++ b/htdocs/includes/modules/livraison/pdf/pdf_typhon.modules.php @@ -140,7 +140,7 @@ class pdf_typhon extends ModelePDFDeliveryOrder if (file_exists($dir)) { // Protection et encryption du pdf - if ($conf->global->PDF_SECURITY_ENCRYPTION) +/* if ($conf->global->PDF_SECURITY_ENCRYPTION) { $pdf=new FPDI_Protection('P','mm',$this->format); $pdfrights = array('print'); // Ne permet que l'impression du document @@ -152,6 +152,8 @@ class pdf_typhon extends ModelePDFDeliveryOrder { $pdf=new FPDI('P','mm',$this->format); } +*/ + $pdf=pdf_getInstance($this->format); if (class_exists('TCPDF')) { diff --git a/htdocs/includes/modules/member/cards/pdf_standard.class.php b/htdocs/includes/modules/member/cards/pdf_standard.class.php index e62e15f9b59..dc5cfa99686 100644 --- a/htdocs/includes/modules/member/cards/pdf_standard.class.php +++ b/htdocs/includes/modules/member/cards/pdf_standard.class.php @@ -399,7 +399,7 @@ class pdf_standard { // Protection et encryption du pdf - if ($conf->global->PDF_SECURITY_ENCRYPTION) +/* if ($conf->global->PDF_SECURITY_ENCRYPTION) { $pdf=new FPDI_Protection('P',$this->Tformat['metric'],$this->format); $pdfrights = array('print'); // Ne permet que l'impression du document @@ -411,6 +411,8 @@ class pdf_standard { { $pdf=new FPDI('P',$this->Tformat['metric'],$this->format); } +*/ + $pdf=pdf_getInstance($this->format,$this->Tformat['metric']); if (class_exists('TCPDF')) { diff --git a/htdocs/includes/modules/member/labels/pdf_standardlabel.class.php b/htdocs/includes/modules/member/labels/pdf_standardlabel.class.php index 57b82a1bbba..1caf80a361b 100644 --- a/htdocs/includes/modules/member/labels/pdf_standardlabel.class.php +++ b/htdocs/includes/modules/member/labels/pdf_standardlabel.class.php @@ -378,7 +378,7 @@ class pdf_standardlabel { // Protection et encryption du pdf - if ($conf->global->PDF_SECURITY_ENCRYPTION) +/* if ($conf->global->PDF_SECURITY_ENCRYPTION) { $pdf=new FPDI_Protection('P',$this->Tformat['metric'],$this->format); $pdfrights = array('print'); // Ne permet que l'impression du document @@ -390,6 +390,8 @@ class pdf_standardlabel { { $pdf=new FPDI('P',$this->Tformat['metric'],$this->format); } +*/ + $pdf=pdf_getInstance($this->format,$this->Tformat['metric']); if (class_exists('TCPDF')) { diff --git a/htdocs/includes/modules/project/pdf/pdf_baleine.modules.php b/htdocs/includes/modules/project/pdf/pdf_baleine.modules.php index 832e2a7e3c2..2d8ee11c781 100644 --- a/htdocs/includes/modules/project/pdf/pdf_baleine.modules.php +++ b/htdocs/includes/modules/project/pdf/pdf_baleine.modules.php @@ -124,7 +124,7 @@ class pdf_baleine extends ModelePDFProjects if (file_exists($dir)) { // Protection et encryption du pdf - if ($conf->global->PDF_SECURITY_ENCRYPTION) +/* if ($conf->global->PDF_SECURITY_ENCRYPTION) { $pdf=new FPDI_Protection('P','mm',$this->format); $pdfrights = array('print'); // Ne permet que l'impression du document @@ -136,6 +136,8 @@ class pdf_baleine extends ModelePDFProjects { $pdf=new FPDI('P','mm',$this->format); } +*/ + $pdf=pdf_getInstance($this->format); if (class_exists('TCPDF')) { diff --git a/htdocs/includes/modules/propale/pdf_propale_azur.modules.php b/htdocs/includes/modules/propale/pdf_propale_azur.modules.php index c350c99a865..56bbf16ba8a 100644 --- a/htdocs/includes/modules/propale/pdf_propale_azur.modules.php +++ b/htdocs/includes/modules/propale/pdf_propale_azur.modules.php @@ -155,7 +155,7 @@ class pdf_propale_azur extends ModelePDFPropales $nblignes = sizeof($object->lines); // Protection et encryption du pdf - if ($conf->global->PDF_SECURITY_ENCRYPTION) +/* if ($conf->global->PDF_SECURITY_ENCRYPTION) { $pdf=new FPDI_Protection('P','mm',$this->format); $pdfrights = array('print'); // Ne permet que l'impression du document @@ -167,6 +167,8 @@ class pdf_propale_azur extends ModelePDFPropales { $pdf=new FPDI('P','mm',$this->format); } +*/ + $pdf=pdf_getInstance($this->format); if (class_exists('TCPDF')) { diff --git a/htdocs/includes/modules/propale/pdf_propale_jaune.modules.php b/htdocs/includes/modules/propale/pdf_propale_jaune.modules.php index e3a55a6913c..66851e3b562 100644 --- a/htdocs/includes/modules/propale/pdf_propale_jaune.modules.php +++ b/htdocs/includes/modules/propale/pdf_propale_jaune.modules.php @@ -128,7 +128,7 @@ class pdf_propale_jaune extends ModelePDFPropales if (file_exists($dir)) { // Protection et encryption du pdf - if ($conf->global->PDF_SECURITY_ENCRYPTION) +/* if ($conf->global->PDF_SECURITY_ENCRYPTION) { $pdf=new FPDI_Protection('P','mm',$this->format); $pdfrights = array('print'); // Ne permet que l'impression du document @@ -140,6 +140,8 @@ class pdf_propale_jaune extends ModelePDFPropales { $pdf=new FPDI('P','mm',$this->format); } +*/ + $pdf=pdf_getInstance($this->format); if (class_exists('TCPDF')) { diff --git a/htdocs/includes/modules/rapport/pdf_paiement.class.php b/htdocs/includes/modules/rapport/pdf_paiement.class.php index 81f11980996..9f72bdc6fa1 100644 --- a/htdocs/includes/modules/rapport/pdf_paiement.class.php +++ b/htdocs/includes/modules/rapport/pdf_paiement.class.php @@ -104,10 +104,11 @@ class pdf_paiement $file = $dir . "/payments-".$year."-".$month.".pdf"; // Protection et encryption du pdf - if ($conf->global->PDF_SECURITY_ENCRYPTION) +/* if ($conf->global->PDF_SECURITY_ENCRYPTION) { - $pdf = new FPDI_Protection('P','mm','A4'); - $pdfrights = array('print'); // Ne permet que l'impression du document + if ($conf->global->MAIN_USE_FPDF) $pdf = new FPDI_Protection('P','mm',$this->format); + else $pdf = new FPDI('P','mm',$this->format); + $pdfrights = array('print'); // Ne permet que l'impression du document $pdfuserpass = ''; // Mot de passe pour l'utilisateur final $pdfownerpass = NULL; // Mot de passe du proprietaire, cree aleatoirement si pas defini $pdf->SetProtection($pdfrights,$pdfuserpass,$pdfownerpass); @@ -116,6 +117,8 @@ class pdf_paiement { $pdf=new FPDI('P','mm',$this->format); } +*/ + $pdf=pdf_getInstance($this->format); if (class_exists('TCPDF')) { @@ -237,7 +240,7 @@ class pdf_paiement $pdf->SetXY(10,10); $pdf->MultiCell(200, 2, $title, 0, 'C'); - $pdf->SetFont('','',12); + $pdf->SetFont('','',10); $pdf->SetXY (11, 16); $pdf->MultiCell(80, 2, $outputlangs->transnoentities("DateBuild")." : ".dol_print_date(time(),"day",false,$outputlangs,true), 0, 'L'); @@ -247,24 +250,23 @@ class pdf_paiement // Title line - $pdf->SetXY (11, $this->tab_top+1); + $pdf->SetXY (11, $this->tab_top+2); $pdf->MultiCell(30, 2, 'Date'); $pdf->line(40, $this->tab_top, 40, $this->tab_top + $this->tab_height + 10); - $pdf->SetXY (42, $this->tab_top+1); + $pdf->SetXY (42, $this->tab_top+2); $pdf->MultiCell(40, 2, $outputlangs->transnoentities("PaymentMode"), 0, 'L'); $pdf->line(80, $this->tab_top, 80, $this->tab_top + $this->tab_height + 10); - $pdf->SetXY (82, $this->tab_top+1); + $pdf->SetXY (82, $this->tab_top+2); $pdf->MultiCell(40, 2, $outputlangs->transnoentities("Invoice"), 0, 'L'); $pdf->line(120, $this->tab_top, 120, $this->tab_top + $this->tab_height + 10); - $pdf->SetXY (122, $this->tab_top+1); + $pdf->SetXY (122, $this->tab_top+2); $pdf->MultiCell(40, 2, $outputlangs->transnoentities("AmountInvoice"), 0, 'L'); $pdf->line(160, $this->tab_top, 160, $this->tab_top + $this->tab_height + 10); - - $pdf->SetXY (162, $this->tab_top+1); + $pdf->SetXY (162, $this->tab_top+2); $pdf->MultiCell(40, 2, $outputlangs->transnoentities("AmountPayment"), 0, 'L'); $pdf->line(10, $this->tab_top + 10, 200, $this->tab_top + 10 ); diff --git a/htdocs/includes/modules/supplier_invoice/pdf/pdf_canelle.modules.php b/htdocs/includes/modules/supplier_invoice/pdf/pdf_canelle.modules.php index 04797e5709c..de3721cb753 100755 --- a/htdocs/includes/modules/supplier_invoice/pdf/pdf_canelle.modules.php +++ b/htdocs/includes/modules/supplier_invoice/pdf/pdf_canelle.modules.php @@ -144,7 +144,7 @@ class pdf_canelle extends ModelePDFSuppliersInvoices $nblignes = sizeof($object->lines); // Protection et encryption du pdf - if ($conf->global->PDF_SECURITY_ENCRYPTION) +/* if ($conf->global->PDF_SECURITY_ENCRYPTION) { $pdf=new FPDI_Protection('P','mm',$this->format); $pdfrights = array('print'); // Ne permet que l'impression du document @@ -156,6 +156,8 @@ class pdf_canelle extends ModelePDFSuppliersInvoices { $pdf=new FPDI('P','mm',$this->format); } +*/ + $pdf=pdf_getInstance($this->format); if (class_exists('TCPDF')) { diff --git a/htdocs/includes/modules/supplier_order/pdf/pdf_muscadet.modules.php b/htdocs/includes/modules/supplier_order/pdf/pdf_muscadet.modules.php index d2d8b1ee94d..0792872fed3 100644 --- a/htdocs/includes/modules/supplier_order/pdf/pdf_muscadet.modules.php +++ b/htdocs/includes/modules/supplier_order/pdf/pdf_muscadet.modules.php @@ -145,7 +145,7 @@ class pdf_muscadet extends ModelePDFSuppliersOrders $nblignes = sizeof($object->lines); // Protection et encryption du pdf - if ($conf->global->PDF_SECURITY_ENCRYPTION) +/* if ($conf->global->PDF_SECURITY_ENCRYPTION) { $pdf=new FPDI_Protection('P','mm',$this->format); $pdfrights = array('print'); // Ne permet que l'impression du document @@ -157,6 +157,8 @@ class pdf_muscadet extends ModelePDFSuppliersOrders { $pdf=new FPDI('P','mm',$this->format); } +*/ + $pdf=pdf_getInstance($this->format); if (class_exists('TCPDF')) { diff --git a/htdocs/lib/pdf.lib.php b/htdocs/lib/pdf.lib.php index 3d8b176dc7e..a7df27e01e5 100644 --- a/htdocs/lib/pdf.lib.php +++ b/htdocs/lib/pdf.lib.php @@ -29,6 +29,46 @@ */ +/** + * Return a PDF instance object. We create a FPDI instance that instanciate TCPDF (or FPDF if MAIN_USE_FPDF is on) + * @param format Array(width,height) + * @param metric Unit of format ('mm') + * @param pagetype 'P' or 'l' + * @return PDF object + */ +function pdf_getInstance($format,$metric='mm',$pagetype='P') +{ + global $conf; + + // Protection et encryption du pdf + if ($conf->global->PDF_SECURITY_ENCRYPTION) + { + /* Permission supported by TCPDF + - print : Print the document; + - modify : Modify the contents of the document by operations other than those controlled by 'fill-forms', 'extract' and 'assemble'; + - copy : Copy or otherwise extract text and graphics from the document; + - annot-forms : Add or modify text annotations, fill in interactive form fields, and, if 'modify' is also set, create or modify interactive form fields (including signature fields); + - fill-forms : Fill in existing interactive form fields (including signature fields), even if 'annot-forms' is not specified; + - extract : Extract text and graphics (in support of accessibility to users with disabilities or for other purposes); + - assemble : Assemble the document (insert, rotate, or delete pages and create bookmarks or thumbnail images), even if 'modify' is not set; + - print-high : Print the document to a representation from which a faithful digital copy of the PDF content could be generated. When this is not set, printing is limited to a low-level representation of the appearance, possibly of degraded quality. + - owner : (inverted logic - only for public-key) when set permits change of encryption and enables all other permissions. + */ + if ($conf->global->MAIN_USE_FPDF) $pdf = new FPDI_Protection($pagetype,$metric,$format); + else $pdf = new FPDI($pagetype,$metric,$format); + $pdfrights = array('print'); // Ne permet que l'impression du document + if (empty($conf->global->MAIN_USE_FPDF)) $pdfrights[]='assemble'; + $pdfuserpass = ''; // Mot de passe pour l'utilisateur final + $pdfownerpass = NULL; // Mot de passe du proprietaire, cree aleatoirement si pas defini + $pdf->SetProtection($pdfrights,$pdfuserpass,$pdfownerpass); + } + else + { + $pdf=new FPDI($pagetype,$metric,$format); + } + return $pdf; +} + /** * Return font name to use for PDF generation * @param outputlangs Output langs object @@ -273,7 +313,7 @@ function pdf_bank(&$pdf,$outputlangs,$curx,$cury,$account) $pdf->line($curx+1, $cury+1, $curx+1, $cury+10 ); $fieldstoshow=array('bank','desk','number','key'); - + if ($conf->global->BANK_SHOW_ORDER_OPTION==1) $fieldstoshow=array('bank','desk','key','number'); foreach ($fieldstoshow as $val)