28220 sujets

CSS et mise en forme, CSS3

Bonjour !
Je développe une application qui doit générer des étiquettes afin qu'elles soient imprimées sur un papier adhésif, dont le format est bien déterminé.
Mon appli php génère donc en html des tableaux contenant tout un tas d'informations. Ces tableaux html sont formatés avec un
<link rel="style.css" media="print">
Un aperçu avant impression me confirme qu'ils apparaissent bien, sauf que la 5ème est coupée (il m'en faut 4 par page).
J'ai fait cela :
<table class="etq">
mon étiquette
</table>

Et dans mon fichier css,
table.etq {border: 1px solid black; padding: 0; height: 58mm; page-break-inside: avoid;}

afin qu'une étiquette ne soit pas coupée à la fin d'une page à l'impression (du moins c'est ce que je crois que cette propriété css fait !). Mais rien n'y fait : j'ai une étiquette (la 5ème) qui est coupée en bas de page lorsque je fais "aperçu avant impression".
Qu'en pensez vous ?
Salut,

pourquoi ne génères tu pas un PDF ?

Tu génère un fichier XML avec ton PHP et après tu appliques une feuille XSLT qui le transforme en PDF et roulez jeunesse.

Règle d'or :
Utiliser les outils adaptés à ce que vous voulez faire Smiley cligne
Bonsoir,

Et y a t'il de possibiité de voir un exemple pour faire cela ? Je suppose que tu utilises FPDF ?

merci
doomer a écrit :
Bonsoir,

Et y a t'il de possibiité de voir un exemple pour faire cela ? Je suppose que tu utilises FPDF ?

merci


Je l'ai jamais fait, mais c'est possible.

Pour le traitement PHP -> XML, simpleXML de PHP5
Pour la feuille XSLT, google devrait trouver comment faire.
Bonjour,

CSS print ne permet pas, en l'état actuel, des impressions ayant le degré de précision requis ici, même en prenant la précaution de redéfinir l'ensemble du tableau avec les unités appropriées (cm) et d'avertir l'utilisateur qu'il doit vérifier que la configuration d'impression depuis son navigateur ne crée pas de marges problématiques.

PDF est effectivement une alternative plus fiable.
Effectivement, la solution fpdf m'a été soufflée. Je l'avais laissée de côté parce que mes étiquettes étaient assez complexes (les infos étaient tirées de trois requetes sql minmum, il pouvait y avoir jusqu'à trois pictogrammes, et un code barre y était généré). La solution fpdf m'avait semblé difficile à adapter. J'aimerais m'en affranchir... Smiley ohwell
Peut-être que la réponse à cette question m'aidera à trancher :
- est-ce que la résolution de l'écran de l'utilisateur influerait sur la mise en page papier avec la solution css ?
Non, la résolution n'influe pas, c'est la configuration des outils de gestion de l'impression des pages web qui intervient. Chose sur laquelle tu n'as aucun contrôle.

Et même si d'aventure tu obtenais un résultat satisfaisant chez toi, rien ne dit que le résultat chez moi, avec ma configuration d'impression, serait acceptable.

Tu n'as pas le choix sur ce coup là, tu dois générer ton PDF.
Mais ça ne change pas grand chose, tu génère un fichier XML de la même façon que tu génères ton fichier HTML actuel, il n'y a aucune difficulté supplémentaire, c'est la même chose.

Ensuite il ne te reste qu'à appliquer une XSLT adaptée.
OK. Je vais donc m'attaquer à fpdf et un script qui me tend les bras sur fpdf.org qui semble adapté à mon prob Smiley murf Smiley sweatdrop . Je vous tiens au courant. Merci à tous (et à toutes bien sûr).