【问题标题】:How to create empty (0x0) image?如何创建空(0x0)图像?
【发布时间】:2015-05-18 02:34:03
【问题描述】:

我正在尝试找出一种方法来创建一个零宽度、零高度的图像,该图像将符合任何格式的标准。

我已经尝试过Windows Bitmap (BMP) format(仅54字节的标头文件),但图像阅读器似乎不会接受它。

理论0x0-BMP字节串:

424D360000000000000036000000280000000000000000000000010020000000000000000000C40E0000C40E00000000000000000000

哪种格式可以支持这一点,我可以使用哪些工具来创建它?即使是编程解决方案也足够了(例如 C# System.Drawing 脚本)。

【问题讨论】:

  • 注意:PNG 规范禁止零宽度/高度。

标签: image bit-manipulation image-formats


【解决方案1】:

图像阅读器往往不接受小于 1 的宽度或小于 1 的高度。因此,即使某些规范允许 0x0,我们也需要将 1x1 作为实际使用的最小值图像格式。 http://garethrees.org/2007/11/14/pngcrush/ 详细介绍了一个 67 字节的 PNG,可能是最小的。一个透明的也可以用 67 个字节来完成。

【讨论】:

    【解决方案2】:

    是的,一张 1x1 的透明图片应该可以解决问题。或者您可以制作一个使用该图像的 0x0 对象。例如:如果您要在程序中使用图像,则具有高度 = 0 和宽度 = 0 的 PictureBox。我已经成功使用的一种方法。

    但是从您的问题来看,我无法理解它是否与编程有关,而不是与图像制作有关。而且我不明白你为什么需要 0x0 图像,女巫实际上是看不见的......但我想你有你的理由。

    【讨论】:

    • 我认为他们这样做是因为这似乎是一个有趣的谜题 :)
    【解决方案3】:

    这里是svg文件,基本上是空的:

    <?xml version="1.0"?><svg xmlns="http://www.w3.org/2000/svg"/>
    

    默认为 1x1px。

    要强制0x0px图片,可以试试:

    <svg xmlns="http://www.w3.org/2000/svg" width="0" height="0"/>
    

    【讨论】:

      猜你喜欢
      • 2016-07-22
      • 2016-12-29
      • 2012-06-05
      • 1970-01-01
      • 2015-08-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-03-08
      相关资源
      最近更新 更多