Bonjour,
je viens d'installer un bouton "imprimer" sur mon site.

dans la balise head :

<script language="javascript" type="text/javascript">
                        function imprime() {
                        if (typeof(window.print) != 'undefined')
                        { window.print(); }
                                }
                        </script>

Dans la balise body

<a href='#'  onclick='imprime();'>Imprimer</a>

Resultat : le bouton marche bien. Par contre il n'imprime pas le texte en entier.... seulement une partie... Comment faire ?
Merci

9 réponses


Salut,

Si tu ne nous donne pas plus de détails et de code on va avoir beaucoup de mal à t'aider...
Qu'entends-tu par "il n'imprime pas le texte en entier.... seulement une partie" ? Peut-être une capture d'écran pourrait nous aider ?..

Tu as une partie réservée au style de l'impression dans ton CSS rassure-moi (via @media print) ?

Voici des captures d'ecran de la page et du fichier .pdf

Donc c'est ça tu n'as pas stylisé ton print.. As-tu fait un minimum de recherches avant de venir poster ici ? http://www.alsacreations.com/tuto/lire/586-feuille-style-css-print-impression.html

Oui j'ai fait des recherches avant de poster. J'ai une feuille de style pour le print (minimaliste), ça ne depend que de ça ?
Je ne comprend pas pourquoi le texte ne s'affiche pas pour autant, feuille de style ou non ...

body { 
  background-color :#fff;
  font-family :Serif;
  font-size :15pt;
}

#page {
  margin :0;
  border :none;
}

#banner, #menuright, #footer {
  display :none;
}

h1#top { 
  margin :0;
  padding :0;
  text-indent :0;
  line-height :25pt;
  font-size :25pt;
}

h2, h3, #contenu h3, #contenu a, a {
  color :#000;
}

j'ai plusieurs feuille de style en media = all et une fuille de style en media= print . Il y a des priorités sur les feuilles de styles ?

Elle se lisent dans le sens que tu les mets

<link rel="stylesheet" href="mon_style1.css" media="all" /> <!-- Se lira en premier -->
<link rel="stylesheet" href="mon_style2.css" media="all" /> <!-- Se lira en deuxième -->
<link rel="stylesheet" href="mon_style3.css" media="print" /> <!-- Se lira en dernier -->

Il faut aussi que tu pense à bien “supprimé” tout les styles des balises que tu enlève !

Sur mon pdf le texte ne continu pas sur les autres pages, savez vous pourquoi et surtout comment faire ?

Bonjour.
Ton site est statique ou dynamique ?
Car s'il n'est pas statique, tu devrais plutôt générer une page en PDF au lieu de ne faire qu'avec que du CSS et du javascript.
Il y a plusieurs librairies que ce soit pour le PHP ou d'autre langages pour générer des fichiers PDF, dont par exemple WKHTMLtoPDF et HTML2PDF.

Bonjour Lartak,

Oui mon site est dynamique. Tes solutions ont l'air pas mal mais pas evidente a mettre en place. Je vais regarder de plus pres. Merci