Zum Inhalt springen

pdf_generator2 benutzt CSS nicht

Erstellt am 18. Februar 2008 · 24 Antworten · letzte Antwort am 15. Februar 2013 · Seite 1 von 2

Tags: Frage

unclesam ·

Hallo Community,

ich versuche momentan vergeblich dem pdf_generator2 das "stylen" beizubringen. Es kommt immer eine weiße Seite.
Ich habe schon festgestellt, dass ich nicht der einzige bin, der dieses Problem hat, deshalb will ich euch danach fragen, da die Tutorials der gleich erwähnten Extension kein Stück weiter helfen.
Mein Ziel ist es auf einer Seite einen Link zu plazieren. Klick man auf diesen Link, soll nur der Contentbereich ins PDF. Das Funktioniert auch schon, allerdings eben nur schwarz auf weiß.

Extensions im Einsatz:
- pdf_generator2 (mit fpdf)
- tv_pdfgen

TypoScript:
Setup:

includeLibs.tx_pdfgenerator2 = EXT:pdf_generator2/class.tx_pdfgenerator2.php
pdf_generator = PAGE
pdf_generator {
	typeNum = 123
	includeCSS.1 = fileadmin/templates/scripts/css/main_pdf.css
	includeCSS.2 = fileadmin/templates/scripts/css/content_center.css
	config {
		pageGenScript = EXT:pdf_generator2/gen_pdf.php
		admPanel = 0
		additionalHeaders = Content-type: application/pdf
	}
}

Ich habe versucht über verschiedenen Wege irgendwie CSS einzubinden, die das PAGE-Objekt betreffen. Keine hat zum Erfolg geführt.

Ich bin euch dankbar für eure Hilfe.

nishna ·

Hallo!
Wo jetzt genau dein Fehler ist, weiss ich nicht. Hier mein ts..das bei mir funktioniert:

temp.pdfmaker = COA
temp.pdfmaker {
	100 = IMAGE
	100.file = fileadmin/template/dvi/images/pdf.gif
	#100.stdWrap.postUserFunc = tx_pdfgenerator2->makePdfLink
	110 = TEXT
	110.value = PDF erzeugen
	110.postUserFunc = tx_pdfgenerator2->makePdfLink
	110.postUserFunc.target = _blank
	
	temp.PDF = TEXT
	temp.PDF.value = pdf
	temp.PDF.postUserFunc = tx_pdfgenerator2->makePdfLink
	temp.PDF.postUserFunc.include_post_vars = 1
	page.120 < temp.PRINT
}




pdf_generator {
	stylesheet = fileadmin/template/dvi/css/pdf.css
	10 = TEMPLATE
	10 {
		template < plugin.tx_automaketemplate_pi1
		template.content.file = fileadmin/template/dvi/pdf.html
		workOnSubpart = DOCUMENT_BODY
		template.elements.DIV.id.content = 1
		subparts.content < styles.content.get
		
     		
          }
}
pdf_generator.50 >
unclesam ·

@mitchiru:

danke für den hinweis, allerdings hatte ich das, wie schon beschrieben, probiert.

folgende ts zeilen hatte ich schon probiert um css einzubinden:

page.stylesheet
page.includeCSS
page.CSS_inlineStyle

keine dieser möglichkeiten hat funktioniert.

@nishna:

ich benutze die templates von templavoila, daher brauche ich kein templateobjekt. lass ich also die angaben für dieses objekt weg, hat dein ts-code die gleichen angaben wie meiner. ich hab zu testzwecken deine letzte zeile "pdf_generator.50 >" eingefügt, zeigte allerdings keine wirkung.

einpraegsam.​net ·
unclesam schrieb

page.stylesheet
page.includeCSS
page.CSS_inlineStyle

Wieso page? Bei dir muss es so lauten:

pdf_generator.stylesheet = fileadmin/test.css
unclesam ·

da ist wohl ein missverständnis entstanden. natürlich muss ich "pdf_generator.stylesheet" benutzen. ich wollte nur verdeutlichen, dass die von mir angegebenen zeilen vom page-objekt kommen.

ich habe es gerade nochmal probiert mit "pdf_generator.stylesheet" und leider kein erfolg.

einpraegsam.​net ·

Hier mal unser Setup - funktioniert einwandfrei:

includeLibs.tx_pdfgenerator2 = EXT:pdf_generator2/class.tx_pdfgenerator2.php

pdf_generator = PAGE
pdf_generator {
	stylesheet = fileadmin/flad/administration/css/pdfversion.css
	
	50 = CONTENT
	50 < styles.content.get
	50.wrap = <br />|
}
unclesam ·

das hat mir leider auch nicht weiter geholfen. es kommt das gleiche raus wie sonst auch. kein css, keine bilder...

einpraegsam.​net ·
unclesam schrieb

das hat mir leider auch nicht weiter geholfen. es kommt das gleiche raus wie sonst auch. kein css, keine bilder...

Gib doch die Background-Images mal absolut an in deinem PDF CSS:

background-image: url(http://www.domain.de/fileadmin/pdf_bg.jpg);
DerFredster ·

Guten Tag,

gibt es hierzu ein Lösung?
Bei mir funktioniert das Einbinden des CSS-Stylesheets nicht. Bilder, die im Inhalt der Seite sind, werden dagegen dargestellt.

Anbei mein TS (basierend auf Einpraegsams) - ansonsten habe ich nichts weiter im Setup des Root Templates:

includeLibs.tx_pdfgenerator2 = EXT:pdf_generator2/class.tx_pdfgenerator2.php
 
pdf_generator = PAGE
pdf_generator {
        stylesheet = fileadmin/templates/styles/print_styles.css
        
        50 = CONTENT
        50 < styles.content.get
        50.wrap = |
}

Hat jemand eine Idee?

Danke für Tipps,
DF

DerFredster ·

... Wald und Bäume.
Ich hatte im noch im Header des Seitentemplates ein anderes Stylesheet eingebunden. Hat sich also geklärt.

pow ·

Hallo,

hab das selbe Problem, der frisst das CSS nicht #angry#

Extension Template Setup (root):

pdf_generator2.size = A4
pdf_generator2.pdfversion = 1.4
pdf_generator2.cssmedia = screen

includeLibs.tx_pdfgenerator2 = EXT:pdf_generator/class.tx_pdfgenerator2.php
pdf_generator2 = PAGE
pdf_generator2 {
	typeNum = 123
	stylesheet = fileadmin/sub/stylesheet.css
	config.pageGenScript = typo3conf/ext/pdf_generator2/gen_pdf.php
	config.admPanel = 0
	config.xhtml_cleaning = 0
	config.USERNAME_substToken =
	config.ftu = 0
	config.disableCharsetHeader = 0
	config.prefixLocalAnchors = 0
	bodyTag = <body>
	50 = CONTENT	
	50 < styles.content.get
}

Wieso nicht?!?!?!? Ich dreh echt schon am Rad :o

Hab den pdf_generator und auch den pdf_generator2 installiert.

Typo3 = 4.1.10

pow ·

Ok habs auf die alte Methode gelöst:

alle pdf_generator komplett gelöscht, einen Compare gestartet um alte Datenbankfelder zu eliminieren.

Neu installiert.

Es klappt.

Typo3... #angry#

kitze ·

dieser Beitrag hat mir weitergeholfen: http://www.blogix.net/2010/08/25/pdf_generator2-benutzt-css-nicht/

zusätzlich hab ich den base href gekillt:

pdf_generator {
        # Weil die Bild- und CSS-Dateien zur PDF-Generierung lokal geholt werden,
        # muss der basehref weg und die CSS-Dateien muessen ohne Timestamp eingebunden werden:
        config.pdf_generator2.regexp_search1 = /<base href="[^"]*" \/>/
        config.pdf_generator2.regexp_replace1 = <!-- und weg damit -->
        config.pdf_generator2.regexp_search2 = /\.css\?([0-9]{10})/
        config.pdf_generator2.regexp_replace2 = .css
}

Grüße

chainsaw81 ·

hi zusammen,

ich verzweifle ebenfalls am pdf_geneartor2 ...

Habe die EXT bereits bei einem anderen Kunden problemlos zum laufen gebracht, doch beim aktuellen Kunden ist der Wurm drin ...

Mir wird zwar ordnungsgmäß ein pdf erzeugt jedoch ohne Bilder. Ganz egal ob ich sie mit absolutem Pfad via TS.Obj einbinde oder via TemplaVoila mappe ... es erscheint nur ein kleiner Rahmen mit der alt="" Beschreibung.

Weiß jemand Rat?

kitze ·
chainsaw81 schrieb

Habe die EXT bereits bei einem anderen Kunden problemlos zum laufen gebracht, doch beim aktuellen Kunden ist der Wurm drin ...

Anderer Webserver? Andere Einstellungen im Apachen?

Bilder nur im fertigen PDF nicht dargestellt oder auch schon in der Preview mit type=XXX ?

chainsaw81 ·

hi,

die sache mit der preview sagt mir nichts, im manual steht dazu nichts geschrieben? kannst du mir mehr verraten?

es handelt sich um den gleichen hoster (hosteurope) jedoch um zwei verschiedene pakete (webpack vs. virtual server). das aktuelle problem tritt beim webpack auf.

ein auszug aus dem error log:
[Mon Apr 23 11:09:18 2012] [error] [client 148.188.x.xx] Status code:200, referer: http://www.xxx.de/2011/index.php?id=44
[Mon Apr 23 11:09:18 2012] [error] [client 148.188.x.xx] Fetching: http://www.xxx.de/2011/fileadmin/css/screen/printlayout.css, referer: http://www.xxx.de/2011/index.php?id=44
[Mon Apr 23 11:09:18 2012] [error] [client 148.188.x.xx] Status code:200, referer: http://www.xxx.de/2011/index.php?id=44
[Mon Apr 23 11:09:18 2012] [error] [client 148.188.x.xx] Fetching: http://www.xxx.de/2011/fileadmin/images/Logo_Praxis.jpg, referer: http://www.xxx.de/2011/index.php?id=44
[Mon Apr 23 11:09:18 2012] [error] [client 148.188.x.xx] Status code:200, referer: http://www.xxx.de/2011/index.php?id=44

sowohl das css wie auch die bilder werden ignoriert. tippe daher auf einen pfad-fehler? habe jedoch schon die baseurl etc. mit angegeben, ohne erfolg.
hat noch jemand eine idee?

danke und grüße

kitze ·
chainsaw81 schrieb

die sache mit der preview sagt mir nichts, im manual steht dazu nichts geschrieben? kannst du mir mehr verraten?

du hast ja für deine PDF-Version der Seite ein eigenes TypoScript-PAGE-Object angelegt. Dieses hat ja nen numType oder typeNum (kanns mir nie merken ;-)) und du kannst diese Variante ja einfach im Browser ausgeben: http://www.xxx.de/2011/index.php?id=44&type=123

chainsaw81 ·

ja das ist richtig, nur wenn ich die adresse mit type=123 eingebe will er sofort das pdf öffnen?

#pdf funktion
pdf_generator = PAGE
pdf_generator {
  includeCSS.pdf = fileadmin/css/screen/printlayout.css
  config.pdf_generator2 {
    regexp_search1 = /printlayout\.css\?([0-9]{10})/
    regexp_replace1 = printlayout.css
  }
}
#pdf link im footer
lib.pdfprint.10 = TEXT
lib.pdfprint.10.value = <img src="fileadmin/images/pdf.gif" title="Pdf erzeugen" alt="Icon PDF Version" /> PDF-Version
lib.pdfprint.10.postUserFunc = tx_pdfgenerator2->makePdfLink
lib.pdfprint.10.postUserFunc {
  target = _blank
  attachment = 0
}