如何为MacOS创建基于模板的图像和PDF图标?

5

摘要

我想创建一个基于图片或PDF的键盘布局图标模板,当在菜单栏中显示时,它会根据 MacOS Mojave 的暗/亮模式切换颜色。

背景

我使用Ukelele创建了一个自定义的键盘布局。我基于原生键盘布局创建它,允许 Ukelele 从原始布局中提取图标。我没有触及图标。但是当我切换到暗模式时,我的布局图标仍然是黑色的,而在原始布局中,它变成了白色。

我做了一些研究。根据Apple的说法,图标要自动适应暗/亮模式,它必须是一个模板图像。(我猜 Ukelele 已经从原始布局中提取一个基于图像模板的图标,并将其转换为非模板化的图标。)

我猜想一个模板图像是一张只有 alpha 通道没有彩色通道的 PNG 图像。

经过进一步的研究,我发现Apple 还提到了一些所谓的 PDF 图标。然而,苹果并没有给出任何细节。

问题

  1. 我的猜测正确吗?模板图像是一张只有 alpha 通道没有彩色通道的 PNG 图像吗?

  2. 如何创建这样的图像?(我可以使用 Adobe CC、Affinity Photo 和 Designer、Pixelmator Pro 和所有原生 MacOS 应用程序。)

  3. PDF 图标是什么,我在哪里可以找到详细信息,并如何创建它们?具体而言,iconutil 是否支持 PDF 图标?

谢谢!


嘿,我也在尝试弄清楚这个问题。关于模板图像,你似乎是正确的,根据苹果的说法,图像模板需要将所有颜色设置为零并仅使用透明度。不幸的是,当我尝试使用这样的PNG文件时,它不起作用。更令人沮丧的是,即使我复制内置布局(使用Ukelele),它仍然不起作用。因此,看起来还有其他魔法涉及其中。 - kirelagin
嘿,谢谢你的回复。如果我们发现了新的东西,让我们互相保持更新。 - Orius
我也遇到了同样的问题,但根据我的研究,任何只有两种颜色 - 黑色和透明的图像都可以用作模板图像。这是图像被“渲染”的方式,“模板”是NSImage的一个属性。因此,真正的问题似乎是菜单栏将内置键盘布局的图标呈现为模板,但不会对自定义键盘布局的图标进行处理。不确定是错误还是故意的。在苹果开发者论坛上提问 - Nikolay
1个回答

1

就像我在评论中写的那样,我在苹果开发者论坛上询问并得到了答案:在Ukelele中,您必须在捆绑窗口中勾选“模板图标”复选框,位于“大写锁定切换”列旁边。

除此之外,图标的图像必须仅使用黑色和透明颜色。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接