问题标签 [cfstring]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
182 浏览

swift - 如何在 Cocoa/Cocoa Touch/Foundation 中自定义 CFString 音译

我正在探索如何使用CFStringTransform希伯来语音译文本,但我遇到了一些不一致之处,其中应该以不同方式发音的字母以完全相同的方式书写,或者 Apple 算法未考虑到的特殊情况。

Kaf (כּ → K) vs Khaf (כ → Ḵ)

  • כִּי(“因为”)

    /li>
  • שָׁכָחְתִּי(“我忘了”)

    /li>

כִּי 中的kaf在英语中的发音类似于 K,而שָׁכָֽחְתִּי中的 khaf 发音为lochBach,通常音译为 CH、KH 或 Ḵ。但是,这两个字母都音译为 K。

(פּ → P) vs(פ → F)

  • פַּרְעֹה(“法老”)

    /li>
  • יוֹסֵף(“约瑟夫”)

    /li>

虽然 פַּרְעֹה 中的pei发音类似于 P 的发音(并相应地音译),但 יוֹסֵף 中的(尾随)fei发音为 F (并相应地音译)。但是,两者都用 P 音译。

带pataḥ g'nuva的尾随辅音

来自英语维基百科中关于希伯来语发声的文章:

单词结尾处字母 ח, ע, ה 上的补丁在字母之前而不是之后发声。因此,נֹחַ (Noah) 发音为 /ˈno.ax/。这仅出现在单词的末尾,并且仅出现在 patach 和 ח、ע 和 הּ(即 ה 中带有点 (mapiq))。这有时被称为 patach ganuv 或“偷来的” patach(更正式地说,“偷偷摸摸的 patach”),因为声音“窃取”了一个想象的附加辅音以使额外的音节。

然而:

  • תַפּוּחַ(“苹果”)

    /li>

问:我怎样才能改变行为CFStringTransform来解释这三种情况?

从 的参考资料中CFMutableString,我们看到CFStringTransform作为transform:参数

一个 CFString 对象,用于标识要应用的转换。有关有效值的列表,请参阅CFStringTransform 的转换标识符。在 OS X v10.4 及更高版本上,您还可以使用ICU User Guide for Transforms中定义的任何有效 ICU 转换 ID 。

文档看来,ICU 转换的规则足够灵活,可以自定义。甚至还有一个可以从他们的 playground访问的规则编辑器,但是,虽然我发现了一个 Stack Overflow 问题,它处理一些切线相似的事情,但我找不到一个明确记录的 RTL 语言的方法。

0 投票
2 回答
548 浏览

ios - 除了 CFStringGetSystemEncoding() 之外,如何在 Swift 中检索 CFStringEncoding?

此编码不起作用,尽管它存在于文档中。

为了获得 MacRoman,我使用了CFStringGetSystemEncoding()

我的问题是如何检索除此之外的 CFStringEncoding 。

0 投票
1 回答
489 浏览

ios - NSString* 到 CFStringRef 导致无用的字符数组

我有以下代码片段:

当我在 return 语句处中断时, ref 包含正确的数据,一个带有扩展名的漂亮字符串。但是当我这样使用它时:

它会导致无用的字符链。当我从函数返回正确的值时,是否有什么东西破坏了我的编码?我能做些什么?

0 投票
1 回答
45 浏览

objective-c - 尝试将字符串附加到 NSTextField 中的另一个字符串以在 PDF 文件上打印

我有一种方法可以将输入的客户数据保存在调用 createPDFFile 方法的表单中。我已经创建了 PDF 文件,并且目前在其中有一些填充字符串,以便我可以布置 PDF 文件,我现在想从 NSTextField 中获取 stringValue,然后将其附加到包含磁贴的字符串中,例如:@ “名称:”从 NSTextField 中附加 stringValue。我可以让第一个项目工作,因为我将 IBOutput 更改为保留,并且对第一个项目有效,但对第二个项目无效,依此类推。我收到 BAD_AXCESS 错误,但仅在方法完成时。

这是 PDF 绘制方法的开始:

这是保存方法:

这是 createEstimatePDF 方法

我认为有些东西正在被释放,但我不知道在哪里。我观察了变量并逐步检查,它们一直显示值,然后繁荣,击中该方法的最后一个右括号,然后显示 BAD_ACCESS 错误。我不明白的是,这行得通,

我也尝试复制这些值以通过方法以及传递的客户对象传递数据。

如果需要更多信息,我可以提供。所有的 NSTextfields 都保留

0 投票
3 回答
1477 浏览

swift - 如何快速使用 CFDictionarySetValue?

目前,我正在将硬件解码 Obj-C 代码转换为 Swift 版本。(Xcode 8,Swift 3)。

我不知道如何设置字典来设置屏幕上的输出选项,我也不知道如何使用它。

以下代码在 Obj-C 项目中运行良好:

我尝试了以下 Swift 代码,但出现了运行时错误:

将 转换为 是错误的CFStringUnsafeRawPointer?还是使用该CFDictionarySetValue方法是错误的?

这是我的错误日志。

0 投票
0 回答
53 浏览

ios - 通过简单的套接字发送 UIImage 作为 CFString

我试图通过一个只接受 CFString 来传递数据的简单套接字发送 UIImage 。

我尝试将 UIImage 转换为 NSData 转换为 NSString 转换为 CFString 并返回,但最终的 UIImage 始终为零。

转换:

重新转换:

0 投票
0 回答
46 浏览

ios - 为联系人保存自定义标签 (CFStringRef) 始终会还原文本“主页”

使用 将电话号码“技术”作为自定义标签保存到联系人时ABRecord,在联系人中查看时,“技术”标签将恢复为“家庭”标签。其他一切都按预期保存。预览显示正确的字符串“技术”,但在联系人中保存和查看时会发生变化

预期行为:第二个电话号码与标签一起保存:“技术”

实际行为:另存为标签“主页”

0 投票
0 回答
107 浏览

ios - 用音标进行拼音本地化

我正在创建一个 iOS 应用程序,其中有拼音语言的本地化。问题似乎是我没有像谷歌翻译那样得到完美的翻译词。

我正在使用这段代码将汉字翻译成拼音,但我无法获得某些拼音字符中存在的音标。

我想要这种类型的翻译

谢谢

0 投票
1 回答
1754 浏览

c - CFStringCreateWithCString 为少于 10 个字符的字符串返回 null

我试图在运行时CFStringRef从 a创建一个新的const char*,但CFStringCreateWithCString返回null所有短于 10 个字符的字符串:

上述示例的输出:

如您所见,第一个字符串(由 9 个字符组成)返回null,而第二个字符串(10 个字符)工作正常。

我做了一些测试,它似乎CFStringCreateWithCString适用于所有超过 10 个字符null的字符串,但总是返回 9 或更少的字符串。

什么可能导致这种行为,我该如何解决?

0 投票
0 回答
777 浏览

swift3 - Swift 字符串数组到 UnsafeMutablePointer>!

我正在尝试使用 Swift调用DADiskMountWithArguments 。

我的问题是从 Swift 字符串数组到UnsafeMutablePointer<Unmanaged<CFString>>!这是预期的参数输入格式。

从文档:

arguments
  要传递给 /sbin/mount -o 的挂载选项的空终止列表。

在 Objective-C 中,我通过创建参数值来完成相同的调用,如下所示:

但是我还没有成功地将这个方法移植到 Swift 上。而且我还没有找到将参数数组放入内存并获得正确指针的方法。

我尝试过的事情:

  1. 尝试使用 CFArrayGetValues:

我应该使用不透明指针从 UnsafeRawPointer 桥接到 UnsafeMutablePointer 吗?

  1. 尝试在没有 CFArrayGetValues 的情况下创建 c 字符串数组 (char **)。但我真的不知道我会怎么做呢?

还是不透明指针是桥接不同类型的关键,还是我看错了?

任何帮助是极大的赞赏!

谢谢你。