jjzjj

iphone - 来自文本的 CGPathRef

我们如何获取特定字符串的路径?我刚发现CTFontCreatePathForGlyph会给出CGPathRef,但它会是文本的轮廓。例如字母“O”我从上面的方法得到的路径就像一个圆圈..看看我们如何绘制字母“O”只是一个圆圈。我希望以上详细信息足以理解我的问题。让我知道任何更新我需要这个文本路径来显示文本绘图动画..更新请看下图。(1)显示了我现在得到的..但我需要(2)中所示的路径 最佳答案 任何贝塞尔路径,包括您从字形中获得的路径,都只是一系列相连的贝塞尔曲线。你在屏幕上看到的是CGContext渲染路径的结果。可以描边路径,在

objective-c - 如何使用 CATransform3D 为一组 CALayer 添加阴影

如何给一组CALayer添加阴影?我有一个“FoldingView”类,它维护几个“SliceView”类。每个sliceview的层都将被赋予一个CATransform3D,我在其中使用透视属性(.m34=1.0/-1000)。如何添加具有良好视觉逻辑的阴影?到目前为止,这是我一直在想的:我可以获得每个切片的路径并将它们组合起来以获得阴影路径。我不知道当图层使用CATransform3D时如何获取CALayer的路径它可能在视觉上有效,但如果光线应该来自左上角,我担心它不会完全正确。我可以将标准CALayer阴影应用于所有层看起来不太好,因为阴影相互重叠如果有人有任何其他建议或知道如

iphone - 在 CGPath 之间着色

我正在我的应用中构建一个绘图类型的工具。它从用户那里获取触摸点并在点之间画线。如果用户创建了3个或更多触摸点,它将最后一个点连接到第一个点。代码的摘录是:startPoint=[[secondDotsArrayobjectAtIndex:i]CGPointValue];endPoint=[[secondDotsArrayobjectAtIndex:(i+1)]CGPointValue];CGContextAddEllipseInRect(context,(CGRectMake((endPoint.x-5.7),(endPoint.y-5.7),9.0,9.0)));CGContextD

objective-c - 如何从 CGPath 中删除子路径?

一些子路径被添加到一个可变的图形路径中:CGPathAddPath(path,NULL,subpath1);//...CGPathAddPath(path,NULL,subpath2);//...CGPathAddPath(path,NULL,subpath3);如何从path中删除部分/所有子路径? 最佳答案 你不能,如果需要的话,你有责任保留重新绘制路径(或部分路径)所需的数据(你基本上必须创建一个只包含你想保留的子路径的新路径)。 关于objective-c-如何从CGPath中删

ios - 从 UIImage 创建 CGPath

我正在为我的游戏使用SpriteKit,并且想要一种逐像素物理。在iOS7中,(我认为)唯一的方法是使用bodyWithPolygonFromPath:方法。虽然我的图像有点复杂,所以我想创建一个更基本的图像形状,然后从该alpha图像创建路径。是否可以将我的图像转换为CGPath以用于物理体?我知道在iOS8中有API可以执行此操作,但我希望我的游戏也能在iOS7上运行。 最佳答案 您可以像有人提到的那样使用PhysicsEditor(PE),或者您可以使用SKPhysicsBodyPathGenerator.您需要做的就是拖放S

ios - 将颜色加深限制在 CGPath 的内部

我有一个定义为CGPath(实际上是CGMutablePath)的封闭路径。我想对路径定义的UIImage的特定区域进行颜色加深。我一直在摆弄CoreGraphics,但目前我唯一的选择是对由CGRect定义的矩形区域着色,而不是路径。谁能指出我正确的方向?--更新在Rob的帮助下,我设法将从相机获得的图像旋转90度,使其在UIImageview中正确显示。我剩下的唯一问题是我需要绘制的路径仍然是90度,并且超出了比例。我目前使用的代码如下:-(UIImage*)applyColorFillWithPath:(CGMutablePathRef)pathwithColor:(UIColo

iphone - 在 cocos2d 中将动画添加到图层的路径

所以我在cocos2d上,但在我使用普通的ios应用程序之前,我有这段代码:-(void)viewDidLoad{rootLayer=[[CALayeralloc]init];[imageView.layeraddSublayer:rootLayer];roundPath=CGPathCreateMutable();CGPathMoveToPoint(roundPath,nil,center.x,center.y-35);CGPathAddArcToPoint(roundPath,nil,center.x+35,center.y-35,center.x+35,center.y+35,3

ios - 空 CGMutablePathRef 路径?

我有办法从CGMutablePathRef中删除所有路径并获得清晰路径吗?我正在绘制一条路径,我希望将其清空以供重用? 最佳答案 我不这么认为,只需发布​​它并创建一个新的-无论如何应该更快。CGPathRelease(pathref);pathref=CGPathCreateMutable(); 关于ios-空CGMutablePathRef路径?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/q

ios - 如何在 iOS 中创建多行字符串或多行标签作为 CGPath?

API支持吗?如果没有,我该怎么做?CoreText中有CTFontCreatePathForGlyph,可以将单个字符翻译成路径。我可以在循环中使用它来创建我的字符串作为路径,但我必须处理间距和字距调整以及所有其他讨厌的事情。我正在寻找一个字符串路径,如果它是在具有相同字体和大小的UILabel中绘制的,它看起来是一样的。 最佳答案 有一篇文章叫Low-leveltextrendering通过Ohmu这涵盖了相当广泛的内容。我已经尝试过这段代码并且可以确认它有效。不过,它确实使用了CoreText,因此呈现可能与UILabel的呈

ios - 在不调整大小或重绘的情况下扩展 UIView

是否有可能有一个可以重复设置其框架的UIView,例如增加其在正x轴上的大小,但不调整或压缩图像?我想,例如将CGPath绘制到320x100帧中,但仅显示帧在x值和100y值上增加,因此它在扩展时显示图像。编辑:我已经绘制了CGPath,但它当前会随着容纳它的框架的扩展而调整大小。因此View不应该重新绘制或调整其内容的大小,而是将其内容固定在适当的位置,但是当它的框架放大时,只有更多的图像变得可见。有办法吗? 最佳答案 如果您在其drawRect:方法中绘制了View,则View的contentMode属性决定了当其框架发生变化