> On 23/06/2016, at 5:29 AM, Steve Christensen <puns...@mac.com> wrote:
> 
> Where are you specifying the text encoding of the HTML "document" passed to 
> NSMutableAttributedString(HTML:, documentAttributes:)? The default encoding 
> for HTML used to be ISO-8859-1, not UTF-8, for HTML 4 and earlier (and could 
> continue to be interpreted that way by NSAttributedString for compatibility). 
> That could explain the extra character being displayed since the string 
> you're passing as the HTML parameter to NSMutableAttributedString doesn't 
> include, for example, a charset="utf8" meta tag in its <head> that would 
> specify the desired encoding.
> 
> And, unless you're doing some extra formatting not shown in your code 
> snippet, is there any reason you wouldn't be initializing ats with 
> NSAttributedString(string:s)?
> 

Copied from another project which uses an html document to be inserted into the 
NSTextView.
This project did have a database which did not have an HTML layout field and I 
forgot to change to NSAttributedString(string:s).
Found another DB which has an HTML data field (after I posted the original 
email), so I will drop my hand created version and use that.

I don’t deal with HTML much (besides basic websites) and completely forgot 
about the encoding.

Thanks for all the help. 

> 
>> On Jun 22, 2016, at 9:32 AM, tridiak <trid...@ihug.co.nz> wrote:
>> 
>> I am setting some text to a NSTextView which includes the ‘½’ character. 
>> 
>> s = name + “ CR "
>> switch (CR) {
>>      case 0.5:
>>              s=s+”½” // \u{00bd}
>>      case 0.33:
>>              s=s+"⅓"
>>      case 0.25:
>>              s=s+"¼"
>>      case 0.2:
>>              s=s+"⅕"
>>      case 0.17:
>>              s=s+"⅙"
>>      case 0.14:
>>              s=s+"⅐"
>>      case 0.13:
>>              s=s+"⅛"
>>      default:
>>              if CR<1 {s=s+String(format:"%.1f", CR)}
>>              else {s=s+String(format:"%.0f", CR)}
>>      }
>> s=s+"\n”
>> 
>> let d : NSData = s.dataUsingEncoding(NSUTF8StringEncoding)!
>> let ats : NSMutableAttributedString = NSMutableAttributedString(HTML: d, 
>> documentAttributes: nil)!
>> self.blab.textStorage?.setAttributedString(ats)
>> 
>> 
>> What I see is 'Aasimar CR ½’ instead of 'Aasimar CR ½’.
>> Where is the ‘Â' coming from?
>> Is it the font or some swift-obj-C confusion?
> 


_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to