So, natürlich will ich Euch meinen Umbau von PDFBillNext mit der TCPDF-Klasse nicht vorenthalten.
Achtung - ich nutze nur den PDF-Bill Part (d.h. die Rechnung) - aber auch der Lieferschein sollte sich analog anpassen lassen.
In xtc_pdf_bill.inc.pdf nutze ich noch einen 1DBarcode, der Bestellnummer, Kundennummer, Rechnungsbetrag und Rechnungsdatum enthalt.
Ich archiviere alle Dokumente elektronisch mit ELO - dort kann man den Bar-Code einllesen und zur Verschlagwortung nutzen.
Dies ist hier aber nicht beschrieben - wer Interesse hat - bitte melden.
Wie immer nicht vergessen: Vorher BACKUP machen - denn ich weiss manchmal nicht was ich tue
Also als erstes den TCPDF Folder gemäss der Anleitung bei:
http://www.tcpdf.org/installation.php im Shop Root Vezeichnis installieren
- dort den Folder /tcpdf/examples/lang nach /tcpdf/config verschieben
- eventuell den Folder /tcpdf/examples löschen
Dann folgende Änderungen:
Changes to /admin/print_order_pdf.php
find(around line 14)
define('FPDF_FONTPATH', DIR_FS_CATALOG
. DIR_WS_CLASSES
. 'FPDF/font/'); and delete line
Changes to /includes/classes/FPDF/PdfBrief.php
find (line 28)
// Font-Type of Bill
var $fontfamily = 'Arial';
change it to
// Font-Type of Bill
var $fontfamily = 'helvetica';
find (line 74)
$this->AliasNbPages();
change it to
$this->getAliasNbPages();
find (line79)
$this->SetProtection(array('print'),'', PDF_MASTER_PASS
); // nur Drucken erlaubt, kein User-Passwort, jedoch ein Master-Passwort and replace it by
$this->SetProtection(array('modify', 'copy', 'annot-forms', 'fill-forms', 'extract', 'assemble', 'print-high'),'',PDF_MASTER_PASS
,1, null); find (line 100)
$this->Cell(0, 4, TEXT_PDF_SEITE.' '.$this->PageNo().' '.TEXT_PDF_SEITE_VON.' {nb}', 0, 0, 'R');
and replace it by
$this->Cell(0, 4, TEXT_PDF_SEITE.' '.$this->PageNo().' '.TEXT_PDF_SEITE_VON . ' ' . $this->getAliasNbPages(), 0, 0, 'R');
Changes to /includes/classes/FPDF/fpdf_protection.php
replace the whole file by
<?php
/****************************************************************************
* Software: FPDF_Protection *
* Version: 1.02 *
* Date: 2005/05/08 *
* Author: Klemen VODOPIVEC *
* License: Freeware *
* *
* You may use and modify this software as you wish as stated in original *
* FPDF package. *
* *
* Thanks: Cpdf (http://www.ros.co.nz/pdf) was my working sample of how to *
* implement protection in pdf. *
****************************************************************************/
require_once(DIR_FS_CATALOG . 'tcpdf/tcpdf.php');
class FPDF_Protection extends TCPDF
{
function FPDF_Protection($orientation='P',$unit='mm',$format='A4')
{
parent::__construct($orientation,$unit,$format, false, 'ISO-8859-1', false);
}
}
?>
Sicher kann man die paar php-Befehle aus /includes/classes/FPDF/fpdf_protection.php in eine der anderen Klassen einbauen - aber mir ist das auf die Scnelle nicht gelungen.
so, jetzt mal testen - sollte so jetzt mit der TCPDF-Klasse funktionieren
Wenn dem so ist, können in /includes/classes/FPDF/ folgendes gelöscht werden:
fpdf.php
html2pdf.php
und der Folder/Ordner /fonts
Viel Erfolg und lasst mich wissen wenn es Verbesserungsvorschläge gibt oder wenn ich was falsch gemacht habe.
Gruss aus Wiesbaden
Dieter