ratzekahl1
Goto Top

Xampp oder Tcpdf löscht Dateien

Guten tag,
ich habe ein etwas komisches Phänomen.
Via TCPDF und Xampp generiere ich ein pdf.

In das pdf füge ich eine Hintergrundgrafik (png) ein.
Komischerweise ist die Grafik nach dem generieren weg... Ich dachte erst ich spinne, aber dem ist definitiv so.
Der Header:
class MYPDF extends TCPDF {
    //Page header
    public function Header() {
        // get the current page break margin
        $bMargin = $this->getBreakMargin();
        // get current auto-page-break mode
        $auto_page_break = $this->AutoPageBreak;
        // disable auto-page-break
        $this->SetAutoPageBreak(false, 0);
        // set bacground image
       $PgNo=$this->getPage();
        $img_file = 'C:\xampp\htdocs\bufo\mainimages\ersteseite.png';   
        $this->Image($img_file, 0, 0, 210, 297, '', '', '', false, 300, '', false, false, 0);  
        // restore auto-page-break status
        $this->SetAutoPageBreak($auto_page_break, $bMargin);
        // set the starting point for the page content
        $this->setPageMark();
    }
 global $seitentotal;   // set document information
 $pdf = new MYPDF('portrait', PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);  

// set document information

// set header and footer fonts
$pdf->setHeaderFont(Array(PDF_FONT_NAME_MAIN, '', PDF_FONT_SIZE_MAIN));  

// set default monospaced font
$pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED);

// set margins
// $pdf->SetMargins('4mm','4mm','4mm','4mm'); 

// set auto page breaks
$pdf->SetAutoPageBreak(TRUE, PDF_MARGIN_BOTTOM);

// set image scale factor
$pdf->setImageScale(PDF_IMAGE_SCALE_RATIO);
$pdf->setPrintFooter(true);

// set auto page breaks
$pdf->SetAutoPageBreak(TRUE, PDF_MARGIN_BOTTOM);

// set image scale factor
$pdf->setImageScale(PDF_IMAGE_SCALE_RATIO);
// set some language-dependent strings (optional)
if (@file_exists(dirname(__FILE__).'/lang/eng.php')) {  
    require_once(dirname(__FILE__).'/lang/eng.php');  
    $pdf->setLanguageArray($l);
}

// ---------------------------------------------------------

// set font
$pdf->SetFont('times', '', 12);  

// add a page
$pdf->AddPage();
 //*************denititionen der Varaiablen********************  

Danach kommen halt normale Variablen...

Dann die Ausgabe:

 $pdf->SetFont('helvetica', 'I', 10);  
  $posy = $pdf->GetY() + 1;       
   $pdf->writeHTMLCell($w = $adressblock_laenge, $h = $adressblock_hoehe, $x = $adressblock_xpos, $y = $adressblock_ypos, $adressblock, $border = 0, $ln = 0, $fill = false, $reseth = true, $align = 'left', $autopadding = true);  
 $pdf->writeHTMLCell($w = $stundenzettel_breite, $h = "", $x = $stundenzettel_xpos, $y = $stundenzettel_ypos, $html, $border = 0, $ln = 0, $fill = false, $reseth = true, $align = 'left', $autopadding = true);  

Zum Schluss die eigendliche Erzeugung:
$docname="Wochenzettel_".$kw.".pdf";  
//Close and output PDF document
$pdf->Output($docname, 'D');?>   

Ich habe das Ganze so eigendlich frühger schon ohne Probleme benutzt. Länger nichts mehr gemacht und dann das neueste Xampp aufgespielt, das neuste TCPDF.
Arbeiten tu ich unter Windows 11 Pro.
Dachte erst der Virenscanner verhindert den Zugriff auf den Ordner. Aber es geht genau 1x und da ist nichts in Quarantäne.
Im Papierkorb ist auch nichts.
Die Datei habe ich nun mehrfach in den Ordner kopiert. Auch einen alternativen Ordner habe ich genommen. Dasselbe Spiel. png wird unterstützt. In den Beispielen des Projektes sind auch png drin.
Any idea?
mfG
ratzekahl

Content-ID: 5757154191

Url: https://administrator.de/contentid/5757154191

Ausgedruckt am: 22.11.2024 um 01:11 Uhr

mbehrens
mbehrens 31.01.2023 um 18:41:33 Uhr
Goto Top
Zitat von @ratzekahl1:

Via TCPDF und Xampp generiere ich ein pdf.

In das pdf füge ich eine Hintergrundgrafik (png) ein.
Komischerweise ist die Grafik nach dem generieren weg... Ich dachte erst ich spinne, aber dem ist definitiv so.

Und das nicht genannte Software Release ist welches?
ratzekahl1
ratzekahl1 01.02.2023 um 09:57:53 Uhr
Goto Top
Die Datei tcpdf version sagt mir 6.3.2
Und xampp 8.0.25
Hatte ich noch nie, dass ungefragt aufs Dateisystem zugegegriffen wird. Da leigen auch anderen Dateien und die bleiben da.
ratzekahl1
ratzekahl1 01.02.2023 aktualisiert um 11:09:06 Uhr
Goto Top
Andere Datei, diesmal jpg. Dasselbe. Dateiaufruf Datei weg.
Anderer Browser...
ratzekahl1
Lösung ratzekahl1 01.02.2023 um 18:33:02 Uhr
Goto Top
Ok, ist ein Bug in tcpdf. Lösung: AM Anfang:
public function _destroy($destroyall = false, $preserve_objcopy = false)
        {
            if ($destroyall) {
                unset($this->imagekeys);
            }
            parent::_destroy($destroyall, $preserve_objcopy);
        }
einfügen.