小编Joe*_*oel的帖子

获取跟踪iOS UIFont中的角色的路径

假设我在我的iOS应用程序中使用了自定义字体"Foo".我已将它添加到我的项目,plist等等,我可以UILabel用它来渲染s等等.

现在,如果我想找出一系列能够"追踪"该字体中的字母"P"的点,我将如何获得该点序列?例如,假设我想用a CGPath来绘制字母'P',就像绘图仪一样......

我只需要一个CGPoints数组中的序列,如果绘制为路径将绘制一个'P'.

我意识到对于像'T'这样的字母,这可能没有意义,因为笔必须被提升以越过'T'.所以也许我需要一系列CGPath的...

有关如何实现这一目标的任何提示?

谢谢!

iphone core-graphics uifont cgpath ios

17
推荐指数
1
解决办法
4532
查看次数

CFBundleURLName必须与CFBundleIdentifier匹配吗?

如果我希望iOS App App1在设备上启动App2,那么CFBundleURLName是否需要匹配Info.plist中CFBundleURLTypes中的CFBundleIdentifier?

例如,如果我在App1中

<key>CFBundleIdentifier</key>
<string>com.foo.App1</string>
...
<key>CFBundleURLTypes</key>
<array>
<key>CFBundleURLTypes</key>
<array>
    <dict>
        <key>CFBundleURLSchemes</key>
        <array>
            <string>fooscheme</string>
        </array>
        <key>CFBundleURLName</key>
        <string>com.foo.App1</string>
    </dict>
</array>
Run Code Online (Sandbox Code Playgroud)

在上面的例子中,App2可以在App1中启动"fooscheme:"url.但是,如果我将App1的Info.plist更改为包含

<key>CFBundleURLTypes</key>
<array>
    <dict>
        <key>CFBundleURLSchemes</key>
        <array>
            <string>fooscheme</string>
        </array>
        <key>CFBundleURLName</key>
        <string>com.foo.xyz</string>
    </dict>
</array>
Run Code Online (Sandbox Code Playgroud)

即,CFBundleURLName!= CFBundleIdentifier,然后App2再也无法在App1中启动"fooscheme:"url.

有什么想法吗?

我没有看到CFBundleIdentifier必须与CFBundleURLName匹配的任何Apple文档,但实际情况似乎如此.或者我错过了什么?

谢谢!

iphone ipad ios

5
推荐指数
1
解决办法
1万
查看次数

Javascript 闭包是保留整个父词法环境还是仅保留闭包引用的值的子集?

考虑以下示例:

function makeFunction() {
  let x = 3;
  let s = "giant string, 100 MB in size";

  return () => { console.log(x); };
}

// Are both x and s held in memory here
// or only x, because only x was referred to by the closure returned
// from makeFunction?
let made = makeFunction();

// Suppose there are no further usages of makeFunction after this point

// Let's assume there's a thorough GC run here

// Is s from …
Run Code Online (Sandbox Code Playgroud)

javascript v8 node.js

5
推荐指数
1
解决办法
74
查看次数

在Ruby中将Unicode Number转换为Integer

不幸的是,我有一些数字作为字符串使用非ASCII数字.我需要将它们转换为常规的Ruby数字来对它们进行一些数学运算.因此,例如,如果数字作为字符串"19"进来,这是19,但作为字符"扩展阿拉伯语数字一"后跟"扩展阿拉伯语数字九",我需要一种方法将其转换为Ruby整数Fixnum 19.

问题是,根据这个,有55组这些扩展数字的0-9,即我需要处理550个总代码点.

我已经知道,对于给定的组,连续数字的代码点是连续的,例如扩展的阿拉伯语数字0是U + 06F0,扩展的阿拉伯语数字9是U + 06F9,所以我可以测试每个数字以查看哪个范围它在,然后从我正在查看的字符的代码点中减去零代码点作为整数,给我常规的Ruby整数.例如,6F9 - 6F0 = 9(粗略地说,一旦它们被转换为整数代码点).

但要做到这一点,我需要为这55个范围创建一个巨大的查找哈希,这就是很多打字.我想我可以将上面链接中的HTML表格翻译成红宝石地图,但这感觉很糟糕.

我已经知道了

"??" =~ /[[:digit:]]+/
Run Code Online (Sandbox Code Playgroud)

将是匹配,但问题是"如何将这些Unicode数字转换回常规的Ruby整数?"

一定有更好的方法!有任何想法吗?

谢谢!

ruby regex unicode ruby-on-rails-4

4
推荐指数
1
解决办法
274
查看次数