向资源目录添加图像或图标集,以便与NSToolbarItem一起使用。

3
我有一组像素完美的图标,想要将其用于我的应用程序工具栏(NSToolbar)上。由于工具栏是可配置的,因此我需要提供四个尺寸的图标:小号、标准号、small@2x和standard@2x。
我没有找到任何关于这些图标大小的官方信息,但非官方信息(经过我的测试确认)如下: 小号为24像素,标准号为32像素。
因此,我需要添加四个不同的图像大小到我的图像集中:24x24像素、32x32像素、48x48像素、64x64像素。
目前,我还没有找到正确的方法来解决这个问题。我尝试了十几种不同的方法,但没有找到一个能保持所有四个图像像素完美质量的方法。
我相信,每次必须更改图像时,我可以手动加载正确大小的图像,但我想知道是否有正确的方法来解决这个问题。
有人有好的解决方案吗?
是的,在每次测试之前,我都会清除构建文件夹。

Oleg,你有没有找到这个问题的答案?我也有完全相同的问题:如何为24x24 1x/2x浅色/深色版本以及32x32 1/x/2x浅色/深色版本添加单独的资源。当然 - 我总是可以添加单独的资源。但是NSToolbarItem如何知道查找单独的资源? - SMGreenfield
SMGreenfield,我相信这个问题没有简单的答案。我决定在我的工具栏上禁用标准大小(32x32和64x64),并将它们限制为仅使用小尺寸。 - Oleg Korzhukov
在与苹果开发人员合作后,我发现提供一个单一的128 x 128像素图像(分别为浅色模式和深色模式)非常完美。我曾担心缩放问题,但经过仔细观察,它似乎非常准确地符合我们使用的.png文件。现在,如果我能让NSToolbarItem的allowsDuplicatesInToolbar功能工作起来就好了<g>... - SMGreenfield
2个回答

0

NSToolbar.sizeModes是枚举类型:small和regular。Small为24x24,regular为32x32;此外,视网膜选项允许@2x(48x48和64x64),未来可能还会有@3x。

关于这些尺寸的苹果文档可以在这里这里找到。

请确保使用枚举Regular而不是未记录的"Standard"。


这太棒了,你提供了官方参考!你有什么想法如何将所有这些图片放到同一个名称的资产下? - Oleg Korzhukov

0
请查看苹果开发者网站的人机界面指南,以获取格式和大小要求。不同设备的要求不同,而且相当详细。
如果您还没有准备好发布,只是想要漂亮的图形进行测试,可以使用一个512 x 512的pdf文件,标记为“image@2x”,作为快速而简单的解决方案。您需要设置
imageScaling = .scaleProportionallyDown

而 Cocoa 将会处理其余的事情。但它绝对还没有准备好面向大众。


  1. 能提供一个苹果文档中有关工具栏图像大小的引用吗?谢谢。
  2. 你的“快速而简单的解决方案”并不能满足我“像素完美”的需求。谢谢。
- Oleg Korzhukov

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