SPIP - Contrib

[ar] [en] [es] [fr] [it]



Accueil du site > Rédaction > Archives Rédaction > Filtres Mise en page pour avant Spip 1.9

Ajouter une lettrine aux articles

mercredi 8 janvier 2003, par Philippe Allart. Dernier ajout mercredi 6 octobre 2004


Ce petit filtre, très simple à installer vous permettra de donner encore plus de classe à vos articles.


VOICI un filtre qui détecte la première lettre du premier paragraphe de l’article et qui la transforme en lettrine.

Vous trouverez ici un exemple en ligne du résultat : http://www.illico.org/article.php3?...

Le filtre peut fonctionner en mode caractère ou en mode image.

En mode caractère il applique un tag <font size="+3">...</font>, en mode image il remplace le caractère par une image, s’il trouve celle-ci dans le sous-répertoire lettrines/.

En mode image, le texte peut être ajusté au choix sur le haut ou sur le bas de la lettrine. Un jeu d’images est fourni pour faire les tests.

Vous êtes pressé d’essayer ? Pas de problème :

- téléchargez l’archive jointe à cet article, et décompressez-la sous la racine de votre site. A ce stade, vous aurez déjà fait les trois quarts du travail.

- Ajoutez la ligne

require("lettrines.php3");

dans votre fichier mes_fonctions.php3.

- Dans vos squelettes, il vous reste à utiliser le filtre de la manière suivante

(#TEXTE|lettrine)

- Videz le cache.

Si ça ne marche pas, et après avoir vraiment tout essayé, lisez donc le fichier README_lettrines :-)

Ah ! et si vous avez le cœur à l’ouvrage, il y a aussi un TODO_lettrines à lire...

A vous de jouer.

Documents joints

  • Le paquetage Le paquetage (TGZ - 32.4 ko)

    A décompresser directement dans le répertoire racine.


Répondre à cet article

  • > detail d’orthographe sur site exemple

    10 janvier 2003 14:10, par NicolasR

    -  —)4 juste un détail sur ton site exemple, je n’ai pas trouve le moyen de te contacter directement, aussi j’utilise ce commentaire, ici http://www.illico.org/article.php3?..., dans la barre du haut "accueil" est ecrit "acceil" @+ nicolas

    Répondre à ce message

    • > majuscule pour lettrine 22 mars 2005 17:05, par jeremy

      bonjour, le filtre fonctionne très bien chez moi, et je vous en remercie. toute fois, j’ai une petite question :

      - > comment dois-je modifier le filtre pour que le mot contenant la lettrine soit en minuscule et non en majuscule ?

      J’ai tenté quelque petite bidouilles, mais rien ne marche.

      Je vous remercie par avance, et merci pour ce site très utile... a bientot.

      Répondre à ce message

      • > majuscule pour lettrine 22 mars 2005 21:21, par jeremy

        j’ai réussi a parvenir a mes fin en enlevant les lignes 37 et 38 du fichier lettrine.php.
        - Par contre je n’arrive pas a placé la lettrine en bas, pour que le haut de la lettrine sois aligné au haut des autres caractères. quelqu’un a une idée ? merci

        Répondre à ce message

      • > majuscule pour lettrine 22 mars 2005 21:26, par jeremy

        j’ai réussi a aligné la lettrine en bas en faisant

        - if ($position_lettrines == "bottom") $position_lettrines = "left" ; if ($position_lettrines != "left") $position_lettrines = "top" ;

        a la ligne 21, mais le problème, c’est que la ligne en dessous de la lettrine est décalé. En faite, j’aimerais que la ligne en dessous se décale vers la droite, pour pouvoir intègré la lettrine, et non pas vers le bas.

        si quelqu’un a une idée.. merci

        Répondre à ce message

        • > majuscule pour lettrine 29 mars 2005 14:42

          j’ai l’impression que cette contrib est morte, j’arrive un peu tard......

          Répondre à ce message

          • > majuscule pour lettrine 5 août 2007 22:54, par Quentin

            Pour info, l’utilisation de la lettrine conjuguée avec l’insertion d’images dans les articles pour la version 1.9.2b fait planter l’espace privé. (la page de l’article devient complètement blanche)...
            Quelqu’un a envie de s’y coller pour y remédier ? ;-)

            Répondre à ce message

    Retour au début des forums

  • > Ajouter une lettrine aux articles

    1er février 2004 20:54, par Sébastien de Cornuaud

    Pour les maniaques de l’espace typographique, voici une petite contribution :

    1. Créer le style suivant en le personnalisant à votre guise

    .lettrine {
            float: left;
            font-size: 50px;
            font-weight: bolder;
           height: 40px;
            width: 40px;
            line-height: 40px;
    }

    2. Dans le fichier lettrines.php3 modifier la ligne 48 comme suit :

    return ($debut . "<div class=\"lettrine\">" . $I . "</div>" . $fin);

    3.Supprimer le repertoire lettrines.

    Ainsi vous obtiendrez une vraie lettrine typographique (dans mon cas sur 3 lignes). De plus cela n’altere en rien le référencement ou la lecture par un logiciel de synthèse vocal. Pour modifier la taille de la lettre, n’oublier pas de changer le paramètre line-height qui permet de "caler" la lettrine dans l’alignement du heut du paragraphe, ainsi que les paramètres height / width qui controle la taille de la boîte et donc le blanc typo.

    En espérant que cette contrib satisfera les accros de la typo.

    Répondre à ce message

    • > Ajouter une lettrine aux articles 10 février 2004 23:26, par Sébastien

      Encore une chose : si votre article commence par une image, la lettrine ne s’affiche qu’au paragraphe suivant.

      Pour y remédier : Remplacer à la ligne 64 :

      ereg("^(.*<[Pp][^>]*> *)" . $expr_lettre, $lignes[$i], $liste))

      par

      ereg("^(.*<[^>]*>*> *)" . $expr_lettre, $lignes[$i], $liste))

      Au lieu d’exclure la balise

      ça ignore toutes les balises...

      Répondre à ce message

      • > Ajouter une lettrine aux articles 12 février 2004 01:25, par Sébastien

        J’y suis allé un peu vite. Voici la condition dans son intégralité :

        if (ereg("^( *)" . $expr_lettre,  $lignes[$i], $liste) ||
           ereg("^(.*" . quotemeta($GLOBALS["fin_intertitre"])." *)".$expr_lettre, $lignes[$i], $liste) ||
           ereg("^(.*<[Pp][^>]*> *)".$expr_lettre, $lignes[$i], $liste)||
           ereg("^(.*<[^>]*>*> *)" . $expr_lettre, $lignes[$i], $liste))

        Sans ça il y a un problème avec les balises de paragraphe

        Répondre à ce message

    • Merci pour cette contribution.

      Plutôt que de définir le style lettrine en px je l’ai défini en em. Cela à l’avantage de créer une lettrine qui s’ajuste à la taille du texte et qui dans mon cas prend approximativement trois lignes.

      .lettrine {
            float: left;
            font-size: 4.3em;
            font-family: times;
            margin: 0em;
            padding-top: 0.1em;
            padding-right: 0.1em;
            line-height: 0.7em;
      }

      Ca fait bricolage mais le rendu pas mal. A voir sur www.cuverville.org (le sommaire et les pages intérieures ont des lettrines de tailles différentes).

      PS : Pour l’instant je n’arrive pas à faire fonctionner la modif. qui supprime tous les tags et permet d’afficher une lettrine s’il y a une image au début du texte. Je vais réessayer.

      Répondre à ce message

      • > > Ajouter une lettrine aux articles 2 octobre 2005 11:33, par Philou1360

        Bonjour,

        Les lettrines ne fonctionnent pas avec la version 1.8.2d de SPIP dès qu’il y a une image dans l’article ! Quelqu’un aurait-il la solution ?

        Merci Philou1360

        Répondre à ce message

      • > > Ajouter une lettrine aux articles 26 octobre 2005 22:57, par dany

        PS : Pour l’instant je n’arrive pas à faire fonctionner la modif. qui supprime tous les tags et permet d’afficher une lettrine s’il y a une image au début du texte. Je vais réessayer.

        En fait il faut reprendre la condition dans son intégralité depuis la ligne 59 du fichier lettrines.php3. Et là, même avec une image, la lettrine est générée.

        Cependant, le filtre |lettrine| annule |justifier| C’est dommage, quelqu’un a t il résolu ce problème ??

        Merci

        dany

        Répondre à ce message

    Retour au début des forums

  • Bonjour,

    il y a un petit probleme, la lettrine fonctionne bien mais les majuscules des autres phrases du paragraphes contenant la lettrine ont disparu.

    exemple : cliquez ici

    Une idée ?

    Merci

    Répondre à ce message

    Retour au début des forums

  • > Ajouter une lettrine aux articles

    17 décembre 2003 10:41, par Julien Bidoret

    Ouaip... Attention à ce que vous nommez lettrine. Ici, seul le mode image avec calage en haut est -presque- correct. Le reste est une hérésie typographique assez dégueulasse. Une lettrine est un caractère qui débute un paragraphe en s’incrustant dans les (2,3 ou douze)premières lignes du paragraphe, calée sur la deux trois ou douzième ligne de base. Et en aucun cas une lettre plus grande que les autres alignées sur la première ligne de base. Juste pour dire que c’est pas mal de pousser un peu l’édition électronique à respecter un peu les critères de lisibilité, de composition typo (etc.) mis au point par quelques centaines d’années d’édition papier. Ce filtre, bien foutu, doit donc être utilisé avec parcimonie et précision. Faire gaffe entre autres à la taille de la typo qui vient derrière, qui si elle est fonction des préférences utilisateur, ne sera jamais calée correctement...

    Voir en ligne : minimome

    Répondre à ce message

    • > Ajouter une lettrine aux articles 24 janvier 2004 12:24

      C’est tout à fait exact et c’est triste de voir l’art typographique disparaître à petit feu... J’ajouterai tes explications par les 1/2 cadratins qu’il faut mettre également devant les lignes qui habillent la lettrine, sans oublier que le mot qui suit la lettrine doit être en capitales... Arfff que de souvenirs tout ça ;-)

      Répondre à ce message

    Retour au début des forums

  • > Ajouter une lettrine aux articles

    19 mars 2003 10:23, par Talou

    Beaucoup plus simple et surtout accessible pour tous : utiliser es feuilles de styles ! dans le css, mettre :

    P:first-letter {
       font-size: 200%;
       font-weight: bold;
    }

    puis encadrer ses paragraphes des balises <p></p> et voilà ! les lettrines sont en place ! pas d’image à charger, on peut choisir sa police, on est accessible et conforme et sans toucher à spip... c’est t-y pas cool ? :o)

    Répondre à ce message

    Retour au début des forums

  • > Ajouter une lettrine aux articles

    15 décembre 2003 11:48, par Delphiste47

    Bonjour, Juste un petit soucis, si je mets un titre en gras dans mon article, par exemple : 1-Généralités : Bla bla .... ma lettrine ne fonctionne pas mais si je commence par Bla bla.... j’ai bien ma lettrine ?? Quelqu’un à une idée ? merci

    Répondre à ce message

    Retour au début des forums

  • > Ajouter une lettrine aux articles

    21 novembre 2003 15:25

    Petit probleme,

    la lettrine ne fonctionne pas si on a un tag image qui commence le texte, le pb est identique avec CSS, si ce script pouvait faire son identification premiere lettre apres un tag, ce serait bien !

    sinon first letter moi le l’applique a d’autres balises que le p et ca marche enfin sous IE !

    Florent

    Répondre à ce message

    Retour au début des forums

  • > Ajouter une lettrine aux articles

    13 novembre 2003 18:03

    Salut

    Script qui fonctionne très bien, mais attention si on utilise les images il faut ajouter un border=0 pour éviter d’avoir un cadre autour de l’image, si le texte est un lien.

    ligne 44 : "img border=0 src=\"lettrines/" .......

    Répondre à ce message

    Retour au début des forums

  • Défaut d’accessibilité

    1er février 2003 15:53, par Noé de Naama

    Je voudrais juste signaler que la technique qui conssiste à créer une lettrine grace à une image rend le texte inaccessible aux personnes utilisant la synthèse vocale (les aveugles par exemple). Elle diminue aussi le référencement puisque les mots utilisants cette lettrine ne seront pas correctement indexé par le moteur de recherche. Quand aux utilisateurs de navigateur en mode texte seul il risque de trouver la lecture des articles un peu "speciale".

    Pour la création de lettrines il existe une pseudo-classe css pourquoi ne pas l’utiliser ?

    Répondre à ce message

    Retour au début des forums

0 | 25



Suivre la vie du site RSS 2.0 | Plan du site | Espace privé | Charte et vie SPIP-Contrib | SPIP | L'autre.net