gpt4 book ai didi

java - 大九片拉伸(stretch)

转载 作者:行者123 更新时间:2023-11-30 01:44:56 25 4
gpt4 key购买 nike

下图需要在灰色区域垂直拉伸(stretch)。图像的其余部分应水平等量扩展,以填满屏幕。

enter image description here

所以我将 ninepatch 设置为 0, 0, 158, 28 (a, b, c, d) .当我将其用作 Table 背景时,这就是结果。

enter image description here

在我看来,图像“只是”填满了屏幕,完全忽略了九 block 分割。

我的世界大小是 140 宽和 250 大气压。图像宽度为 733。这可能是问题所在吗?我在小图像上使用 ninepatch 从来没有遇到过问题。

这是我设置图像的方式:

    winTable = new Table(skin);
winTable.background("winpanel");
winTable.setFillParent(true);

stage.addActor(winTable);

//And this is how the image in the atlas is specified
winpanel
rotate: false
xy: 0, 298
size: 733, 203
split: 0, 0, 158, 28
orig: 733, 203
offset: 0, 0
index: -1

我试图用数字来获得好的结果,但没有成功。我还尝试手动创建一个 NinePatch 并在 Image 中使用它,但我得到了相同的结果。现在我想知道是否有可能做我想做的事,也许我需要将横幅与图像的其余部分分开。但是这两个图像应该完美对齐。

最佳答案

这是我用于 ninepatches 的方法,对我很有效。我的 map 集中没有“拆分”线,因此您可能不需要将其与此一起使用。

TextureRegion region = skin.getRegion("winpanel");
NinePatch patch = new NinePatch(region, 0, 0, 158, 28);
NinePatchDrawable drawable = new NinePatchDrawable(patch);
winTable.setBackground(drawable);

编辑: 我刚刚注意到您提到您的世界大小是 140 宽,图像是 733 宽...这很可能是您的问题,因为它正在挤压图像的宽度以适合您的表格。在照片编辑器中打开图像并缩放图像,使其宽度与您希望它在游戏中显示的宽度完全相同。然后使用新图像大小的新值尝试 ninepatch,看看它是否有效。

关于java - 大九片拉伸(stretch),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33868458/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com