问题标签 [ico]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
177 浏览

java - Java Image4j:解码ico图像时方法不返回

我正在尝试使用 image4j 0.7 库来解码 .ico 文件。
我的代码在这里:

我的问题是:
   当我直接从文件中解码图像时,该方法效果很好;
   但是当我从字节缓冲区解码图像时,有时(有些文件可以,有些文件不行)该方法永远不会返回。
任何人都可以帮助我吗?谢谢。

0 投票
4 回答
1859 浏览

php - 如何从 .ico 文件中获取更大的图像?

我正在尝试使用 php 从网站下载和保存 favicon(.ICO)。我想将此 ico 文件转换为 png。

如果我理解正确,单个 .ICO 文件可以存储不同的图像分辨率,例如 16x16 和 32x32(谷歌的 favicon就是一个例子)。我的问题是,有没有办法选择要转换的 ico 文件?

目前我可以下载文件

此代码下载并保存一个名为favicon.ico.

然后当我运行这行代码时

我得到这个输出

所以我的问题是,我如何以编程方式访问其他图标大小?我可以在我的 Mac 上使用 Preview 清楚地看到它们,但不能在 php 中看到它们。

有任何想法吗?

0 投票
1 回答
61 浏览

c# - 如何读取(通过流)项目图标数据?

当你在项目上点击人民币时,进入属性,你可以为项目设置图标和清单。

在项目代码中,我想打开一个流来读取该图标数据。这个怎么做?

我不想在资源中再次手动添加该图标,此外我也无法为其打开流;-)。

0 投票
3 回答
4481 浏览

image - .ico 的 JavaFX 2.2 图像支持?

我正在开发一个必须具有自定义图标的应用程序。提供的图标在所有尺寸(256x256、48x48、32x32)中都是相同的,但在 16x16 中图标被简化了。

我考虑过 .ico 格式(我可以在其中存储所有不同的图标并让操作系统显示最佳)但javafx.scene.image似乎不支持它(我还没有找到任何确认)。

这是我设置图标的方式

在这种情况下,图标永远不会显示。如果我将此图标转换为 .png 图像,这可以工作,但会强制始终显示相同的图标(即使在 16x16 中)。

JavaFX 2.2 中是否有显示 .ico 的方法(即使以一种骇人听闻的方式)还是我必须使用其他图像格式?

更新

我将我的 .ico 分成多个 png(每个大小一个),然后一个接一个地加载它们。

256x256 和 16x16 是两个不同的图像,但 16x16 从未显示在应用程序的左上角(尽管这是最接近的尺寸)。

0 投票
1 回答
804 浏览

python - 从 PNG 或 JPG 使用 python 创建一个在 XP 上工作的 ICO

使用 python Pillow 从 PNG 或 JPG 创建的 ICO 无法在 Windows XP 上运行。ICO 在 Vista 和更高版本上运行良好。

我写了一个简单的代码来证明一个在 XP 上运行并用 PIL 保存的 ICO 在 XP 上破坏了它:

我正在使用 Python 2.7。

你知道 XP 上的 ICO 有什么特别之处吗?

你有其他我可以尝试的库的建议吗?

0 投票
1 回答
340 浏览

optimization - 支持将 .ico 文件中的嵌入 PNG 作为浏览器中的图标

我目前正在尝试优化网站资源的文件大小。网站图标通常因其较小的图像数据而相对较大。

在研究它们时,我偶然发现 Windows 支持将 PNG 嵌入到从 Windows Vista 开始的 .ico 文件中。https://en.wikipedia.org/wiki/ICO_(file_format)#PNG_format

这将允许在仍然使用 .ico 格式的同时大幅减小 favicon 的大小。

哪些浏览器和浏览器版本支持这种 .ico 格式?

0 投票
1 回答
1071 浏览

c++ - 将 ICO 转换为 BMP

我想读取 ICO 文件并将每个图标保存到单独的 BMP 中。我的代码完成了 ICO 文件中第一个图标的技巧。但后来我不知道在哪里设置文件光标(在哪里 fseek 到)。

这是我用伪代码执行的步骤:

  1. 读取 ICONDIR = 读取前 6 个字节:
    • UInt16 为“保留”(始终为 0)
    • Uint16 作为“类型”(ICO 为 1,CUR 为 0)
    • Uint16 作为“计数”(图标数)
  2. 读取 ICONDIRENTRY = 接下来的 16 个字节
    • Uint8 作为“宽度”
    • Uint8 作为“高度”
    • Uint8 作为“颜色”
    • Uint16 作为“彩色平面”
    • Uint16 作为“每像素位数”
    • Uint32 作为“图像大小”
    • Uint32 作为“偏移量”
  3. 将文件位置设置为“偏移量”。读取 BITMAPINFOHEADER = 下一个 40 字节
    • Uint32 作为“标题大小”
    • Uint32 作为 'width2'
    • Uint32 作为'height2'
    • Uint16 作为“颜色平面 2”
    • Uint16 作为“每像素位数2”
    • Uint32 作为“压缩”
    • Uint32 作为“图像长度”
    • Uint32 作为 'dpi X'
    • Uint32 作为 'dpi Y'
    • Uint32 作为“使用的颜色”
    • Uint32 作为“重要颜色”
  4. 读取图像的像素,从 offset = 40 + 'offset' 我读取 'width' * 'height' * 'bits per pixel' / 8 bytes。我从 ICO 文件中获得了第一个图标。到目前为止,一切都很好。

但是我现在去哪里寻找呢?我尝试从我完成的地方阅读,但没有运气。我知道下一个图标的大小是 48x48 字节,所以我想我应该阅读下一个 ICONDIRENTRY,它应该给我 'width' 和 'height' = 48。但我不知道从哪里开始阅读。

我正在用 PHP 编写程序,但是对于此类问题的 PHP 人员通常会说“使用库 X”或“使用 ImageMagick”,我只需要知道算法即可。这样的程序通常是用 C++ 编写的,所以我标记了这个 C++。

ICO 文件中的下一个 ICONDIRENTRY 在哪里(什么偏移量)?

0 投票
1 回答
2527 浏览

java - Launch4j 图标图像质量

我目前正在使用 Launch4j 将我的 JAR 文件转换为 EXE。在执行此操作时,我添加了一个图像图标 (ico)。现在当我编译程序并制作EXE时,图标图像质量不是很好。但是,如果我重命名文件,质量就很好。有人可以告诉我这里发生了什么以及如何制作它,这样我就不必重命名文件以获得良好的图标图像质量?谢谢。

0 投票
2 回答
2922 浏览

windows-7 - Winrar SFX 命令行忽略 -iicon 开关

我正在尝试在命令行上创建一个带有自定义图标的 winrar 自解压存档。

到目前为止一切顺利,除了自定义图标不起作用。每当我构建存档时,使用的图标都是默认的 winrar 图标。

如果我使用 SFX 对话框创建 SFX,那么它工作正常。这对我说,图标没有任何问题。

我正在使用的命令是:

0 投票
1 回答
18731 浏览

icons - 移动网站图标

所以我正在做一些关于移动网站用户体验的研究,并偶然发现了整个 favicon.ico 已经完全过时的事实。

环顾四周,我发现我需要各种新的图像/图标集才能在各种移动设备(如 android、iphone 和 windows 手机)上正确呈现“favicon”。

现在这里的问题是,我有以下代码:

但对我来说,这只是一个太大的代码块,无法正确显示 favicon。所以我想知道我可以删除哪些内容,以及我绝对应该保留哪些内容才能在“大多数”移动设备上正确呈现。

大多数使用移动网站图标的其他网站只使用上述代码中的一小部分,即:57x57、72x72、114x114 和 144x144,这些都是 apple-touch-icons。那么图像/代码部分对 iPhone 或其他移动用户来说真的那么重要吗?或者是否有可能对其进行更优化?

无论哪种方式,感谢您提供的信息。


编辑

因此,通过一些进一步的研究,我得到了这个结果,这似乎在大多数现代设备上都可以正常工作:

这对我来说当然更好,因为代码/图像的数量已经显着减少。只要它适用于大多数现代移动设备,我就很高兴。

结合这份“备忘单”本教程和 Philippe B 的帮助,我设法做到了这一点。

无论哪种方式,感谢所有帮助,并希望在未来几年他们将为网站图标制定适当的标准!