Dank Meme Generator

29

Ich mag es, aus meinen eigenen Bildern gute Memes zu machen. Aber all diese sogenannten "Quick Meme" -Seiten haben einfach zu viel Code . Ich erkannte, dass der einzige Weg, den dankbarsten Memgenerator herzustellen, darin besteht, euch von PPCG zu bitten, einen für mich zu spielen. Also lass mich dir erklären, was du zu tun hast.

Technische Daten

  • Nehmen Sie ein Bild als Eingabe als Dateinamen, Bildobjekt usw., um daraus ein Meme zu machen.
  • Nehmen Sie dann zwei Zeichenfolgen für oberen und unteren Text (ohne Zeilenumbrüche).
  • Rendern Sie den Text auf dem Bild in der Größe 22pt Impact White mit 5px schwarzer Kontur (Sie können davon ausgehen, dass Impact installiert ist.
  • Der Text sollte horizontal zentriert sein.
  • Sie können davon ausgehen, dass der Text horizontal passt.
  • Die entsprechenden Texte sollten 10px von oben und 8px von unten sein.
  • Geben Sie dann das Bild aus, indem Sie es in einer Datei speichern, anzeigen usw.
  • Das ist , also gewinnt der kürzeste Code in Bytes !

Fröhliches Memeing!

Maltysen
quelle
1
Können wir davon ausgehen, dass die Impact-Schriftart installiert ist?
Downgoat
@ Downgoat ja.
Maltysen
9
... Tiere beraten? Nennen Sie das ein dankbares Mem?
Neun
5
Diese Meme sind überhaupt nicht dankbar. Das ist wie Memeologie für Anfänger.
Pyritie
2
@Pyritie Es sollte noch nicht jedem erlaubt sein, Meme zu zaubern.
Hownowbrowncow

Antworten:

13

HTML / JS / CSS, 341 329 300 Bytes

<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}

So verwenden Sie: Fügen Sie zuerst die gewünschte Bild-URL in das bereitgestellte Eingabefeld ein, tippen Sie auf den oberen Text und geben Sie den gewünschten Text ein, tippen Sie dann auf den unteren Text und geben Sie den gewünschten Text ein.

Bearbeiten: 12 Bytes dank @Downgoat gespeichert. Dank @ dev-null wurden weitere 29 Bytes gespeichert.

Neil
quelle
Sie können wahrscheinlich viele Anführungszeichen im HTML-Code entfernen. Sie können auch die ></div>am Ende
Downgoat
Sie können Ihre Divs zu pTags ändern und hinzufügen, margin:0;sollten ein paar Bytes
speichern
@ dev-null Nach dem Vorschlag von Downgoat kostet es mich jetzt ein Byte, anstatt mir ein Byte zu sparen.
Neil
@Neil Dies ist korrekt, aber wenn Sie auch das Style-Tag an das Ende verschieben, können Sie das</style>
andlrc
@ dev-null Nun, ich kann zumindest das erste </ p> loswerden (das zweite wird benötigt, um zu verhindern, dass Sie Strg + A, Entf drücken, um das Stilelement zu löschen).
Neil
12

Jelly, 141 Bytes

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

Probieren Sie es online!

Übernimmt Befehlszeilenargumente wie im Beispiel und gibt eine HTML-Datei zurück. Das Ergebnis in Chrome sieht folgendermaßen aus:

Bildbeschreibung hier eingeben

Lynn
quelle
2
Gute Antwort, aber ich zähle das nicht als Bild. Es ist keine wirklich grafische Ausgabe.
Maltysen
Upgoated, schönes Golf.
Ave
Ratet mal, @Downgoat braucht jetzt ein Geschwister namens Upgoat.
Paul Picard
5

bash + imagemagick + gs 690 575 456 440 bytes

Siehe frühere Überarbeitungen für "ungolfed" Code.

#!/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

z.B.

./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 mag Beavis

Luser Droog
quelle
4
Das hat keinen Einfluss auf die Schriftart!
Pyritie
Wahr. Es scheint, ich habe es nicht installiert. fc-listkann es nicht finden.
Luser Droog
Ich könnte Impact sowieso angeben, aber dann würde es mit Courier gerendert.
Luser Droog