Ceci est un défi simple.
La tâche consiste à écrire du code qui génère une image carrée de 448 * 448 avec une transparence à 100%. La sortie doit suivre les règles d'image standard .
Ceci est un défi simple.
La tâche consiste à écrire du code qui génère une image carrée de 448 * 448 avec une transparence à 100%. La sortie doit suivre les règles d'image standard .
Réponses:
Imagemagick dans une coquille, 35
Est-ce permis?
la source
\windows\system32
).convert
outil, car le nom se heurte à l'utilitaire système. Vous courez à lamagick convert ...
place.convert
fait partie d'ImageMagick, donc l'appeler son propre langage ne fonctionnerait pas.ImageMagick Convert
. Cela vaut peut-être la peine d'ouvrir une méta à ce sujetAPL (Dyalog Unicode) , 11 octets SBCS
Programme complet. Imprime un tableau de 448 x 448 x 4 représentant une image rgba de 448 x 448.
Essayez-le en ligne!
⍴
est r eshapela source
448 448
?802832p0
comme réponse?Allez, 70
Jamais vu de golf à Go auparavant. Définit une fonction appelée a qui produit l'image
la source
JavaScript (ES6),
7469 octetsRenvoie une image PNG encodée sous forme de données: URL appropriée, par exemple pour la définition en tant
src
queHTMLImageElement
. Edit: 3 octets enregistrés grâce à @Shaggy et 2 octets supplémentaires grâce à @Arnauld.la source
document.createElement`canvas`
devrait fonctionner, économisant 2 octets supplémentaires.d=document
en haut et remplacerdocument
pard
? Devrait enregistrer ~ 5 caractères.document.write
n'est qu'une partie de l'extrait de pile, pas une partie de la fonction, donc cela ne compte pas de toute façon.Java 8, 23 (ou 20) octets
Renvoie un tableau 3D de 448x448x4 0s.
Essayez-le en ligne.
Explication:
Renvoie une matrice 448x448 de 0.
En Java, les valeurs RGBA peuvent être représentées par un entier . L'hexadécimal
0x00000000
représenterait respectivement le00
rouge, le vert, le bleu et l'alpha. Et0x00000000
est égal à l'entier0
.Essayez-le en ligne.
la source
v->new int[448][448]
? Parce qu'une couleur peut être représentée avec un entier (RGBA) en Java.0-255
une valeur RBGA valide? Je sais que c'est une valeur RGB valide, mais aussi RGBA? Je n'utilise presque jamais d'images en Java, donc je ne les connais pas trop. J'ai simplement basé mes 4 0 intérieurs sur d'autres réponses.0x00000000
qui tiennent sur un int. Les 2 premiers chiffres hexadécimaux sont l'alpha, les 2 suivants sont le rouge, les 2 suivants sont le vert, les 2 derniers sont le bleu, vous n'avez donc besoin que d'un entier. Voir BufferedImage.TYPE_INT_ARGB . Vous avez 4 valeurs, résumées en un seul entier. Et0x00000000
est égal à0
.Java 8
Enregistrement de l'image dans un fichier avec chemin
s
, 101 octetsEssayez-le en ligne ... en quelque sorte en
retournant l'image tamponnée, 46 octets
Enregistrement de l'image dans le fichier
f
, 83 octetsDumping PNG vers STDOUT, 92 octets (merci ASCII uniquement!)
Essayez-le en ligne!
Merci à Kevin d'avoir économisé un octet pour les deuxième et quatrième solutions!
la source
()->
dans deux de vos réponsesv->
, car il est autorisé d'avoir une entrée vide inutilisée (pour laquelle j'utilise personnellementVoid
). Votre dernier TIO serait alors celui-ci .05AB1E ,
12109 octetsEssayez-le en ligne.
Ou bien:
Essayez-le en ligne.
-2 octets grâce à @Emigna .
-1 octet grâce à @Adnan .
Génère une liste 3D de 448x448x4 de 0.
Explication:
Voir cette réponse 05AB1E de mes (section Comment compresser les grands entiers? ) Pour comprendre pourquoi
Ž1Â
est448
.la source
Traitement, 66 octets
la source
Python 2.7, 17 octets (22 avec impression)
Avec impression:
Comme variable:
Comme un tableau de RGBA est autorisé, c'est ce que j'ai créé ci-dessus, par défaut à tous les 0 - ce qui signifie noir, mais totalement transparent.
Essayez-le en ligne!
la source
[0]*802816
cela devrait également fonctionner.Gelée , 8 octets
Un lien niladique qui produit une matrice RGBA de 448 x 448 pixels noirs transparents.
Essayez-le en ligne!
Comment?
la source
HTML, 25 octets
Est-ce valable?
Testez-le (
background
appliqué avec CSS pour pouvoir le "voir")la source
<svg height=448 width=448
dans un fichier html et l'ouvrir produit un vide<body>
. Cependant , avec la pénalité de 1 octet, si vous écrivez<svg height=448 width=448>
, cela produit un<body>
avec une image SVG vide.>
signifie que cela est, en effet, valide, en ce qui concerne le balisage.<!DOCTYPE html>
,<html>
,<head>
,<style>
,<script>
et tout va à la<body>
. Une partie du code supplémentaire est nécessaire pour produire la sortie souhaitée. Vous pouvez voir que le code résultant est analysé comme<svg height="448" width="448" < body></svg>
, car il écrit<svg height=448 width=448 </body>
dans l'iframe. En tant que tel, je pense toujours que ce n'est pas valable.C # (Visual C # Interactive Compiler) , 21 octets
Essayez-le en ligne!
la source
Rouille -
206201168 octetsCela écrit un fichier o.tga réel et lisible, sans bibliothèque ni fonction intégrée, en utilisant le format binaire TGA selon http://paulbourke.net/dataformats/tga/ , en codant en dur la largeur et la hauteur dans l'en-tête du fichier binaire.
-5 octets raccourcir le nom de fichier, fixer la taille img, @ ASCII uniquement
la source
a
comme nom de fichier non. btw c'est 448 * 448 pas 444 * 444 donc c'est invalide[255,0,0,0,0]
6272 fois ([0,0,0,0]
128 fois, répété 6272 fois) type d'image serait alors.10
pas2
encore mieux, colormap pour le codage de longueur d'exécution plus court (.0,0,0,0
->0
)C # (Visual C # Interactive Compiler) , 48 octets
Apparemment, la sortie
[1D array of pixels, width, height]
est correcte, donc cela génère un tuple de `(IEnumerable de pixels, largeur, hauteur).Essayez-le en ligne!
C # (Visual C # Interactive Compiler) , 58 octets
La matrice d'origine renvoyant la réponse.
Étant donné que les règles d'E / S d'image permettent la sortie sous forme de matrice de valeurs RVB, cette soumission génère une matrice de valeurs RVBA, représentée par des tuples à quatre valeurs, toutes étant égales à 0.
Essayez-le en ligne!
la source
PHP, 192 octets
Malheureusement, PHP aspire un peu dans cet aspect car il nécessite beaucoup de code. Mais là encore, où PHP n'est pas nul.
Non golfé:
Évidemment, si vous voulez simplement le créer sans le sortir, vous pouvez omettre les commandes
header()
etreadfile()
. Pourtant, c'est idiotement long.la source
'<?php return '.var_export(array_fill(0,952576,0),1).';';
pour exporter le tableau de manière exécutable. vous pouvez fairephp -f image.php > array.php
, et ailleurs, vous pouvez faire$array = include('array.php');
pour avoir à nouveau un tableau utilisable. Mais je ne sais pas si elle est valide, alors je vous la donne à ajouter comme alternative. Ou même un<?=json_encode(array_fill(0,952576,0));
.true
peut être remplacé par1
, pour économiser 3 octets. En lisant la documentation deimagepng()
, vous pouvez simplement le faireheader('Content-type: image/png');imagepng($i);
. Je crois que vous pouvez également remplacer$b=imagecolorallocatealpha($i,0,0,0,127);imagefill($i,0,0,$b);
par,imagefill($i,0,0,imagecolorallocatealpha($i,0,0,0,127));
mais ne me citez pas à ce sujet.<? imagecolorallocatealpha($i=imagecreate(448,448),0,0,0,127);header('Content-type: image/png');imagepng($i);
produire une image transparente (109 octets). Envoie automatiquement l'image au navigateur / sortie standard et tout.Python 3.7 - Importé PIL, 30 octets
Cela nécessite une importation mais a l'avantage de créer et d'afficher un fichier image réel plutôt qu'un tableau vide abstrait.
Explication:
Image.show () ouvrira l'image dans votre programme d'image par défaut. Dans mon cas, cela ouvre un fichier bitmap temporaire dans la visionneuse de photos Windows, mais les résultats peuvent varier. On peut dire que c'est de la triche puisque la représentation bitmap ne contient aucune transparence
Variations ...
la source
Import
.new("LA",[448]*2).show()
26 octets.MATLAB, 31 octets
Crée une matrice de
NaN
valeurs 448 x 448 , puis les utiliseimwrite
pour les enregistrer dans un fichier PNG nommé'.png'
et définit la transparence sur 1, la rendant transparente. Le'Transparency'
nom du paramètre peut être abrégé'tr'
car MATLAB permet une correspondance de chaîne partielle des noms de paramètres tant que la version raccourcie est unique parmi les paramètres disponibles.la source
dzaima / APL + APLP5 ,
1816 octetsFonction qui produit un objet image qui peut être dessiné à l'écran (sans effet) ou reconverti en valeurs de pixels.
-2 grâce à ngn !
la source
{P5.img⍴∘0,⍨448}
Gelée ,
109 octetsEssayez-le en ligne!
Génère une matrice 448x448x4
Merci à @JonathanAllan d'avoir enregistré un octet.
la source
2¡
peut être⁺
Rouge , 33 octets
Par défaut, l'opacité est entièrement opaque (0)
Voici comment l'utiliser / un programme complet /:
la source
MathGolf , 10 octets
Essayez-le en ligne!
Explication
Cette méthode permet d'économiser 1 octet par rapport au "standard"
♦7*_4º*a*a*
la source
JavaScript (Node.js) , 39 octets
Apparemment, la sortie
[height, width, 1d array of RGBA values]
est correcte.Essayez-le en ligne!
-3 octets grâce à @Arnauld
la source
[1D array of pixels, width, height]
[width, height, array]
.SmileBASIC, 27 octets
Enregistre un tableau bidimensionnel 448x448 rempli de 0 dans un fichier nommé
DAT:I
(ce qui est plus court que la définition d'une fonction qui renvoie le tableau, en quelque sorte)Les formats standard (utilisés par toutes les fonctions graphiques) pour les couleurs dans SmileBASIC sont 32 bits ARGB et 16 bits 5551 RGBA, et
0
sont transparents dans les deux.la source
ARGB
format 4 octets (couramment utilisées dans Smilebasic),0x00000000
Alpha = 0, Rouge = 0, Vert = 0, Bleu = 0. Le noir le serait0xFF000000
.GRP
mais je vais le laisser partir car les données réelles stockées sont les mêmes.Raccourcis ScPL pour iOS , 98 octets
Lien iCloud de raccourci
Prend un gif transparent 1x1 encodé en base64 et le redimensionne
la source
Jstx , 24 octets
Explication
Essayez-le en ligne!
la source
R , 21 octets
Essayez-le en ligne!
Renvoie un tableau 3D de zéros.
la source
Japt , 9 octets
Essayez-le en ligne!
la source
C ++, SFML, 131 octets
la source
JavaScript + HTML, 56 octets
Un clic sur "Exécuter l'extrait de code" générera un PNG transparent de 448 x 448 dans un IFRAME. Vous pouvez ensuite cliquer avec le bouton droit sur "Enregistrer l'image sous ..." pour la télécharger sur votre ordinateur.
la source