我找不到任何方法来检索表示字符串的Path对象。它存在吗?必要的点的清单就足够了,但我想在内部使用一个路径。获取(Android.Graphics)字符串的路径
例如在GDI +有:
GraphicsPath p = new GraphicsPath();
p.AddString("string");
从那里“绘制字符串”的任何点都可以进行访问和修改。 PS:我不是指沿着路径绘制文本。
我找不到任何方法来检索表示字符串的Path对象。它存在吗?必要的点的清单就足够了,但我想在内部使用一个路径。获取(Android.Graphics)字符串的路径
例如在GDI +有:
GraphicsPath p = new GraphicsPath();
p.AddString("string");
从那里“绘制字符串”的任何点都可以进行访问和修改。 PS:我不是指沿着路径绘制文本。
我花了相当长的时间来解决这个问题(在OpenGL中绘制矢量化文本),并且不得不深入到libSkia源代码中。事实证明,这非常简单:
事实上,canvas在内部使用路径,并使用SkPaint的getTextPath()
方法将文本转换为向量路径。幸运的是,在公共API中的Java端暴露为android.graphics.Paint.getTextPath()
。之后,您可以通过android.graphics.PathMeasure
阅读Path。
不幸的是,您无法阅读确切的绘图命令,但您可以使用类似二分法的方式对曲线进行非常仔细的采样。
谢谢,目前正在研究thia – Derekyy 2017-09-19 11:20:20
你是指例如..'R.string.myString'? – DroidBender 2012-07-12 11:47:31
你确切的问题是什么? – sunil 2012-07-12 12:08:45
不,不,不。我正在绘制一个画布。就像Canvas.DrawPath()一样。我想要一个代表将要绘制的字母的路径对象 – 2012-07-12 12:09:29