Bonjours,
j'ai donc un xml comme suit:
Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 <?xml version="1.0" encoding="utf-8"?> <Listes> <Liste> <Categorie> <Produit> <Note></Note> </Produit> </Categorie> </Liste> </Listes>
Lequel doit être imprimer en format A4, selon une certaine mise en page.
- Sur 3 colonne, remplissant colonne après colonne, puis page suivante.
- Sur 1 à n page, la taille étant dépendante du nombre de catégorie/produit/note
Pour illustrer les saut de colonne à realisé, j'ai fait une maquette xml/css (FICTIVE*) bien charger et en trichant un peut (beaucoup) pour le second (ajout de balise page/colonne) pour arriver au rendu* voulu.
/!\ *le rendu est ce que l'on voit en affichant le xml dans un navigateur et pas le code en lui même.(fait sur google chrome)
fichier: "origine.xml"
fichier: "origine.css"
Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121 <?xml version="1.0" encoding="utf-8"?> <?xml-stylesheet type="text/css" href="origine.css"?> <Listes> <Liste Lid="1"> 1er liste <Categorie xCid="1"> 1er categegorie <Produit Pid="1"> 1er produit <Note Nid="1">1er note</Note > <Note Nid="2">2em note</Note > <Note Nid="3">3em note</Note > <Note Nid="4">4em note</Note > <Note Nid="5">5em note</Note > </Produit> <Produit Pid="2"> 2em produit <Note Nid="2">2em note</Note > <Note Nid="3">3em note</Note > <Note Nid="4">4em note</Note > <Note Nid="6">6em note</Note > <Note Nid="8">8em note</Note > </Produit> <Produit Pid="4"> 4em produit <Note Nid="2">2em note</Note > <Note Nid="3">3em note</Note > <Note Nid="4">4em note</Note > <Note Nid="5">5em note</Note > <Note Nid="8">8em note</Note > </Produit> <Produit Pid="5"> 5em produit <Note Nid="2">2em note</Note > <Note Nid="5">5em note</Note > <Note Nid="6">6em note</Note > <Note Nid="8">8em note</Note > <Note Nid="9">9em note</Note > </Produit> <Produit Pid="6"> 6em produit <Note Nid="1">1er note</Note > <Note Nid="3">3em note</Note > <Note Nid="4">4em note</Note > <Note Nid="5">5em note</Note > <Note Nid="9">9em note</Note > </Produit> <Produit Pid="9"> 9em produit <Note Nid="1">1er note</Note > <Note Nid="1">1em note</Note > <Note Nid="1">1em note</Note > <Note Nid="2">2em note</Note > <Note Nid="6">6em note</Note > </Produit> </Categorie> <Categorie Cid="2"> 2em categegorie <Produit Pid="1"> 1er produit <Note Nid="1">1er note</Note > <Note Nid="2">2em note</Note > <Note Nid="3">3em note</Note > <Note Nid="4">4em note</Note > <Note Nid="5">5em note</Note > </Produit> <Produit Pid="2"> 2em produit <Note Nid="2">2em note</Note > <Note Nid="3">3em note</Note > <Note Nid="4">4em note</Note > <Note Nid="6">6em note</Note > <Note Nid="8">8em note</Note > </Produit> <Produit Pid="4"> 4em produit <Note Nid="2">2em note</Note > <Note Nid="3">3em note</Note > <Note Nid="4">4em note</Note > <Note Nid="5">5em note</Note > <Note Nid="8">8em note</Note > </Produit> <Produit Pid="5"> 5em produit <Note Nid="2">2em note</Note > <Note Nid="5">5em note</Note > <Note Nid="6">6em note</Note > <Note Nid="8">8em note</Note > <Note Nid="9">9em note</Note > </Produit> <Produit Pid="6"> 6em produit <Note Nid="1">1er note</Note > <Note Nid="3">3em note</Note > <Note Nid="4">4em note</Note > <Note Nid="5">5em note</Note > <Note Nid="9">9em note</Note > </Produit> <Produit Pid="9"> 9em produit <Note Nid="1">1er note</Note > <Note Nid="1">1em note</Note > <Note Nid="1">1em note</Note > <Note Nid="2">2em note</Note > <Note Nid="6">6em note</Note > </Produit> </Categorie> </Liste> </Listes>
Code CSS : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68 <style type="text/css"> Listes{} Liste { display: block; width: 660px; height: 975px; font-size: 14pt ; font-family: arial ; font-weight: bold; color: DimGray; border-color: gray; border-width: 1px; border-style: solid; background-color: Wheat; } Categorie { display: block; float: left; width: 32%; font-size: 11pt ; font-family: arial ; padding: 2px; padding-left: 5px; margin: 2px; margin-left: 5px; background-color: BurlyWood; } Produit { display: block; font-style: italic; font-family: arial ; font-size: 10pt; padding: 2px; padding-left: 10px; margin: 2px; margin-left: 10px; background-color: Wheat; } Note { display: block; font-style: italic; font-family: arial ; font-size: 10pt; color: black ; font-weight: italic; padding: 2px; padding-left: 10px; margin: 2px; margin-left: 10px; background-color: Cornsilk; } </style>
là, soit tout le bloc categorie glisse a gauche(float) peut importe la taille soit il reste en dessous(block)..... bref pas bien....
je souhaite arrivé a quelque chose comme ca* (la je triche en ajoutant des balise et en coupant la categorie dans mon xml)
/!\ *toujours ce que l'on voit en affichant le xml dans un navigateur et pas le code en lui même.(fait sur google chrome)
fichier: "sortie.xml"
fichier: "sortie.css"
Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145 <?xml version="1.0" encoding="utf-8"?> <?xml-stylesheet type="text/css" href="sortie.css"?> <Listes> <Liste Lid="1"> 1er liste <page id="1"> <coln> <Categorie Cid="1"> 1er categegorie <Produit Pid="1"> 1er produit <Note Nid="1">1er note</Note> <Note Nid="2">2em note</Note> <Note Nid="3">3em note</Note> <Note Nid="4">4em note</Note> <Note Nid="5">5em note</Note> </Produit> <Produit Pid="2"> 2em produit <Note Nid="2">2em note</Note> <Note Nid="3">3em note</Note> <Note Nid="4">4em note</Note> <Note Nid="6">6em note</Note> <Note Nid="8">8em note</Note> </Produit> <Produit Pid="4"> 4em produit <Note Nid="2">2em note</Note> <Note Nid="3">3em note</Note> <Note Nid="4">4em note</Note> <Note Nid="5">5em note</Note> <Note Nid="8">8em note</Note> </Produit> <Produit Pid="5"> 5em produit <Note Nid="2">2em note</Note> <Note Nid="5">5em note</Note> <Note Nid="6">6em note</Note> <Note Nid="8">8em note</Note> <Note Nid="9">9em note</Note> </Produit> <Produit Pid="6"> 6em produit <Note Nid="1">1er note</Note> <Note Nid="3">3em note</Note> <Note Nid="4">4em note</Note> <Note Nid="5">5em note</Note> <Note Nid="9">9em note</Note> </Produit> <Produit Pid="9"> 9em produit <Note Nid="1">1er note</Note> <Note Nid="1">1em note</Note> <Note Nid="1">1em note</Note> <Note Nid="2">2em note</Note> <Note Nid="6">6em note</Note> </Produit> </Categorie> <Categorie Cid="2"> 2em categegorie <Produit Pid="1"> 1er produit <Note Nid="1">1er note</Note> <Note Nid="2">2em note</Note> </Produit> </Categorie> </coln> <coln> <Categorie Cid="2"> 2em categegorie <Produit Pid="1"> 1er produit <Note Nid="3">3em note</Note> <Note Nid="4">4em note</Note> <Note Nid="5">5em note</Note> </Produit> <Produit Pid="2"> 2em produit <Note Nid="2">2em note</Note> <Note Nid="3">3em note</Note> <Note Nid="4">4em note</Note> <Note Nid="6">6em note</Note> <Note Nid="8">8em note</Note> </Produit> <Produit Pid="4"> 4em produit <Note Nid="2">2em note</Note> <Note Nid="3">3em note</Note> <Note Nid="4">4em note</Note> <Note Nid="5">5em note</Note> <Note Nid="8">8em note</Note> </Produit> <Produit Pid="5"> 5em produit <Note Nid="2">2em note</Note> <Note Nid="5">5em note</Note> <Note Nid="6">6em note</Note> <Note Nid="8">8em note</Note> <Note Nid="9">9em note</Note> </Produit> <Produit Pid="6"> 6em produit <Note Nid="1">1er note</Note> <Note Nid="3">3em note</Note> <Note Nid="4">4em note</Note> <Note Nid="5">5em note</Note> <Note Nid="9">9em note</Note> </Produit> <Produit Pid="9"> 9em produit <Note Nid="1">1er note</Note> <Note Nid="1">1em note</Note> <Note Nid="1">1em note</Note> <Note Nid="2">2em note</Note> <Note Nid="6">6em note</Note> </Produit> </Categorie> </coln> <coln> </coln> </page> </Liste> </Listes>
La on voit bien la reprise de [catégorie/produit] après le saut de colonne...
Code CSS : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93 <style type="text/css"> Listes{} Liste { display: block; width: 660px; height: 975px; font-size: 14pt ; font-family: arial; font-weight: bold; color: DimGray; border-color: gray; border-width: 1px; border-style: solid; background-color: Wheat; } page { display: block; width: 650px; height: 940px; padding: 1px; margin: 1px; background-color: Cornsilk; } coln { display: block; float: left; width: 32%; height: 100%; font-size: 11pt; font-family: arial; padding: 2px; margin: 2px; background-color: gray; } Categorie { display: block; font-size: 11pt; font-family: arial; padding: 2px; padding-left: 5px; margin: 2px; margin-left: 5px; background-color: BurlyWood; } Produit { display: block; font-style: italic; font-family: arial; font-size: 10pt; padding: 2px; padding-left: 10px; margin: 2px; margin-left: 10px; background-color: Wheat; } Note { display: block; font-style: italic; font-family: arial; font-size: 10pt; color: black; font-weight: italic; padding: 2px; padding-left: 10px; margin: 2px; margin-left: 10px; background-color: Cornsilk; } </style>
Vue le travail à réalisé (et n'ayant jamais touché xsl)
-gestion colonne
-gestion page A4
sachant que cela ce fera via une application en C#
quel est la solution la plus simple a mettre en oeuvre et quel sont les prérequis pour ce faire.
PS: pour xsl, merci de laisser des liens car je trouve que de la doc pour html...
mais c'est le désert pour les formats imprimables A4
Partager