0

我正在使用以下代码将包含英语和希伯来语字符的文本字符串复制到 UIPasteboard。

UIPasteboard *appPasteBoard = [UIPasteboard generalPasteboard];

appPasteBoard.persistent = YES;

NSString *toCopy = [self.workingDvarTorah description];

[appPasteBoard setValue:toCopy forPasteboardType:(NSString *)kUTTypeUTF8PlainText];

我已经实现了我自己的描述方法版本,复制相关数据,这里是:

- (NSString *)description{

    //  Build a string from the tags

    NSMutableString *tags = [[[NSMutableString alloc] init] autorelease];

    BOOL isFirstTag = YES;

    for (Tag *aTag in self.tags) {

        //  Add a comma where necessary, but make 
        //  sure that we're not adding a comma to
        //  the beginning of the first tag.

        if (isFirstTag) {
            isFirstTag = NO;
            [tags appendFormat:@" "];
        }else{
            [tags appendFormat:@", "];
        }

        [tags appendFormat:@"%@", aTag.tagText];
    }
    return [NSString stringWithFormat:@"%@ \n\n %@\n\n%@: %@", self.dvarTorahTitle, self.dvarTorahContent, NSLocalizedString(@"Tags", @""), tags];
}

文本复制到粘贴板,但是当我将其粘贴到笔记或邮件中时,某些字符(nameley the dagesh,unicode character 05BC)显示为一个框,而不是它应有的方式。我已经尝试了所有文本 UTI 类型。

难道我做错了什么?这是 iOS 或 Notes 应用程序中的错误吗?

除了删除有问题的字符之外,我能做些什么来纠正问题?

4

1 回答 1

0

根据 Wikipedia,有两种表示带有 dagesh 的希伯来字符。显然,有一个“组合字符”和一个由两个替代字符组成的替代表示。创建我的初始数据文件的程序可能使用了组合字符。当数据在没有组合字符的情况下再次导出时,复制粘贴工作。

因此,iOS 的 Notes 和 Mail 似乎不支持某些字符。

于 2012-01-02T18:45:05.310 回答