J'ai beaucoup hésité avant d'installer cet exposé dans la partie Html et Javascript :
Cet évènement me semble être à la limite du gadget ...
Et après avoir fait un peu vagabonder mon imagination, je me suis rendu compte qu'il existait un domaine où une telle application avait sa place : le texte sur photo. |
L'intérêt de l'évènement est donc établi : il peut parfois être utile, si le sujet et le texte qui lui correspond ne tiennent pas sur un écran, d'avoir recours à un tel script. |
Combien de légendes de photos ne sont-elles pas en effet hors écran, obligeant le visiteur à un exercice de yo-yo pour apprécier le sujet !?! Exercice peu agréable que vous pourrez désormais éviter. |
|
Convaincu ? Intéressé ? Alors, passons au script :
<SCRIPT LANGUAGE="JavaScript"><!-- function bases (n) { var nb; this.length = n; for (var i = 1; i <=n; i++) if (i<10) { nb = i+""; nb = nb.substring(0,1); this[i] = nb; } return this; } function modif (couleur) { var reste=1; var indice; var hexa1; var hexa2; var couleurHexa; tabHex = new bases(16); tabHex[10]="A"; tabHex[11]="B"; tabHex[12]="C"; tabHex[13]="D"; tabHex[14]="E"; tabHex[15]="F"; indice = 1; hexa2 = (couleur%16); hexa1 = parseInt(couleur/16); hexa2 = tabHex[hexa2]; if (hexa2 == null) hexa2 = "0"; hexa1 = tabHex[hexa1]; if (hexa1 == null) hexa1 = "0"; couleurHexa = hexa1 + hexa2; return couleurHexa; } function effet (texte, taille, police, RGB) { var nbCouleurMax = 256; var facteur = nbCouleurMax/texte.length; var couleur; var i; var c1,c2,c3; for (i=0;i<texte.length;i++) { ton=facteur*i; if (RGB == 0) { c1 = 'FF' c2 = modif(ton); c3 = c2; } else if (RGB == 1) { c1 = modif(ton); c2 = 'FF' c3 = c1; } else { c1 = modif(ton); c2 = c1; c3 = 'FF' } document.write ('<FONT SIZE=' + taille + ' FACE="' + police + '" COLOR="#' + c1 + c2 + c3 + '">' + texte.substring (i,i+1) + '</FONT>'); } } --></SCRIPT> |
Cette première partie est à insérer entre les balises HEAD, après le TITLE de votre page.
Elle permet de définir les trois fonctions nécessaires. Une boucle conditionnelle à partir des couleurs de base RGB est alors définie en mode hexadécimal avec un maximum de 256 teintes utilisées sur la totalité du texte. Cette boucle ne limite pas la longueur du texte, ce qui signifie que plus il sera long, plus la nuance sera petite.
Pour être efficace et pour plus de facilité, il est souvent préférable d'avoir recours à de petits textes !
La seconde partie, beaucoup plus simple, sera insérée dans le BODY, à l'endroit précis où elle s'affichera :
<SCRIPT LANGUAGE=JavaScript><!-- effet('Ici, vous écrirez votre texte',2,'Verdana',1 //--></SCRIPT> |
Le texte que vous allez
insérer est ici repris en
bleu.
La taille de ce texte,
exécutable de 1 à 7, est indiquée en
vert.
La police de
caractères choisie est écrite ci-dessus
en fuchsia.
La couleur de
base (RGB), indiquée en
rouge sera : 0 pour le
rouge, 1 pour le vert, 2 pour le bleu.
Je vois ici votre étonnement face à la dernière phrase écrite dans le 1er exemple : elle est écrite en bleu ... , sans dégradé ... Simple script à écrire si ce dégradé n'est pas nécessaire :
<FONT FACE="Arial" COLOR="#FFFF00"><B><SCRIPT LANGUAGE=JavaScript><!-- document.write('Votre texte s'inscrit ici') --></SCRIPT></B></FONT> |
Ce petit script fait appel à une fonction prédéfinie : document.write
En rouge,
vous écrirez le nom de la police
de caractères utilisée
(universelle si vous voulez l'être !).
En vert,
vous indiquerez la couleur
de cette police (soit en hexadécimal, soit en
clair).
En bleu,
ce sera naturellement le contenu de votre
texte.
Vous définirez la taille de la police de caractères par
les attributs <B> ou <H>.
Rien ne vous empêche, selon votre fantaisie ou la nécessité, d'alterner ces deux derniers scripts : ils cohabitent parfaitement ! Soyez donc créatif !
A vous de jouer maintenant ...