如何使用fontWithName:matrix:method设置行和列?

时间:2013-07-19 12:25:09

标签: objective-c cocoa

如何使用fontWithName:matrix:方法设置行和列?

float myMatrix[16, 32];

NSFont *font = [NSFont fontWithName:@"Courier" matrix: myMatrix];

我尝试过如上所述,但没有得到输出。或者还有其他类或方法吗?请找到合适的解决方案。

1 个答案:

答案 0 :(得分:0)

尽管被称为“矩阵”,fontWithName:matrix:所期望的数组只是一个扁平数组;它不是一个数组数组(“二维数组”)。

The documentation says

  

fontMatrix是PostScript语言中使用的标准6元素转换矩阵,特别是makefont运算符。在大多数情况下,您只需使用fontWithName:size:创建标准缩放字体。

     

您可以为NSFontIdentityMatrix使用定义的值[1 0 0 1 0 0]。使用NSFontIdentityMatrix以外的矩阵创建的字体不会在翻转视图中自动翻转。

因此,您需要传递一个包含六个CGFloat的平面数组。 (除非您使用真正的旧版Xcode,否则它们不应该是float。)

他们需要确定哪六个号码,只有你能确定,因为你是唯一知道你在问题中显示的代码中“16”和“32”重要性的人。