Objective c 在中使用unicode符号或形状是否是一种不良做法;应用程序?

Objective c 在中使用unicode符号或形状是否是一种不良做法;应用程序?,objective-c,cocoa,macos,unicode,Objective C,Cocoa,Macos,Unicode,有几次我在我的一个Cocoa应用程序中使用unicode符号代替小图标,要么因为它更容易与文本内联绘制,要么因为我不想启动Photoshop来绘制简单的箭头。但我一直在想,我可能不知道本地化或字体会有什么问题吗?是否存在这些符号可能与我在工作站上看到的不匹配的情况?我不会这样做。与iPhone或mac电脑的外观和感觉不一致…我看不出这种快捷方式有什么真正的错误,特别是考虑到苹果对印刷质量的关注。在您看来,我会参考,并确保我非常仔细地指定了一个编程unicode字符,而不是依赖于在编辑器中键入它

有几次我在我的一个Cocoa应用程序中使用unicode符号代替小图标,要么因为它更容易与文本内联绘制,要么因为我不想启动Photoshop来绘制简单的箭头。但我一直在想,我可能不知道本地化或字体会有什么问题吗?是否存在这些符号可能与我在工作站上看到的不匹配的情况?

我不会这样做。与iPhone或mac电脑的外观和感觉不一致…

我看不出这种快捷方式有什么真正的错误,特别是考虑到苹果对印刷质量的关注。在您看来,我会参考,并确保我非常仔细地指定了一个编程unicode字符,而不是依赖于在编辑器中键入它


由于cocoa在内部广泛使用unicode,而且在OSX的最后几次迭代中,大多数未指定编码的API方法都被弃用,因此我认为您非常安全。当您编写的是桌面/iphone应用程序,而不是部署字体未知的Web应用程序时,从位图渲染的角度来看,如果您坚持使用unicode字符,则可以使用作为系统一部分提供的已知默认字体进行渲染。

只要您确保它是标准系统字体中包含的符号之一,并且设置为正确的字体,就不必担心任何问题。苹果本身在Aqua上使用Lucida Unicode符号。在终端用户的计算机上,唯一可能出错的方法是如果他的系统无论如何都坏了。

否;可可具有很强的营养价值。如果您确实有问题,很可能是您的错误,转换为或从错误的编码。(GCC以前在@“”文本中的\u序列存在问题,但我相信现在已经解决了。)


另一方面,在网页上使用是混淆非Mac用户的好方法。

好吧,在关于unicode符号或形状的问题中,使用unicode符号或形状时+1。应该是“a” app“虽然:/这根本不是真的。只要我不使用我的应用程序上的所有wingdings,并且可以相信它对所有用户来说都是一样的,unicode“向上箭头”将与我在Photoshop中绘制的.tiff“向上箭头”一样或更好。我的意思是将文本用作图形,然后你需要限制自己对齐文本元素,与之相反的是,你可以制作出漂亮的像素图形。mac是一款完美无瑕的用户体验,这取决于你需要它的方式和原因。我正在做的一个例子是在表视图行中的文本字符串旁边使用符号。因为所有的文本、大小、对齐和高光着色都是为我做的,我不需要做任何子类化NSCell的工作。最终的结果看起来很棒,与我尝试使用图像相比没有什么不同。但是,如果情况需要一个真正的图标,那么是的,我不会尝试将字符串固定在它的位置。我通常使用十六进制字符代码,所以听起来我很安全。如果你说的是在网页上使用它,那么使用实体引用还是裸字符都无关紧要。问题是并非所有字体都显示具有相同字形的专用字符。对于, 苹果的系统字体使用苹果标志,一些Windows字体使用窗口标志,至少有一种字体使用克林贡标志,这只是部分列表。无论您如何包含字符,这都是正确的。我们是否可以从图像中创建自定义unicode。如果我的本地目录中有图像,并尝试将其更改为unicode,以便将其用作@“\uexxx”。这是可能的吗?Ayaz Alavi:您可以创建一种字体,将所需图像作为专用区域中字符的字形,将该字体嵌入到应用程序中,并编写一个属性字符串,该字符串使用您的自定义字体和您选择的字符。但这会将透明上的“图像”限制为黑色(或任何其他单色),只需将图像嵌入属性字符串中就更容易了。