Améliorer la gestion des marges des images incluses dans du texte - commentaires Améliorer la gestion des marges des images incluses dans du texte 2006-02-20T13:30:13Z https://files.spip.org/Ameliorer-la-gestion-des-marges#comment385469 2006-02-20T13:30:13Z <p>Je viens d'installer [Spip 1 8 2g] et j'ai des problèmes avec les marges des images donc cet article m'intéresse fort<small class="fine d-inline"> </small>;-)</p> <p>Mais j'aimerais savoir, avant de l'utiliser, pourquoi vous dites que tout cela est réglé avec [Spip 1 8 2g]<small class="fine d-inline"> </small>?</p> <p>J'ai cherché et n'ai encore pas trouvé de réponse à cette question, c'est pourquoi j'ose vous la poser...</p> <p>Pardon si elle est naïve...<br class="manualbr">Merci d'avance de m'éclairer<small class="fine d-inline"> </small>;-)</p> > Remplacer le chenit (argo suisse-romand) des balises crééent par « img5|right » ou autre par des classes 2005-05-13T12:17:18Z https://files.spip.org/Ameliorer-la-gestion-des-marges#comment381066 2005-05-13T12:17:18Z <p>Salut,<br class="autobr"> Après avoir essayer ta solution, j'ai remarquer qu'elle ne fonctionnait pas sur mon spip 1.8.1.</p> <p>voilà le code corrigé :</p> <div class="precode"><pre class="spip_code spip_code_block" dir="ltr" style="text-align:left;"><code>// supprime le style="" des images afin de les traiter en class function classImg($texte) { // Chaine en entrée : <img src='IMG/jpg/protection.jpg' width='170' height='170' alt="" style="border-width: 0px; float: left; margin: 4px;" /> // Chaine en sortie : <img src='IMG/jpg/noprotection.jpg' width='170' height='170' alt="" class='spipimg_left' /> $pattern = "/img src='(.*)' width='(.*)' height='(.*)' alt=\"(.*)\" .*float: ([a-zA-Y0-9]*);.*\/>/"; $replace = "img src='$1' width='$2' height='$3' alt=\"$4\" class='spipimg_$5' />"; return preg_replace($pattern, $replace, $texte); }</code></pre></div> <p>ensuite, il suffit d'avoir ces style dans la CSS :</p> <div class="precode"><pre class="spip_code spip_code_block" dir="ltr" style="text-align:left;"><code>.spipimg_left, .spipimg_right, .spipimg_center { border-width: 0px; margin-top: 4px; margin-bottom: 10px; } .spipimg_left { float: left; margin-left: 0px; margin-right: 15px; } .spipimg_right { float: right; margin-left: 15px; margin-right: 0px; } .spipimg_center { float: center; margin-left: 15px; margin-right: 15px; }</code></pre></div> <p>Voilà, j'espere que ca pourra aider<small class="fine d-inline"> </small>!</p> > Améliorer la gestion des marges des images incluses dans du texte 2005-04-14T18:57:10Z https://files.spip.org/Ameliorer-la-gestion-des-marges#comment380348 2005-04-14T18:57:10Z <p>Ok, j'ai compris pourquoi ça ne marche pas. Vous devez appelez les images en mode « documents » et pas en mode image. C'est-à-dire écrire dans vos champs spip <code class="spip_code spip_code_inline" dir="ltr"><doc678|right></code> au lieu de <code class="spip_code spip_code_inline" dir="ltr"><img678|right></code>, qu'il y ait ou non un titre ou une légende liés à cette image. L'explication, c'est que SPIP renvoie juste l'image quand on appele <img... alors qu'il renvoie un div quand on appelle l'image en mode «<small class="fine d-inline"> </small>document<small class="fine d-inline"> </small>». Et comme c'est sur le div qu'on intervient,...</p> > Améliorer la gestion des marges des images incluses dans du texte 2005-04-14T12:11:44Z https://files.spip.org/Ameliorer-la-gestion-des-marges#comment380339 2005-04-14T12:11:44Z <p>Salut,</p> <p>Tout d'abord, je vous suggère d'utiliser les balises <code class="spip_code spip_code_inline" dir="ltr"><cadre></cadre></code> ou <code class="spip_code spip_code_inline" dir="ltr"><code></code> pour citer du code, sinon on sait rien lire et ça explose la mise en page du site.</p> <p>Je viens de refaire pas à pas l'installation, soit :</p> <ol class="spip"><li> installer un spip</li><li> placer le filtre dans le fichier <code class="spip_code spip_code_inline" dir="ltr">mes_fonctions.php3</code></li><li> ajouter les deux définitions de style</li><li> passer sur le filtre sur les champs ad hoc des squelettes</li></ol> <p>Et ça marche parfaitement.</p> <p>Je viens de faire ça avec la version CVS pour être sûr que ça passait. Ca passe. J'avais également testé ce code sur une version 1.8.</p> <p>Quelle version de SPIP utilisez-vous<small class="fine d-inline"> </small>?</p> <p>François</p> > Améliorer la gestion des marges des images incluses dans du texte 2005-04-14T11:48:17Z https://files.spip.org/Ameliorer-la-gestion-des-marges#comment380338 2005-04-14T11:48:17Z <p>Hello,<br class="autobr"> comprends pas ca ne fonctionne absolument pas chez moi<small class="fine d-inline"> </small>?<br class="autobr"> copier coller du script dans mes_fonctions</p> <p> <abbr title="rectifier_marges_images)">(#CHAPO</abbr><br> [(#TEXTE|justifier|rectifier_marges_images)]<br class="autobr"> dans mon squelette ...</p> <p>ma feuille de style<br class="autobr"> .spip_documents_left <i><br class="autobr"> margin-right : 0.5em<small class="fine d-inline"> </small>;<br class="autobr"> margin-bottom : 0.5em<small class="fine d-inline"> </small>;<br class="autobr"> </i></p> <p>.spip_documents_right <i><br class="autobr"> margin-left : 0.5em<small class="fine d-inline"> </small>;<br class="autobr"> margin-bottom : 0.5em<small class="fine d-inline"> </small>;<br class="autobr"> </i></p> <p>et voici la réponse code source<br class="autobr"> <img src='https://files.spip.org/IMG/jpg/ordinateur.jpg' style="border-width:0px;" width="200" height="271" alt="" align="left" hspace="5" vspace="3"></p> <p>comme s'il n'y avait aucun filtre<small class="fine d-inline"> </small>?</p> <p>Si vous avez une idée<small class="fine d-inline"> </small>?<br class="autobr"> Merci beaucoup d'anvance<br class="autobr"> penchaki</p> Remplacer le chenit (argo suisse-romand) des balises crééent par « img5|right » ou autre par des classes 2005-04-07T18:25:14Z https://files.spip.org/Ameliorer-la-gestion-des-marges#comment380147 2005-04-07T18:25:14Z <p>dans mes_fonctions.php3 :</p> <div class="precode"><pre class="spip_code spip_code_block" dir="ltr" style="text-align:left;"><code><?php function classImg($texte) { $pattern = "/img src='(.*)' style='.*' width='(.*)' height='(.*)'.*align='([a-zA-Y0-9]*)'.*\/>/"; $replace = "img src='$1' class='$4' width='$2' height='$3'/>"; return preg_replace($pattern, $replace, $texte); } ?></code></pre></div> <p>Je sais, ça ressemble beaucoup à ce que propose François Schreuer mais j'ai pas dû tout comprendre. Chez moi, les images dans le texte deviennent simplement des sans classe. En tout cas, cette exemple est fonctionne bien chez moi.</p>