Die Herausforderung besteht darin, ein Bild ähnlich dem StackOverflow-Logo zu generieren:
Die Ausgabe muss enthalten:
- Bildgröße 64 * 64 oder höher
- Ein graues | __ | geformte Basis
- Ein gekrümmter segmentierter Stapel, der von der Basis aufsteigt. Die Segmente werden von grau zu orange verblassen und um ~ 90 Grad nach rechts gedreht. Die Anzahl der Segmente sollte zwischen 5 und 7 liegen, wobei 6 bevorzugt wird.
Hinweis: Verwenden Sie für nicht farbige ASCII-Anzeigen ein '0'-Zeichen für Grau und' 9 'für Orange. '1' bis '8' würden die dazwischen liegenden Schattierungen darstellen.
Beschränkungen:
- Sie müssen das Image generieren . Das Laden oder Speichern von Bildern im Code / Binär ist nicht gestattet.
Zusätzliche Regeln / Informationen:
- Das Bild muss nicht mit dem Logo identisch sein, es muss jedoch als solches erkennbar sein.
- Die Art der Anzeige liegt bei Ihnen. Das Speichern in einer Bilddatei oder die Anzeige auf dem Bildschirm sind zulässig.
Bewertungskriterien / Gewinnkriterien:
- Die Genauigkeit des Bildes ist die Grundvoraussetzung
- Eleganz der Generation ist die Nebenbedingung
Antworten:
Mathematica
Ich beschloss, meine Antwort zu verschönern, nachdem mir klar wurde, dass dies kein Code-Golf ist. Hoppla!
Bildschirmfoto:
In verwandten Nachrichten habe ich auch erstellt, wie das Stack Overflow-Logo meiner Meinung nach in ... DIE ZUKUNFT :
Hier ist der Code, falls jemand damit herumspielen möchte (Entschuldigung für das Durcheinander):
quelle
Out[404]
Javascript (650)
Ich habe ein Quine geschrieben, das die Zeichen in der Funktion liest und Nicht-Leerzeichen durch eine Zahl von 0-9 ersetzt.
Dies gibt diese ASCII-Grafik aus:
die kann mit einem CSS-Stylesheet gefärbt werden, wenn Sie möchten
Sie können es auf jsBin in Aktion sehen .
Hier ist ein Screenshot, falls der Link stirbt:
quelle
SVG (347 Zeichen)
Basierend auf Sir_Lagsalots Version , mit Strichen anstelle von Füllungen. Abgesehen davon, dass ein paar Zeichen entfernt wurden, ist der Code einfacher und die Ausgabe wirkt besser skaliert.
Link zum SVG-Bild .
In PNG gerendert (in natürlicher Größe und x2 und x3 vergrößert):
Bearbeiten: Endlich konnte der Fehler behoben werden, der dazu führte, dass sich die Seiten der Box nicht aneinander reihten. Außerdem wurden die Linienstärke und die Platzierung der Endpunkte ein wenig angepasst und eine explizite Breite und Höhe hinzugefügt, um zu vermeiden, dass die unteren und rechten Kanten zu eng zugeschnitten werden. Es sieht jetzt viel näher am offiziellen Logo aus.
quelle
Haskell w / Gloss
Fügen Sie den Code hier ein, um ihn in Aktion zu sehen , oder fügen Sie die folgende Zeile hinzu, um ihn zu kompilieren (erfordert Gloss ).
quelle
SVG (333 Zeichen)
Ich habe ein SVG-Bild erstellt, das eine 67x68-Version des Logos mit 333 Zeichen generiert:
Link für kleines SVG-Bild
Link für großes SVG-Bild
quelle
Latex
Verwenden der TikZ- und PGF-Pakete.
quelle
CSS + JavaScript (HTML div basiert)
Beispiellauf: http://jsfiddle.net/ryzBx/
Beispiel-Rendering (Firefox 14):
quelle
Javascript (
viele814 Zeichen)Es ist nicht schön, sieht aber ein bisschen aus wie das SO-Logo. Testen Sie Fiddle hier - http://jsfiddle.net/elssar/jcYtg/2/
quelle
C # / GDI +
Ich war überrascht, als ich bemerkte, dass es hier keine C # -Antwort gibt. Also hier ist einer. Dies ist keine geniale Art, das Logo zu zeichnen, und auch keine kurze Lösung. Bekommt aber die nötige Leistung.
Sie können meinen Blog-Beitrag lesen, um die vollständige funktionierende Lösung herunterzuladen → http://guganeshan.com/blog/stackoverflow-logo-using-csharp-and-gdi.html
quelle
Ich weiß , ich bin Super spät , um das Spiel hier, aber ich war überrascht , niemand eine CSS - Version dieser tat. Dies ist definitiv keine wettbewerbsfähige Antwort, wenn es um die Anzahl der Charaktere geht (1.195), aber das Endprodukt ist ziemlich genau.
Geschrieben in Safari (9.0) und getestet in Chrome (45.0.2454.93) und Firefox (40.0.3).
quelle
PHP mit GD
Beispiel:
quelle
$a = 'imagecolorallocate';$r = 'imagefilledrectangle'; $p = 'imagefilledpolygon';
die Sie den Code wesentlich zu reduzieren erlaubt:$p(...);$p(...);...
.JavaScript + jQuery & SVG - 250
Ich habe Ilmari Karonens SVG genommen und JavaScript verwendet, um
$
s zu ersetzen und><path stroke="
es auch mit dem Overhead von JavaScript effektiv zu verkürzen.quelle
R
Nicht die schönste Lösung, gibt aber die angeforderte Ausgabe zurück.
quelle
Scala
quelle
JavaScript
quelle