Horaire Generator est un petit script Perl qui attire un horaire hebdomadaire comme une image Scalable Vector Graphics. Courir sur votre propre ordinateur peut prendre quelques connaissances de base de la façon d'utiliser une ligne de commande, mais l'interface de formulaire sur le site de démonstration devrait être utilisable par tout le monde.
Il est implémenté dans un module plutôt que d'un programme autonome de sorte que le même code peut être utilisé dans un script CGI (comme sur le site de démonstration) ou Perl one-liner. Il dépend du module SVG.
Vous pouvez appeler la classe Méthode One True Générateur de l'annexe, "as_string", à partir de tout programme Perl. (. Voir le POD intégré dans Schedule_Generator.pm pour les détails) Mais si vous voulez juste pour dessiner un calendrier, la meilleure façon, je pense, est d'écrire votre structure de données en YAML, puis exécutez la commande suivante:
chat example.yml | perl -e 'utiliser locale :: Schedule_Generator; utiliser YAML; imprimer locale :: Schedule_Generator-> as_string (% {{$ Charge faire local /;
où "example.yml" est le nom du fichier, et "inkview" est le nom d'une image viewer SVG-compatible de votre choix, Inkview étant lui-même un bon candidat. Essayez ceci sur la "example.yml" distribué avec ce programme. (Assurez-vous que votre répertoire de travail courant est celui contenant le répertoire "Local" et ce README). Si vous ne l'avez jamais entendu parler de "YAML" avant, ne pas avoir peur; il est plus intuitif langue la sérialisation de données imaginables. Il ressemble étrangement texte brut. Juste modifier "example.yml" à votre goût. Pour un cours intensif de cinq minutes sur YAML, si vous êtes intéressés, voir "http://yaml.kwiki.org/?YamlInFiveMinutes". Pour plus d'informations, voir «http://www.yaml.org» et la documentation pour le module de Perl YAML.
Si vous voulez une version bitmap de la production de l'annexe Générateur, vous pouvez ouvrir l'image avec Inkscape et utiliser sa fonction d'exportation, ou vous pouvez utiliser ImageMagick pour tourner le SVG (alimenté par l'entrée standard) dans un PNG (émise via la sortie standard):
convertir svg: - png: -
Ceci est, en fait, la commande mon script CGI utilise pour créer sa sortie PNG.
Vous pouvez vous demander pourquoi je mets Schedule_Generator.pm dans l'espace «local». Ma pensée est allé comme ceci: Générateur annexe ne fait pas partie du CPAN, car il est beaucoup trop spécifique pour être considéré comme un code réutilisable. Ensuite, il serait trompeur de le mettre quelque part dans la hiérarchie CPAN standard, même si le trait de soulignement serait le protéger contre les collisions d'espace de noms. Donc, je l'ai mis sous "local" pour souligner (hee hee) son non standard-ness.
Une dernière remarque: si vous souhaitez un contrôle plus fin sur la sortie de l'annexe Générateur, regardez dans Schedule_Generator.pm sous "Options codé en dur". Toutes les variables numériques qui contrôlent les proportions exactes de l'horaire sont là pour votre plaisir d'édition. S'il vous plaît excuser mon style de corset. Je dois mauvaise vue, donc je utiliser une telle police de grande taille pour la programmation que je ne peux adapter une vingtaine de lignes dans un cadre Emacs. Pour cette raison, je tends à écrire du code visuellement compact. Il semble en fait un peu Pythonic, même si je suis un fanboy Perl. Mais TIMTOWTDI, droite
Exigences :
- Perl
Commentaires non trouvées