Open up CoreText on iPhone SDK
Originator: | jamesyjhu | ||
Number: | rdar://7109508 | Date Originated: | 31-Jul-2009 12:54 PM |
Status: | Open | Resolved: | |
Product: | iPhone SDK | Product Version: | 3.0 |
Classification: | Enhancement | Reproducible: | Always |
Summary: The CoreText.framework is listed under PrivateFrameworks. Yet, through dynamically loading framework symbols, CoreText seems to implement all functions, and constants described in the 10.5 CoreText framework. Steps to reproduce: 1. Create an iPhone View-based application. 2. In the AppDelegate.m file, add: #import <dlfcn.h> typedef uint32_t (*CTGetCoreTextVersionPtr)(void); static CTGetCoreTextVersionPtr _CTGetCoreTextVersion = NULL; 3. In the applicationDidFinishLaunching method, add: if (!_CTGetCoreTextVersion) { _CTGetCoreTextVersion = (CTGetCoreTextVersionPtr)dlsym(RTLD_DEFAULT, "CTGetCoreTextVersion"); } if (_CTGetCoreTextVersion) { NSLog(@"%X", _CTGetCoreTextVersion()); } Expected result: Should output "20000", as per 10.5 developer docs Actual result: Outputs "30000", possibly meaning that this version implements the 10.5 implementation, and then some. Notes: Since Quartz2D drawing functions don't support advanced glyph rendering functionalities (character shaping, ligatures, etc.), doing low level text rendering with unicode is next to impossible without libraries like ATSUI or CoreText on the iPhone. Please open up CoreText.
Comments
Please note: Reports posted here will not necessarily be seen by Apple. All problems should be submitted at bugreport.apple.com before they are posted here. Please only post information for Radars that you have filed yourself, and please do not include Apple confidential information in your posts. Thank you!