【发布时间】:2012-08-02 20:27:45
【问题描述】:
我整天都在为这件事摸不着头脑。我需要动态创建一个包含客户端提供的字符串的图像。唯一的问题是,字符串需要沿着如下图所示的曲线绘制。我还想指定曲线的角度,因为这个文本需要在多个产品上显示,并且每个产品的曲线都不同。
我尝试循环遍历字符串并显示每个字符,并为每个字符指定一个特定坐标以类似于抛物线,但为了使其有用,每个字符都需要旋转以适应曲线。有人对 System.Drawing 库有任何可能对我有用的建议吗?
【问题讨论】:
-
这个人有一篇关于这个主题的博文(以及如何在 C# 中实现):planetclegg.com/projects/WarpingTextToSplines.html
-
@MichaelGraczyk 我能够生成一些弯曲的文本。我不得不用
newPoints[i] = new PointF(finalX, finalY); newPath = new GraphicsPath(newPoints, textPath.PathTypes);替换textPath.PathPoints[i] = new PointF(finalX, finalY);,因为PathPoints 是一个只读数组。由于每次迭代都会创建一个新路径,因此效率低于我的预期。此外,它被压扁和拉伸,因此需要花点时间才能让它看起来正确,但是,文本是沿着弯曲的路径前进的。
标签: c# asp.net graphics drawing gdi+