gpt4 book ai didi

iphone - 将文字绘制成椭圆形

转载 作者:塔克拉玛干 更新时间:2023-11-02 10:14:55 31 4
gpt4 key购买 nike

我马上投入其中。

我正在使用 UIBezierPath 绘制一个对话泡泡,该泡泡很好,并且按我预期的方式工作。问题是我如何将文本添加到对话气泡中,以便它保留在 UIBezierPath 中。我对绘制文本的经验为零,而且我很难想出可能的解决方案。

我曾尝试在气泡内放置一个 TextView ,但解决方案效果不佳,我想使用更多的语音气泡。对于 textview 我只能使用矩形形状,我想从上到下填充气泡,并在中间使用完整的宽度。

如有任何帮助和建议,我们将不胜感激。

enter image description here

最佳答案

好吧,我终于想出了如何在 bezierpath 上绘制/渲染文本,这可以通过采用 CGPath 并使用核心文本来完成。我用过这个方法。

-(void)drawText:(NSString *)text {
CGContextRef myContext = UIGraphicsGetCurrentContext();

CGContextSaveGState(myContext);

CGContextTranslateCTM(myContext, 0.0f, self.frame.size.height);
CGContextScaleCTM(myContext, 1.0f, -1.0f);

CTFramesetterRef framesetter = CTFramesetterCreateWithAttributedString((__bridge CFAttributedStringRef)attString); // 7-2
CTFrameRef theFrame = CTFramesetterCreateFrame(framesetter, CFRangeMake(0, [attString length]), path, NULL); // 8-2

CTFrameDraw(theFrame, myContext); // 11-2
CGContextRestoreGState(myContext);
}

我遵循了本教程,女巫很棒。 http://invasivecode.tumblr.com/core-text

现在我只需要弄清楚如何计算 bezierpath 的大小以包含所有文本,并弄清楚如何将 bezierpath 和核心文本一起移动,它们在不同的坐标系上运行并且给了我所有的好处的问题。因此,如果有人对此有经验,我会洗耳恭听!

最好的问候莫腾

关于iphone - 将文字绘制成椭圆形,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11432549/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com