【问题标题】:Using the Drawline function to create a "pencil stroke"使用 Drawline 功能创建“铅笔描边”
【发布时间】:2010-12-04 17:34:37
【问题描述】:

好的,所以我正在制作游戏,但我遇到了问题,那就是我没有 不管怎样,画一条看起来像铅笔画的线。 我从

开始
drawLine(float startX, float startY, float stopX,float stopY, Paint paint);

当然 然后我使用与Paint() 和油漆有关的所有东西 类,所以我在油漆中设置颜色和厚度......

所以我想知道的是如何给我的油漆一个纹理 类似于铅笔描边。有没有办法让油漆看起来 就像一个重复的位图,我有什么选择。

谢谢,布赖恩

附言如果你想要更多细节,我可以更详细地解释一下 给你我正在使用的确切代码并解释更多关于我的 游戏.... 如果您还可以在这里找到绘画类和画布类的链接 需要他们。

http://developer.android.com/reference/android/graphics/Paint.html

http://developer.android.com/reference/android/graphics/Canvas.html

还有

void drawBitmap(int[] colors, int offset, int stride, float x, float y, int width, int height, boolean hasAlpha, Paint paint)

将指定的颜色数组视为位图,并绘制它。" 我可以使用它吗?我真的不确定它在说什么。

请即使您有一点信息也请回复。

【问题讨论】:

    标签: android


    【解决方案1】:

    "void drawBitmap(int[] colors, int offset, int stride, float x, float y, int width, int height, boolean hasAlpha, Paint paint) 将指定的颜色数组视为位图,并进行绘制。 "我可以使用它吗?我真的不确定它在说什么。

    您似乎想要这个版本的 Canvas.drawBitmap() 系列方法:drawBitmap(Bitmap bitmap, Rect src, Rect dst, Paint paint)。 理想情况下,您可以制作自己的纹理并对其进行拉伸或平铺。我不确定如何平铺,但“相关”部分中的链接指向 TileMode.REPEATBitmapShader 的正确点。

    如果您的纹理不会有任何噪音(或任何其他在拉伸时会扭曲的东西),您可能只想使用Drawable.draw() 并为您的铅笔笔划使用 9-patch。

    【讨论】:

    • 所以如果我这样做我仍然会使用 Canvas.drawline... .谢谢
    • 你不使用drawLine().. Rect dst 将是你的新坐标。假设您要绘制宽度为 4 的铅笔笔画,顶线从 (0,0) 开始到 (0,100),您可以使用以下代码:drawBitmap( myBitmap, null, new Rect( 0,0,4,100 ), myPaint )。如果您还没有阅读 Rect 的文档,它可能会很有用。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-24
    相关资源
    最近更新 更多