I tried: > // Set the paragraph formatting for the body... > let bodyAdvancement = bodyFont.maximumAdvancement > let bodyIndent = max(bodyAdvancement.width, > bodyAdvancement.height) / 2.0 > let bodyParagraphStyle = NSParagraphStyle.default().mutableCopy() > as! NSMutableParagraphStyle > bodyParagraphStyle.headIndent = bodyIndent > bodyParagraphStyle.lineBreakMode = .byWordWrapping > > // ...and separator > let separatorParagraphStyle = bodyParagraphStyle.mutableCopy() > as! NSMutableParagraphStyle > let separatorTextBlock = NSTextBlock() > separatorParagraphStyle.textBlocks.append(separatorTextBlock) > > // Set the body, but add a line for the initial separator > let richSeparator = NSMutableAttributedString(string: " \n", > attributes: [NSFontAttributeName: bodyFont, NSParagraphStyleAttributeName: > separatorParagraphStyle]) > let richBody = NSMutableAttributedString(string: body, > attributes: [NSFontAttributeName: bodyFont, NSParagraphStyleAttributeName: > bodyParagraphStyle]) > result.append(richSeparator) > result.append(richBody)
What I wanted: the separator line surrounded by a block. What I got: the separator and the body all surrounded by a block. I originally had the separator and body in a single string, and used a range to influence just the separator. This got the same result. I thought treating the separator and body in separate strings first wouldn’t infect the body with the text block, but it (illogically) does! How do I end the influence of a block? Put -1 entries in the text-block array? — Daryle Walker Mac, Internet, and Video Game Junkie darylew AT mac DOT com _______________________________________________ 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