freenode/#shirakumo - IRC Chatlog
Search
9:22:52
Shinmera
Say what you will about MS but Apple's docs are by far the worst of any OS I've had to deal with
9:25:34
Shinmera
There's three APIs (!!) that deal with fonts, each of them offering extremely similar APIs
9:26:25
Shinmera
apparently UIKit is iOS only, AppKit macOS only, and CoreText idunno, but only CoreText gives access to the font file.
13:21:29
darthmatch
shinmera: here's the font rendering library I was talking about: http://sluglibrary.com/
13:42:29
Shinmera
Hmm, it does have rtl bidi, but no ttb. Does line wrapping, but not the unicode standard's algorithm as far as I can tell. It's also an opaque C++ blob with no source, so a no-go for me.
13:56:27
Shinmera
and the only way to get the string to a standardised format involves a call to a function that expects a struct-by-value argument
13:59:14
Shinmera
Or maybe not? I don't get it couse there's three functions to get the contents, all of them different
14:01:00
Shinmera
So there's https://developer.apple.com/documentation/corefoundation/1542721-cfstringgetcstring?language=objc
14:01:00
Colleen
developer.apple.com/documen... Website (HTML), Title: CFStringGetCString - Core Foundation | Apple Developer Documentation
14:01:55
Shinmera
but the encodings enum does not include utf8? https://developer.apple.com/documentation/corefoundation/cfstring/external_string_encodings?language=objc
14:01:56
Colleen
developer.apple.com/documen... Website (HTML), Title: External String Encodings | Apple Developer Documentation
14:04:30
Shinmera
Ah it does exist, but in another enum. https://developer.apple.com/documentation/corefoundation/cfstringbuiltinencodings?language=objc
14:04:31
Colleen
developer.apple.com/documen... Website (HTML), Title: CFStringBuiltInEncodings - Core Foundation | Apple Developer Documentation
14:24:57
Shinmera
https://developer.apple.com/documentation/coretext/1508984-ctfontcopyattribute?language=objc
14:24:58
Colleen
developer.apple.com/documen... Website (HTML), Title: CTFontCopyAttribute - Core Text | Apple Developer Documentation
14:25:07
Shinmera
"Refer to the attribute definitions documentation for information as to how each attribute is packaged as a CFType.
14:56:32
Shinmera
Also fantastic: their api for getting font traits (weight, width, slant) returns these properties "normalised" in a -1 to +1 range, but there's no information on what the typicaly values of "thin", "light", "bold", etc would map to for the weight, for instance.