最近,我使用我喜欢的图像编辑器制作了1x1黑色像素(当您想便宜地用HTML绘制实心盒时,它可能会派上用场)。即使我使其成为单色PNG,但它还是120个字节!我的意思是,这很陡。 120字节。 对于一个像素. 。然后,我将其转换为GIF,将大小降低到43个字节。好多了,但是...

挑战

最短的图像文件或程序 或者 生成 1x1黑色像素。提交可能是:

  • 代表1x1黑色像素的图像文件。选择的格式必须能够代表比1x1更大的图像,并且不能是临时的(也就是说,它不能是您刚好为Code Golf组成的图像格式)。图像文件将按字节计数对。
  • 生成此类图像文件的程序。程序将按角色数进行排名,就像代码高尔夫的往常一样。

只要答案属于这两个类别之一,任何东西都是公平的游戏。

另外,对于图像文件,请在十六进制或逃脱中指定它们,而不是使用外部图像主机:-)

有帮助吗?

解决方案

WBMP, ,5个字节:

00 00 01 01 00

无法想象任何较小的东西

其他提示

数据URI, ,83个字符

data:image/gif;base64,R0lGODlhAQABAIAAAAAAAAAAACH5BAAAAAAALAAAAAABAAEAAAICTAEAOw==

图像文件: 10个字节, , 在 PGM 格式:

P5 1 1 1\n\0

为了创建它,在Python中: 40个字符

 open('b.pgm', 'w').write('P5 1 1 1\n\0')

Unicode艺术 格式:

·

PBM 格式是黑白图形格式。

单个黑色像素的二进制表示将需要8个字节,并将其写入C#的文件将看起来像:

File.WriteAllText("p.pbm", "P4 1 1 ÿ");

徽标 /乌龟基本,12个字节

PENDOWN FD 1

我不记得是否 pendown 可以缩短到 pd 是否,如果是这样,则将其降低到7个字节。

bash:31个字符

从InterWebs下载单个像素GIF的脚本比单像素本身少。

wget http://tinyurl.com/2w97dyo

Python+PIL 68个字符

from PIL import Image
Image.fromstring("P",(1,1),"\0").save("B.gif")

PostScript,29个字节。并不是真正的“单像素”,但它是我的预览屏幕上的一个像素。

0 0 moveto .5 0 lineto stroke

Python(w/ pil)(85个字符):

from PIL import Image
i=Image.new("P",(1,1))
i.putpixel((0,0),(0))
i.save("i.gif","GIF")

我用过的旧图像格式:4个字节

 01 00 00 0C

该格式由16位整数(Little Endian)组成:

位映射:

0-10:  number of pixels to shade
10-11: control bits
12-15: VGA16 pidel color

控制位值:

0: normal
1: end of line
3: end of file

SVG,59个字符:

<svg><rect width="1" height="1" style="fill:#000;"/></svg>

不幸的是,包括Doctype的生长到157 ...:

<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg><rect width="1" height="1" style="fill:#000;"/></svg>

drracket: :23个字符

#lang slideshow
(disk 1)

我参加这个聚会很晚,但是 http://www.perlmonks.org/?node_id=7974 还有更多 一般的 到目前为止任何人都发布的答案:

## tinygif
## World's Smallest Gif
## 35 bytes, 43 if transparent

use strict;
my($RED,$GREEN,$BLUE,$GHOST,$CGI);

## Adjust the colors here, from 0-255
$RED   = 255;
$GREEN = 0;
$BLUE  = 0;

## Set $GHOST to 1 for a transparent gif, 0 for normal
$GHOST = 0;

## Set $CGI to 1 if writing to a web browser, 0 if not
$CGI = 0;

$CGI && printf "Content-Length: %d\nContent-Type: image/gif\n\n", 
  $GHOST?43:35;
printf "GIF89a\1\0\1\0%c\0\0%c%c%c\0\0\0%s,\0\0\0\0\1\0\1\0\0%c%c%c\1\0;",
  144,$RED,$GREEN,$BLUE,$GHOST?pack("c8",33,249,4,5,16,0,0,0):"",2,2,4;

XPM, ,57字节:

/* XPM */
static char *_x_[] = {"1 1 1 1",".c #000","."}

在寻找Wikipedia文章来链接它时,我发现 XPM2,26字节, ,但是我在这里无法通过任何程序打开它。

! XPM2
1 1 1 1
. c #000
.

rebmu: :16个字符

en'PNGmkIM![1x1]

如果您希望它根据您输入的参数保存到文件,则在程序中添加了三个字符:

rebmu/args [wrAen'PNGmkIM![1x1]] %my-black-pixel.png

该程序是用于以下rebol的速记,为了清楚起见,括号添加了:

write a (encode 'png (make image! [1x1]))
<div style="height: 0; width: 1px; border-top: 1px solid #000">

但是定位将需要更多。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top