SPIP - Contrib

SPIP - Contrib

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

94 visiteurs en ce moment

fontsizeup fontsizedown
[15 commentaires]

Un modèle d’écriture

jeudi 16 août 2007, par Corrobori, kent1

Toutes les versions de cet article : [English] [français]

2 votes

Permet de modifier ponctuellement la police de caractères d’une partie d’un texte.

Le modèle écriture (au sens SPIP) est une des fonctionnalités développées pour le squelette EVA 3 attendu pour septembre 2007. Produit avec l’aide de la communauté SPIP sur IRC , il est indépendant du squelette utilisé et c’est pourquoi nous le présentons, ici, hors de son contexte original.

De quoi s’agit-il ?

Il s’agit pour un rédacteur de pouvoir modifier la police de caractères d’une partie d’un texte. Ceci seulement ponctuellement car ce changement n’est pas désiré dans les autres articles.

Ainsi dans EVA 3 nous voulions la possibilité d’écrire des parties de textes avec une police cursive.

Le problème

Les fonctionnalités de SPIP permettent déjà de transformer un texte en une image typographique ce qui autorise une plus grande créativité tout en étant d’une très grande souplesse.

[(#TITRE|image_typo)] transforme un titre en une image typographique.

[(#TITRE|image_typo{police=ma_police.ttf})] donne l’image d’un titre écrit dans la police mentionnée.

C’est bien ce qu’il nous faut mais il y a un inconvénient : ce traitement n’est pas possible avec la balise #TEXTE , sauf à vouloir tout transformer.

La solution

La solution vient des modèles. En effet la doc qui leur est consacrée indique qu’il est possible de faire ce que nous souhaitons grâce à un modèle.

<imagetypo|texte=Mon intertitre>

Concerne les intertitres d’un texte donc bien une partie du texte seulement.

Mise en œuvre

Pour qu’une partie du texte seulement soit concernée par la manipulation d’image typo nous allons demander à SPIP de faire ce travail ailleurs que dans le texte, ce sera le rôle du fichier ecriture.html, puis de nous retourner le produit fini.

Commençons tout d’abord par indiquer nos intentions. Si nous voulons que la première phrase d’un texte, et seulement elle, soit écrite dans un police spécifique alors nous utiliserons la syntaxe suivante :

<ecriture1|texte=Ma première phrase|police=police.ttf|left>

Ces paramètres seront transmis au fichier ecriture.html qui va les convertir en « img » grâce au code suivant, et le renvoyer au texte initial.

[(#ENV{texte}|image_typo{police=#ENV**{police}})]

En pratique

Il vous faudra mettre le fichier ecriture.html dans le répertoire modeles du squelette : /modeles/ecriture.html

Bien sûr vous n’oublierez pas de mettre les polices désirées dans le dossier polices [1]situé à la racine de site : /polices/police.ttf, ou dans votre dossier squelettes :/squelettes/polices/police.ttf

Vous créerez ces dossiers s’ils n’existent pas.

Mise à jour

Je joins une nouvelle version du modèle qui gére maintenant beaucoup plus de fonctions typographiques.

Il est prudent de respecter l’ordre des paramètres dans la syntaxe d’appel.

Ainsi

<ecriture1
|texte=testaille .
|police=SEYESNDL.TTF
|taille=36
|couleur=0000ff
|largeur=200
|align=left
>

permet de gérer, dans l’ordre, la police, la taille, la couleur, la largeur et l’alignement du texte. N’hésitez pas à adopter une écriture lisible comme dans l’exemple.

Il est tout à fait possible d’appliquer un filtre d’images classique mais la liste est trop longue et vous préfererez le mettre au coup par coup.

Voir en ligne : La Gerbelette

Notes

[1] Attention : si vous ne protégez pas ce dossier (avec un htaccess par exemple), votre fichier de police sera accessible par le Web. Si vous utilisez des polices commerciales, faites attention à ne pas vous retrouver, ainsi, à diffuser des polices pour lesquelles cela n’est pas autorisé.

Retour en haut de la page

15 Messages de forum

Voir toute la discussion

Pages 1 | 2

  • Répondre à ce message

    21 février 16:53 , par jeanfrancois

    Je me réponds à moi-même.

    Tout fonctionne bien ; j’avais commis l’erreur de mettre 2 fichiers écriture : le premier ecriture.html et le second ecriture1.html qui était celui nommé ici "étendu".

    En fait, le système ne prennait que le premier en compte. En en mettant qu’un et en le nommant "ecriture.html" tout fonctionne bien.

    Cordialement, Jean

  • Répondre à ce message

    20 février 15:02 , par jeanfrancois

    SPIP vesion2.0.0 [13469]

    J’ai chargé le modèle "version étendue" dans le dossier "modeles" et la police :"frscript.ttf" dans le dossier "polices"

    Pour la rédaction de l’article dans l’espace privé j’écris :

    <ecriture1|texte=
    - Il est la relecture d’ateliers d’écriture auxquelles elle a participé dans le cadre d’une association de Vaulx-en-Velin. Membre de l'atelier d'écriture "Dans tous les Sens", Marie-Ghislaine Chassine livre dans "La toile rude de leur dignité" vingt ans de quotidien avec ses voisins.
    |police=frscript.ttf|taille=20|couleur=FF0000|align=left>

    La police est bien affichée dans l’espace privé et dans l’espace public mais ni la taille ni la couleur ne sont pris en compte. Quelle est mon erreur.

    Merci de votre réponse

    Jean

  • Répondre à ce message

    19 février 19:22 , par Corrobori

    Que faites-vous exactement ?

    Dans quel formulaire êtes-vous ?

    <ecriture1|texte= montexte, police=ALGER.TTF, taille=15, couleur=FF00FF, largeur=600, hauteur_ligne=40, padding=40>

    devrait faire l’affaire.

  • Répondre à ce message

    19 février 16:40 , par jeanfrancois

    Si on met dans le squelette ce code pour image_typo :

    <h1 class="titre-texte">[(#TITRE|image_typo{police=ALGER.TTF,
    taille=15, couleur=FF00FF, largeur=600, hauteur_ligne=40, padding=40})]</h1>

    cela fonctionne parfaitement.

    Par contre le code du fichier modèle proposé ici ne fonctionne pas avec SPIP 2.0.0

    La police est chargée mais aucun des autres critères n’est pris en compte.

    Merci de la réponse

  • Répondre à ce message

    23 décembre 2007 13:53 , par MKO

    Merci pour la réponse, avec les liens ci dessus je pense avoir trouvé la réponse à mon probléme, il me reste plus que de faire des tests.

    Bonne fêtes et bonne nouvelle année à tous. MKO

  • Répondre à ce message

    22 décembre 2007 21:21

    Spip est conçu pour gérer la langue arabe. Il faut utiliser ses fonctions dédiées au multilinguisme pour cela.

    Vous trouverez un peu d’aide ici sur ce site ou là sur spip.net à ce sujet.

    N’hésitez pas à poser votre question sur la liste spip user, je sais que certains abonnés ont déjà mis en ligne de tels sites.

  • Répondre à ce message

    21 décembre 2007 19:55 , par MKO

    Bonjour,

    J’ai decouvert spip il ya 1 mois, et je test actuellement un squelette, parmi les articles j’ai besoin d’afficher quelques articles en langue arabe ( titre + corps de l’article), peut on utiliser ce model pour modifier l’affichage, pour rappel l’arabe s’ecrit de droite à gauche.

    Est ce qu’il faut installer ce fichier tel quel dans le repertoire model ? et comment appeler ce code dans un squelette ?

    Merci à vous

    MKO

  • Répondre à ce message

    19 août 2007 21:48 , par Corrobori

    A la place de sens j’écrirais align...

  • Répondre à ce message

    19 août 2007 17:40 , par Corrobori

    Est-ce que ça marche avec les italiques ?

    Après quelques tests sommaires il semble que non dans la plupart des cas.

    - les italiques à la mode spip prêtent à confusion.
    - le html, possible dans un modèle, ne passe pas avec imagetypo.

    Il reste la solution d’utiliser une police en italique, il y en a quelques-unes.

  • Répondre à ce message

    19 août 2007 17:36 , par Julien

    Aucun problème. Cela fera une possibilité de plus !

    Il y a encore probablement des choses à améliorer : par exemple je n’ai pas trouvé comment faire du texte "centré", faire des retours à la ligne ...

Pages 1 | 2

Répondre à cet article

Retour en haut de la page

Ça discute par ici