|
/export/home/cpanrun/depot/main/contrib-patched/perl/CPAN/src/Acme-IRC-Art/blib/lib/Acme/IRC/Art.pm |
Acme::IRC::Art -
use Acme::IRC::Art;
use NET::IRC;
...
définition d'un connexion avec Net::IRC (voir la documentation de NET::IRC)
...
my $art = Art->new(5,5);
$art->rectangle(0,0,4,4,2);
for ($art->result) {
$connection_irc->privmsg("#channel",$_);
select(undef,undef,undef,0.5);
}
Acme::IRC::Art est un module qui vous permet de faire des jolis dessins sur l'irc comme si vous utilisiez une librairie graphique très basique, il n'a pas était conçut pour faire de l'ascii art ( faire automatiquement des dessins avec les caractères acsii), il se contente de manipuler des couleurs et du texte. Vous pouvez l'utiliser avec n'importe quel module qui fournis un client irc (eg Net::IRC) ou dans des script perl pour des client IRC.
my $art->new($largeur,$hauteur);
Une règle à ne pas oublier c'est de définir votre dessin dans l'ordre auquel les éléments doivent apparaître si par exemple vous definissez un texte puis que vous dessinez un rectangle dessus le texte sera effacé
result qui ne prend aucun arguments et qui retourne un tableau qui contient chaque ligne
de messages à envoyer pour afficher votre dessin.
Voici la liste des méthodes avec lesquelles vous allez pouvoir dessiner
$art->pixel($x,$y,$couleur,$on);
$on est une valeur bouléenn pour dire d'afficher ou d'effacer le pixel (-1 pour effacer). $on est vraie par défaut vous pouvez utiliser la synthaxe suivante
$art->pixel($x,$y,$couleur);
Une dernière chose : le $x et $y peuvent être des références vers un tableau, mais attention les coordonnées en x et en y doivent correspondent une à une, exemple pour remplir la diagional d'un carré de 3 sur 3
$art->pixel([0,1,2],[0,1,2],5);
$art->text($texte,$position_x, $position_y,[$mise_en_forme],[$couleur_fond]);
plusieurs mise en forme de texte sont disponible
-"b" : met le texte en gras -un nombre met le texte à la couleur correspondante -"b".un nombre met le texte en gras avec une couleur
exemple:
$art->text("Bonjour !",2,0,"b5",2);
Celà mettra le ``B'' au pixel de coordonnée 2,0 , les autres lettres seront placées à la suite, par exemple le premier ``o'' aura comme coordonnée 3,0. Le texte sera en rouge foncé avec du gras (``b5'') sur fond bleu.
Expérimentale :
$art->text($text,$x,$y,\@mise_en_forme,[\@fond]);
Soyez prudent car aucun vérification n'est faite le la validité des arguments dans ce cas là
$art->rectangle($position_x1,$position_y1,$position_x2,$position_y2,$couleur,[$on]);
x1 et y1 représentent les coordonnées du pixel au coin en haut à gauche, et x2 et y2 celle du coin en bas à droite
couleurs :
0 : Gris clair (ou blanc) 1 : Noir 2 : Bleu foncé 3 : Vert foncé 4 : Rouge 5 : Rouge foncé 6 : Violet 7 : Orange 8 : Jaune 9 : Vert clair 10 : Bleu ciel foncé 11 : Bleu ciel clair 12 : Bleu 13 : Rose 14 : Gris foncé 15 : Gris
Il n'y a pas de bugs connus, le problème de rendu peut venir d'un choix de police dont les caractère ne sont pas tous de la même taille, ce qui pose un problème aussi pour les dessins ascii.
Colinet Sylvain
skarsnikum@free.fr
http://skarsnik.homelinux.org/~skarsnik
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
The full text of the license can be found in the LICENSE file included with this module.
perl(1). Net::IRC, POE::Component::IRC
|
/export/home/cpanrun/depot/main/contrib-patched/perl/CPAN/src/Acme-IRC-Art/blib/lib/Acme/IRC/Art.pm |