9个补丁画

时间:2011-01-10 10:58:23

标签: android

所以这是我的形象:

raw

问题是,draw9patch无法从中创建正常的9个补丁(显示填充中的错误)。如果我手动创建9补丁,android也不能正确缩放它,如下所示:

manual 9 patch

我认为这是一个颜色问题,android将原始图像的边框视为9个补丁填充的一部分,因此缩放不正确。

有没有办法,从中创建一个9补丁?

提前致谢:)

修改

原始图像周围必须没有额外的空边框,否则它将持续存在并且周围会有白线。 必须在原始图像的每一侧添加1个额外像素以包含9个补丁填充,因此如果原始宽度为50px,则现在为52像素。 这不是我第一次制作九个补丁<这次它不起作用。 如果您不相信我,请尝试在draw9patch.bat中执行此操作,您将看到它不会在顶部添加额外的边框,甚至在原始图像上也会显示错误。

修改 好。 NVM,只需要使原始图像更宽一些。现在它可以缩放,

3 个答案:

答案 0 :(得分:0)

很难在这么小的图像中看到一些东西,但这个似乎不对。

黑色像素分隔可伸展区域和填充框必须距离边界1个像素,并且可伸展区域是必需的(顶部和左侧边框),在您提供的图像中,这些边框似乎不会与图形分离。

请参阅docs了解使用9-patch图形的正确方法

关于draw9patch工具的问题,错误是什么时候抛出?也许如果你使输入图像更宽一点,它可以工作

答案 1 :(得分:0)

您需要在图像周围设置1px的边框才能使其达到正确的9patch-png。 此外,您应该知道在任何一侧放置黑色像素时会发生什么。

  • 顶部和左侧:缩放图像。
  • 底部和右侧:缩放图像内的内容,用于放置您的东西。

您还应该考虑放置“黑色像素”的位置。

9patch-png角落的像素不得为黑色。

答案 2 :(得分:0)

对我来说效果很好,只需在顶部为水平拉伸位置添加一个点,然后在左侧为垂直拉伸位置添加一条线:

alt text alt text

编辑:添加第二个选项,似乎仍然可以正常工作。