Zum Inhalt springen

pdf_generator2 ignoriert die CSS-Datei

Erstellt am 13. Januar 2010 · 3 Antworten · letzte Antwort am 5. Dezember 2011

Tags: PDF, Frage

Unbekannter Benutzer ·

Hallo zusammen,

ich habe nun mehrere Stunden nach einer Lösung gesucht und habe nun die Hoffnung, dass mir hier jemand helfen kann.
Ich verwwende die Extensions pdf_generator2 und tv_pdflib (da Templavoila) und bekomme keine PDF-Ausgabe hin, bei welcher das Stylesheet verwendet wird. Die Doku der pdf_generator2 und von html2pdf bin ich schon durch. Die normale unformatierte Ausgabe funktioniert einwandfrei.

Folgende zwei Varianten haben nichts gebracht:

Variante 1 mit "includeCSS" (SETUP):

pdf_generator {

  includeCSS {
    file1 = /fileadmin/templates/css/print/print_100_direct.css
        file1 {
        title = Main
        media = screen
        }
    }
}

Variante 2 mit "stylesheet" (SETUP):

pdf_generator {

  stylesheet = /fileadmin/templates/css/print/print_100_direct.css
}

Sobald der Pfad zur CSS-Datei fehlerhaft ist wird kein PDF mehr gerendert und nur eine leere Seite angezeigt. Dies tritt bei beiden Varianten auf. Lasse ich die absolute Pfadangabe (erstes /) weg, so wird auch kein PDF gerendert. Das kann ich mir höchstens durch die Verwendung der realURL-Extension erklären.

Im Stylesheet selber werden nur verschiedene Container auf display: none gestellt:

.header, .nav, .topnav, .logo, .footer { display: none; }

Im Stylesheet sollte der Fehler also auch nicht liegen. Für Ausdrucke funktioniert dieses Druck-CSS auch prima, aber html2pdf scheint es zu ignorieren. Das Verändern der Konstante pdf_generator2.cssmedia zu screen oder print hat auch keine Wirkung gezeigt. Ich bin für jede Hilfe sehr dankbar.

Vielen Dank im Voraus
Michael

Unbekannter Benutzer ·

Hat niemand eine Idee woran das liegen kann?
Ich verwende TemplaVoila und YAML (db_yamltv) und bekomme keine halbwegs gut sortierte PDF-Ausgabe hin.

Auch die Konstanten zum Suchen und Ersetzen (string_search1, string_replace1) werden fleißig ignoriert, so dass ich keine Möglichkeit habe bestimmte Teile auszublenden. Kann mir jemand eine andere Extension zum PDF-Export empfehlen? Bin etwas verzweifelt, da es das einzige ist, was an der Seite noch fehlt.

Vielen Dank im Voraus. Ich bin für jede Hilfe dankbar.
Grüße
Michael

m.​zimmer ·

Hallo,

ich habe das gleiche Problem, der error log des apache gibt mir folgendes aus:

[Mon Dec 05 12:12:28 2011] [warn] [client xx.xx.xx.xx] mod_fcgid: stderr: Fetching: file:////srv/www/domain.de/test/fileadmin/template/css_js/pdf.css?1323082834
[Mon Dec 05 12:12:28 2011] [warn] [client xx.xx.xx.xx] mod_fcgid: stderr: Access denied to file ''

wo bekommt er den pfad "////..." her?

Bilder werden in der PDF hingegen korrekt eingebunden.

m.​zimmer · · Beste Antwort

mit 2 Anpassungen konnte ich das ganze lösen, zum ersten mußte der Parameter samt dem Fragezeichen weg:

$urlArr = explode("?",$url);
if(count($urlArr)>1) $url = $urlArr[0];

die 4 Slash habe ich durch 3 ersetzt:

$url = str_replace("////","///",$url);

Das ganze in der css.utils.inc.php im Verzeichnis typo3conf/ext/pdf_generator2/html2ps/ in der funktion css_import nach

$url = $pipeline->guess_url($src);

Interessamt wäre trotzdem wieso die 4 Slash vorhanden sind und weshalb der Parameter hinter der CSS Pfad angabe steht.