Dank Meme Generator

29

J'aime créer des mèmes humides à partir de mes propres images. Mais tous ces soi-disant sites "mèmes rapides" ont juste trop de code . J'ai réalisé que la seule façon de créer le générateur de memes le plus dank est de vous demander à PPCG d'en jouer un pour moi. Alors laissez-moi vous expliquer ce que vous devez faire.

Spécifications

  • Prenez une image comme entrée comme nom de fichier, objet image, etc. pour en faire un mème.
  • Prenez ensuite deux chaînes pour le texte supérieur et le texte inférieur (sans saut de ligne).
  • Rendre le texte sur l'image au format 22 pt Police blanche Impact avec contour noir 5 pixels (vous pouvez supposer qu'Impact est installé.
  • Le texte doit être centré horizontalement.
  • Vous pouvez supposer que le texte tient horizontalement.
  • Les textes respectifs doivent être à 10 px à partir du haut et 8 px à partir du bas.
  • Puis sortez l'image en l'enregistrant dans un fichier, en l'affichant, etc.
  • C'est le , donc le code le plus court en octets gagne!

Happy Memeing!

Maltysen
la source
1
Pouvons-nous supposer que la police Impact est installée?
Downgoat
@Downgoat ouais.
Maltysen
9
... des conseils aux animaux? Est-ce ce que vous appelez un mème humide?
neuf
5
Ces mèmes ne sont pas du tout humides. C'est comme la méméologie d'entrée de gamme.
Pyritie
2
@Pyritie Tout le monde ne devrait pas être autorisé à utiliser la magie des mèmes pour l'instant.
hownowbrowncow

Réponses:

13

HTML / JS / CSS, 341 329 300 octets

<input onblur=i.src=this.value><table><td><img id=i><p style=top:10px contenteditable><p style=bottom:8px contenteditable></p><style>td{position:relative}p{position:absolute;margin:0;width:100%;text-align:center;font:22px Impact;color:#fff;text-shadow:0 0 5px #000,0 0 5px #000,0 0 5px #000,0 0 5px #000}

Pour utiliser: Collez d'abord l'URL de l'image souhaitée dans la zone de saisie fournie, puis tabulez vers le texte supérieur et saisissez le texte souhaité, puis tabulez vers le texte inférieur et saisissez le texte souhaité.

Edit: enregistré 12 octets grâce à @Downgoat. 29 octets supplémentaires enregistrés grâce à @ dev-null.

Neil
la source
Vous pouvez probablement supprimer beaucoup de guillemets dans le html. Vous pouvez également supprimer le ></div>à la fin
Downgoat
Vous pouvez changer vos div en pbalises et ajouter margin:0;devrait économiser quelques octets
andlrc
@ dev-null Après la suggestion de Downgoat, cela me coûte maintenant un octet plutôt que de me sauver un octet.
Neil
@Neil C'est correct, mais si vous déplacez également la balise de style à la fin, vous pourrez supprimer le</style>
andlrc
@ dev-null Eh bien, je peux au moins me débarrasser du premier </p> (le second est nécessaire pour vous empêcher d'appuyer sur Ctrl + A, Suppr pour supprimer l'élément de style).
Neil
12

Gelée, 141 octets

⁴;@€“¢ÇẎȧsẊỊ>ɼẈAẋ®ŀȮĠq⁼ṫṁḢĠZỴċƊ£²ÆṗÑḊ°>oÆl{(¢ɗpḅ]µṖÑb¹ƁịṾ¦Ç\ṭO4»“1kịXḥɗ"Ụɦḷ©Ƈ&Ṭ19“£ŀ³³.Ṗ<ṂqṬỵ.ṣȦƇƈ2ƭḂXƊ»ż³;“ßƑ_!]²Rȧ⁵⁴°ṁD⁽a{⁼!z¿ıṾƇDẇḤḶṡÇẈg»;

Essayez-le en ligne!

Prend des arguments de ligne de commande comme dans l'exemple et retourne un fichier HTML. Le résultat ressemble à ceci dans Chrome:

entrez la description de l'image ici

Lynn
la source
2
Belle réponse, mais je ne compte pas cela comme une image. Sa sortie n'est pas vraiment graphique.
Maltysen
Upgoated, beau golf.
Ave
Devinez @Downgoat a besoin d'un frère nommé Upgoat maintenant.
Paul Picard
5

bash + imagemagick + gs 690 575 456 440 octets

Voir les révisions précédentes pour le code "non golfé".

#!/bin/bash
d=`identify $1|cut -d' ' -f3`
x=`echo $d|cut -d'x' -f1`
y=`echo $d|cut -d'x' -f2`
convert $1 $1.eps
gs -g"$d" -o $1.png -sDEVICE=png48 -c "
/s/showpage load def/showpage{}def($1.eps)run
matrix defaultmatrix setmatrix/Helvetica-Bold 22
selectfont/c{dup stringwidth pop neg 2 div 0 rmoveto dup 
gsave 1 setgray show grestore 0 setgray false charpath stroke}def
$x 2 div $y 42 sub moveto($2)c $x 2 div 8 moveto($3)c s"
echo :$1.png

par exemple.

./meme.sh Superman1.jpg "I AM CORNHOLIO" "Are you threatening me??!"
GPL Ghostscript 9.15 (2014-09-22)
Copyright (C) 2014 Artifex Software, Inc.  All rights reserved.
This software comes with NO WARRANTY: see the file PUBLIC for details.
Loading NimbusRomNo9L-Regu font from /usr/share/ghostscript/9.15/Resource/Font/NimbusRomNo9L-Regu... 4186304 2700982 3995248 2685490 2 done.
Loading NimbusSanL-Bold font from /usr/share/ghostscript/9.15/Resource/Font/NimbusSanL-Bold... 4203248 2760390 3833712 2536130 1 done.
:Superman1.jpg.png

Superman aime Beavis

luser droog
la source
4
Ce n'est pas une police d'impact!
Pyritie
Vrai. Il semble que je ne l'ai pas installé. fc-listne le trouve pas.
luser droog
Je pourrais spécifier Impact de toute façon, mais ensuite ça se ferait avec Courier.
luser droog