Parfois, quand je m'ennuie, je prends du texte et remplis les "trous" dans les lettres. Mais combler les trous n'est-il pas la chose la plus ennuyeuse que vous puissiez faire? Je pense que nous devrions l' automatiser , afin que nous puissions mieux utiliser notre temps.
la norme règles de code-golf s'appliquent.
Contribution
Une chaîne contenant une séquence de caractères alphanumériques (az, AZ, 0-9) et des espaces.
Production
Image contenant une chaîne rendue et des trous remplis. Vous pouvez utiliser n'importe quelle police lisible par l'homme tant qu'elle nécessite de remplir les trous. Vous pouvez soit enregistrer l'image dans un fichieri.png
(au format png), soit simplement afficher l'image.
Propriétés de l'image:
- Texte noir
- Fond blanc ou transparent
- Rembourrage:
- Les dimensions de l'image peuvent être au maximum deux fois supérieures aux dimensions du texte
- Le rembourrage doit être de la même couleur que l'arrière-plan, blanc ou transparent
Exemple
Contribution: Example text
code-golf
graphical-output
image-processing
Hannes Karppila
la source
la source
Réponses:
Bash, 135 octets
Utilise ImageMagick (
convert
).Exemple de sortie:
La désactivation de l'anticrénelage est nécessaire car sinon les parties intérieures anticrénelées des lettres ne se rempliraient pas. Il est également nécessaire de définir la police sur une grande taille car certaines polices ont des "lacunes" dans les lettres qui devraient avoir des "trous" dans les petites tailles de police (dans mes tests, elles
a
n'étaient pas remplies à la petite taille de police par défaut).la source
Mathematica, 83 octets
Une fonction sans nom qui prend une chaîne en entrée et renvoie un objet image. L'idée est d'utiliser
DeleteBorderComponents
pour ne conserver que les trous puis soustraire ceux de l'image d'origine.la source
ImageSubtract
etDeleteBorderComponents
.SmileBASIC, 38 octets
Dessine du texte noir * sur le fond noir, puis utilise la fonction intégrée "pot de peinture" pour remplir tout ce qui se trouve en dehors du texte avec du blanc.
* (en fait, j'ai utilisé
00000008
, qui ressemble à transparent, mais est traité comme une couleur différente)la source
Ronge un peu le texte, mais il existe également une solution basée sur le canevas:
JS, 610 octets
la source
Postscript 273
[a été initialement publié pour le défi associé , mais je n'ai jamais implémenté le comptage.]
Rend chaque caractère normalement, pour obtenir l'espacement correct pour avancer, puis prend toutes les courbes qui décrivent le glyphe et remplit chacun. Normalement, les courbes intérieures et extérieures sont décrites avec des orientations différentes, de sorte qu'un remplissage laissera l'intérieur vide, qu'il utilise la règle d'enroulement non nul ou la règle paire-impaire. Remplissant séparément, tout est rempli.
Dentelé:
Usage. On s'attend à ce que l'objet chaîne soit sur la pile au démarrage du programme. Mise à l'échelle supplémentaire juste pour la rendre visible.
la source