首先,此解决方案不适用于连字: Convert or Print CGPDFStringRef string
我正在阅读 PDF 中的文本并尝试将其转换为 NSString。我可以使用 AppleCGPDFScanner
以CGPDFString
. “fi”连字字符给我带来了麻烦。当我在调试器中查看我的字节数组时,我看到一个 '\f'
所以为了简单起见,假设我有这个字符:
unsigned char myLigatureFromPDF = '\f';
最终我想把它转换成这个(“fi”连字的 unicode 值):
unichar whatIWant = 0xFB01;
这是我失败的尝试(我从PDFKitten
btw 复制了这个):
const char str[] = {myLigatureFromPDF, '\0'};
NSString* stringEncodedLigature = [NSString stringWithCString:str encoding:NSUTF8StringEncoding];
unichar encodedLigature = [stringEncodedLigature characterAtIndex:0];
如果有人能告诉我如何做到这一点,那就太好了另外,作为旁注,调试器如何解释未编码的字节数组,换句话说,当我将鼠标悬停在数组上时,它如何知道显示'\ f'
谢谢!