[CSS] Pagina langer maken

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • T1psY
  • Registratie: December 2006
  • Laatst online: 13:12

T1psY

Dumo-Technics

Topicstarter
Ik ben bezig met het maken van een factuur systeem voor mijn zaak in PHP. Nu kom ik echter tegen het volgende probleem:

Op 1 pagina geef je de naam op van de klant, eventueel maak je een nieuwe klantenfiche aan, ... je voegt er de producten op toe e.d. Als dit gebeurt is druk je op submit en word alles opgeslagen in de database. Als je nu de factuur wil bekijken word er een nieuw venster open gedaan met hier de factuurgegevens in. Dit werkt perfect. Nu zou ik graag willen dat de tabel waarin de gegevens staan, ongeacht hoeveel rijen met producten je gebruikt, 1 volledige pagina (A4) lang word, zodat als ik hem print hij altijd goed uit komt op de pagina.

http://www.dumo-technics.com


Acties:
  • 0 Henk 'm!

  • Semyon
  • Registratie: April 2001
  • Nu online
Het lijkt me dat dit vrij ondoenlijk is. HTML is van nature niet gemaakt voor printen en je hebt er niet veel controle over. Verder weet je natuurlijk het papier formaat van de printer helemaal niet (A4/US letter, want dan ook) maar het grootste probleem is nogwel dat iedereen natuurlijk zijn pagina's anders rendert. Misschien omdat ze hun eigen webbrowser hebben misschien omdat ze hun eigen voorkeurinstelling voor lettertypes en grotes hebben.

Als je echt graag wilt dat het printen goed gaat, moet je een PDF of een PS gaan genereren. Dan kan je netjes een pagina aanbieden, en ik heb wel meer webpagina's gezien die voor een print opdracht een PDF ter download aan bieden.

In HTML kan je lijkt mij gewoon weg niets afdwingen over hoe het geprint moet gaan worden en het hele idee van "pagina" is natuurlijk niet aanwezig in HTML, daarvoor hebben we scrollbars.

[ Voor 5% gewijzigd door Semyon op 08-02-2010 00:56 ]

Only when it is dark enough, can you see the stars


Acties:
  • 0 Henk 'm!

  • _js_
  • Registratie: Oktober 2002
  • Laatst online: 18-08 21:31
Met CSS kun je page-break-before en page-break-after styles instellen, daarmee kun je doen wat je wilt.

Acties:
  • 0 Henk 'm!

  • Semyon
  • Registratie: April 2001
  • Nu online
_js_ schreef op maandag 08 februari 2010 @ 01:52:
Met CSS kun je page-break-before en page-break-after styles instellen, daarmee kun je doen wat je wilt.
Nou kijk aan... had ik het mis.

Only when it is dark enough, can you see the stars


Acties:
  • 0 Henk 'm!

  • Arcane Apex
  • Registratie: Juni 2003
  • Laatst online: 30-01 15:19
Als je de hoogte van de tabel met PHP wilt aanpassen zodat het altijd op een A4 zal passen, dan zul je rekening moeten houden met het aantal DPI waarmee de pagina geprint wordt. Meestal is dit 300DPI, maar het kan verschillen per printer, omdat in de instellingen van de printer een andere DPI waarde gekozen kan zijn.

Je zult dus de afmetingen van de tabel dynamisch kunnen laten berekenen mbv PHP, maar daarbij wel in het achterhoofd houdend op hoeveel DPI er geprint zal worden.

Misschien zul je zelfs een text field kunnen aanmaken waarin je kan typen met hoeveel DPI er geprint gaat worden en aan de hand daarvan de tabel dynamisch door PHP kunnen laten opbouwen.

[ Voor 16% gewijzigd door Arcane Apex op 08-02-2010 05:54 ]


Acties:
  • 0 Henk 'm!

  • HuHu
  • Registratie: Maart 2005
  • Niet online
Je kunt ook gewoon met centimeters werken in CSS. Als je een plaatje wil afdrukken op 10x15 cm (op 300 dpi), dan maak je eerst in Photoshop een plaatje met die afmetingen. In je HTML doe je dan:

XHTML:
1
<img src="plaatje.jpg" style="width:10cm; height:15cm;" />


Als je die style weg laat, dan wordt het plaatje veel te groot. Een browser werkt standaard met 96 dpi, dus je 300 dpi plaatje wordt dan ongeveer 3x zo groot op het scherm. Door de breedte en hoogte vast te zetten gaat je browser schalen, wat erg lelijk wordt, maar tijdens het afdrukken wordt wel de hoge resolutie gebruikt en ziet het er goed uit.

Als je dan een tabel wil maken kun je ook de hoogte specificeren in centimeters.

[ Voor 6% gewijzigd door HuHu op 08-02-2010 09:06 ]


Acties:
  • 0 Henk 'm!

  • Creepy
  • Registratie: Juni 2001
  • Laatst online: 20:12

Creepy

Tactical Espionage Splatterer

(jarig!)
Even een klein tikje naar Webdesign, Markup & Clientside Scripting aangezien we hier met HTML en CSS bezig zijn en niet met PHP ;)

"I had a problem, I solved it with regular expressions. Now I have two problems". That's shows a lack of appreciation for regular expressions: "I know have _star_ problems" --Kevlin Henney


Acties:
  • 0 Henk 'm!

  • MueR
  • Registratie: Januari 2004
  • Laatst online: 19:46

MueR

Admin Tweakers Discord

is niet lief

En dan maar even een titelfix, aangezien het niet echt over PHP gaat

Anyone who gets in between me and my morning coffee should be insecure.


Acties:
  • 0 Henk 'm!

  • T1psY
  • Registratie: December 2006
  • Laatst online: 13:12

T1psY

Dumo-Technics

Topicstarter
Ik heb het gewoon in een PDF laten zetten, toch bedankt allemaal.

http://www.dumo-technics.com

Pagina: 1