2010-10-20 4 views
1

La table réelle est beaucoup plus grande que la maquette que je vais vous montrer, mais cette maquette explique le problème. S'il vous plaît aller à http://www.monteandjanicechan.com/test_table.cfmUtiliser cfdocument pour générer des fichiers PDF

L'épaisseur des lignes de la grille dans le tableau sont à venir comme je le veux dans la version HTML. Vous pouvez créer une source de vue pour voir les éléments HTML réels qui sont générés. Maintenant, je mets ces codes HTMl dans la balise cfdocument avec format = "pdf"; S'il vous plaît aller au http://www.monteandjanicechan.com/test_table_pdf.cfm. Vous verrez l'épaisseur incohérente de la ligne de la grille pour éternuer et pour la grippe. Pour illustrer davantage mon propos, j'ai supprimé les couleurs d'arrière-plan et généré un PDF; veuillez aller au http://www.monteandjanicechan.com/test_table_pdf_nocolor.cfm. L'épaisseur des lignes de la grille est revenue à la normale. Cela m'amène à croire que la couleur de fond d'une cellule va en quelque sorte à la cellule juste à côté et couvrir la frontière. Voici les choses étranges:

1) Cela se passe SEULEMENT dans rowspan et SEULEMENT passant de la deuxième rangée sur le reste de l'rowspan. Par exemple, le premier éternuement est correct mais la bordure du deuxième éternuement n'est pas correcte; la première grippe va bien, mais les frontières de la deuxième et de la troisième grippe ne sont pas correctes.

2) La couleur d'arrière-plan ne couvre PAS la bordure de sa propre cellule; il ne couvre que la bordure de la cellule juste à côté.

Ma question est, comment puis-je résoudre ce problème?

Toutes les suggestions et les pointeurs sont grandement appréciés.

Répondre

1

L'épaisseur varie également dans la version HTML. Je pense que le problème est avec vos règles CSS.

Cela fonctionne comme je le pense, bien qu'il puisse probablement être amélioré.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html> 
    <head> 
    <title>Test Table</title> 
    <style type="text/css"> 
    td { 
     border-top: 1px solid black; 
     border-left: 1px solid black; 
    } 
    .right { border-right: 1px solid black; } 
    .bottom {border-bottom: 1px solid black; } 
    </style> 
    </head> 
    <body> 
<table border="0" cellspacing="0" cellpadding="5"> 
    <tr> 

    <td class="a_style">Name</td> 
    <td class="a_style">Problem</td> 
    <td class="right">Treatment</td> 
    </tr> 
    <tr> 
    <td class="b_first">Jane Doe</td> 
    <td class="c_first" style="background-color:#ffff99">Cough</td> 

    <td class="right" style="background-color:#ffff99">Vitamins</td> 
    </tr> 
    <tr> 
    <td class="b">John Doe</td> 
    <td class="c" style="background-color:#99FF99">Sneezing</td> 
    <td class="right" rowspan="2" style="background-color:#99FF99">Nose Spray</td> 
    </tr> 

    <tr> 
    <td class="b">Joe Schmo</td> 
    <td class="" style="background-color:#99FF99">Sneezing</td> 
    </tr> 
    <tr> 
    <td class="b">Joe Six Pack</td> 
    <td class="c" style="background-color:#cccccc">Flu</td> 

    <td class="right bottom" rowspan="3" style="background-color:#cccccc">Flu Shot</td> 
    </tr> 
    <tr> 
    <td class="b">Joe The Plumber</td> 
    <td class="" style="background-color:#cccccc">Flu</td> 
    </tr> 
    <tr> 

    <td class="bottom">Joe Doe</td> 
    <td class="bottom" style="background-color:#cccccc">Flu</td> 
    </tr> 
</table> 
</body> 
</html> 
+0

Non, ce n'est pas ce que je veux. Comme je l'ai écrit, http://www.monteandjanicechan.com/test_table.cfm est exactement ce que je veux que la table ressemble. Certaines grilles sont plus audacieuses que les autres; c'est INTENTIONNEL. Les grilles plus audacieuses sont là pour diviser les catégories et c'est ainsi que mon client le veut. –

+0

Si vous le pouvez, mettez côte à côte les sites http://www.monteandjanicechan.com/test_table.cfm et http://www.monteandjanicechan.com/test_table_pdf.cfm. Pour Joe Schmo et John Doe, les deux ont éternuement comme leurs problèmes. Regardez la cellule Traitement pour ces deux lignes. La bordure gauche du traitement (Nez Spray) ne s'applique qu'à John Doe mais pas à Joe Schmo dans le PDF. De même, Joe Six Pack, Joe Le Plombier, et Joe Doe ont tous des vaccins contre la grippe. Cependant, la bordure gauche des vaccins contre la grippe ne s'applique qu'à Joe Six Pack, mais pas à Joe The Plumber et Joe Doe. C'est l'irrégularité dont je parlais. –

+0

Ah, je vois ce que tu veux dire. Lorsque je zoome, la couleur est décalée de 1 pixel vers la droite et/ou vers le bas. C'est ce qui cause le problème, je ne sais pas comment vous y parvenez. Est-ce qu'il le fait si le format cfdocument est également flashpaper? Cela pourrait être un bug avec le générateur PDF. – Jason

Questions connexes