druckansicht erzeugen
mamue
- programmiertechnik
liebe liste,
hat jemand von euch eine ahnung, wie sich möglichst einfach druckversionen von (statischen) html-seiten erzeugen lassen (wo etwa das menü oder andere teile der html-seite weggelassen wird, farben verändert werden, etc)? ich nehme an, dass dafür css wohl nicht ganz ausreichen wird; toll wäre es, wenn ich dabei mit php auskommen würde ;=)
danke für eure hilfe!
mfg
mamue
Hi
CSS ist da wirklich am besten.
Du kannst mit <div> einen bereich definieren und den mit attributen wie "width:17cm" exakt 17cm breit erscheinen lassen. So habe ich auch schon etliche Seiten formatiert die Für den Ausdruck bestimmt sind.
Gruss Christoph
PS: Um einen "Back" knopf zu realisieren der nicht beim ausdruck erscheint nimm ein hintergrund bild und leg ein unsichtbares GIF drüber. Dann erscheint der Hintergrund nicht beim ausdruck aber auf dem Bildschirm sieht man den "Back" button
hi
das ist zwar nett, wird allerdings in verbindung mit einem komplexeren Layout nicht reichen fürchte ich.
Wie du die Druckansicht machst, hängt von deiner Art ab, content zu managen. Wenn du ein einziges File für das template hast, in das du entweder alles einfügst, oder dass du wo einfügst, ist das einfach, indem du das file weglässt.
Ob die breite von deinen Tabellen in ein A4 Blatt passt, hängt davon ab, ob du die breitenangaben in Prozent oder nicht gemacht hast. Prozentangaben beziehen sich beim druck auf die papierbreite, andere angaben beziehen sich jedoch auf fixe werte, die eingehalten werden, egal ob die seite aus ist, oder nicht.
Bei einer Druckansicht solltest du eine Serifen-schriftart verwenden, da dies augenfreundlicher ist - Helvetica oder Times new Roman beispielsweise. Ja und das ist auch schon alles im prinzip ;)
Wie du die Druckansicht machst, hängt von deiner Art ab, content zu managen. Wenn du ein einziges File für das template hast, in das du entweder alles einfügst, oder dass du wo einfügst, ist das einfach, indem du das file weglässt.
mit templates wollte ich eigentlich nicht arbeiten, weil die seiten doch sehr verschieden sein werden; das ist auch der grund, warum ich mir kein kleines cms mit php und mysql baue - da wäre die druckansicht leicht realisierbar ...
hallo
nunja, dann musst du den "content" der page irgendwie als solchen deklarieren, also in html code heisst das, dass du irgendwo die zeilen
<!--CONTENTSTART-->
...dein gesamter text den du ausdrucken willst...
<!--CONTENTEND-->
einbauen müsstest
nun wäre es ein leichtes, den content z.b. über reguläre ausdrücke herauszufiltern:
$printstr=ereg_replace("[]*<!--CONTENTSTART-->([]*)<!--CONTENTEND-->[]*","\1",$gesamteseitealsstring);
Der Regexp hier wird übrigens nicht funktionieren, einfach aufrund der architektur der regexpe her, allerdings denke ich, bringts rüber was ich meine (wenn du reguläre ausdrücke verstehst zumindest)
Hallo Mamue,
hat jemand von euch eine ahnung, wie sich möglichst einfach druckversionen von (statischen) html-seiten erzeugen lassen (wo etwa das menü oder andere teile der html-seite weggelassen wird, farben verändert werden, etc)? ich nehme an, dass dafür css wohl nicht ganz ausreichen wird; toll wäre es, wenn ich dabei mit php auskommen würde ;=)
Du kannst mit CSS für unterschiedliche Ausgabemedien, z.B. Bildschirm und Drucker angeben.
Dann bekommen die Sachen, die nicht ausgedruckt werden sollen in ein oder, wenn es das Layout erfordert, in mehrere <DIV>-Tags (oder auch einzlne <TR>- oder <TD>-Tags), welche dann ein unterschiedliches Verhalten haben, je nach Ausgabemedium, z.B. für Farbe oder eben für Sichtbarkeit.
Seihe http://selfhtml.teamone.de/css/formate/einbinden.htm#link_media
Dieses unterschiedliche CSS-Verhalten ist dann _nur_ für Drucker display:none; dann wird das Tag beim Drucken nicht angezeigt und verbraucht auch keinen Anzeige-Platz, so als ob es nicht da wäre. (geht ab N4 und IE4; der Linux-Konqueror kanns auch in KDE 2.2.1).
Siehe http://selfhtml.teamone.de/css/eigenschaften/positionierung.htm#display
Und wenn die Seiten vom Layout etc. sonst schon druckerfreundlich sind, kann man damit dann auch einen DRUCK-Button mit verschwinden lasse.
viel Erfolg
Stephan Koops