我不知道这是否可以使用 PHP,但我想如果可以,这里有人会知道如何。我目前正在开展一个项目,用户可以在该项目中自定义要在整个站点中使用的全身主要头像。有一堆不同的脸、头发等透明 png 图像可以选择来制作他们的自定义头像。我的这个工作很好,但这是困难的部分。我希望能够使用面部、头发和胡须(如果是男性),并自动创建一个 80x80 的图像,用作论坛帖子等的小头像。
这有一些障碍。首先,所有的图像都是187x404的(大量的图像是透明的,角色的身体图像是通过图像堆叠来实现的,所以人脸图像实际上并没有那么大)。为此,必须有效地自动裁剪图像,以便移除所有额外空间,并在 80x80 点中显示实际的面部、头发或胡须部分。
第二个问题是一些头发或胡须(当放置在全尺寸面部图像上时)会超出 80x80 并被剪掉。所以图像必须以全尺寸拼凑在一起,然后调整大小以适应 80x80。
我知道将 3 个图像组合成一个的基本方法(将2-3 个透明 PNG 图像与 PHP 相互叠加),但据我所知。如果我疯了,这是不可能的,那么告诉我。我可能过于复杂了,所以如果你看到显然更容易实现这一点的方法,我很想听听。