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.
Discussions par date d’activité
8 discussions
Bonjour,
J’ai fait un essai avec la police frscript.ttf et le résultat est le même.
Dans l’espace publique, j’ai juste un rectangle qui s’affiche avec écrit à l’intérieur « ecriture1 ».
Merci pour ton aide,
Thierry
Répondre à ce message
Bonjour, sous spip 209 cela ne marche pas.
j’ai pourtant mis la police « champignon.ttf » dans le répertoire « polices » du dossier « squelette » et le fichier « ecriture-2.html » (version étendue) dans le répertoire « modèle » du dossier « squelette ».
Dans le corps de l’article, j’écris :
<ecriture1|texte=Magazine-web coopératif d'histoire et de généalogie|police=Champignon.ttf>
mais rien ne s’affiche dans l’espace privé et dans l’espace publique j’ai une rectangle qui s’affiche avec écrit à l’intérieur « ecriture1 ».
Que faut-il faire ?
merci pour votre aide,
Amicalement,
TT
Et avec
police=champignon.ttf
(en respectant la casse de ton fichier de police)...sinon vérifies les droits sur ce fichier ttf (peut être pas utilisable par l’utilisateur apache)
En derniers recours essaie avec une autre police pour voir si le problème ne vient pas de ton fichier de police.
kent1
Répondre à ce message
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
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 :
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
Si on met dans le squelette ce code pour image_typo :
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
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
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
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.
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
Toujours ma question : Peut-on régler la taille du texte ?
Merci
C’est par là et bientôt ici le temps que reçoive quelques codes.
Bonjour,
Voici une de mes « contributions » :
http://www.adrias17.org/squelettes/...
C’est un modèle qui permet de définir la police du texte, la taille, et le sens du texte (left/right), la « largeur » du bloc.
Cela fonctionne par introduction du code :
<accueil-texte|police=nomdelapolice|largeur=xxx|sens=left|couleur=0028EC|taille=16|texte=le texte en question>
La police doit être placée dans le dossier « polices » à la racine du squelettes. (éviter les noms avec accents, espaces, ...)
J’espère que ça aidera des gens !
Oui bien sûr, les deux codes sont très proches. Je peux joindre votre fichier à l’article comme une varaition sur le thème.
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 ...
A la place de sens j’écrirais align...
Répondre à ce message
Est-ce qu’il ne faut pas mettre
[(#ENV*{texte}|...
ou[(#ENV*{texte}|propre|....
si on veut bénéficier de tout ce qu’il faut comme traitements typo etc ? 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
Ajouter un commentaire
Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :
Merci d’avance pour les personnes qui vous aideront !
Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.
Suivre les commentaires : |