Is there a way to wrap text from a UITextView
around a UIImage
without using CoreText
?
I have been playing around with attributed strings without much luck, and CoreText
just seems extremely complicated so I would rather stay out of it.
Is there a way to wrap text from a UITextView
around a UIImage
without using CoreText
?
I have been playing around with attributed strings without much luck, and CoreText
just seems extremely complicated so I would rather stay out of it.
This seems to do the trick:
UIBezierPath * imgRect = [UIBezierPath bezierPathWithRect:CGRectMake(0, 0, 100, 100)];
self.textView.textContainer.exclusionPaths = @[imgRect];
Swift,
textView.textContainer.exclusionPaths = [UIBezierPath(...)]
or just
textView.textContainer.exclusionPaths = [UIBezierPath(...the image frame)]
Works only from iOS 7 and up.
In Swift 4:
self.textView.textContainer.exclusionPaths = [UIBezierPath(rect: imageView.frame)]
let view = UIView()
and [UIBezierPath(rect: view.frame)]
, got no error but still not working... any idea? –
Arratoon override func viewDidLayoutSubviews()
(if in UIViewControlelr
) or override func layoutSubviews()
(if in UIView
). –
Coronet The short answer is you can't without CoreText pre iOS 7.
I've been struggling with this myself a while ago and this post was very helpful to me.
It is CoreText though.
© 2022 - 2024 — McMap. All rights reserved.