如果您将png文件的路径替换为变量avatar,则机器人将在背景中输出带有背景和PNG照片的图像,但我想将自己的头像替换为png照片。我首先尝试编写上下文。 user.getavatarurl()刚取出我化身磁盘的链接,然后我发现了一个似乎使用化身的方法,但是它不起作用告诉我,我通常需要可变化身可以将我的化身输出到照片的背景所以 我将附上如果您将png文件替换为peremennoy头像会发生的情况:
public async Task TestCmd()
{
var background = SixLabors.ImageSharp.Image.Load("my photo");
var avatar = SixLabors.ImageSharp.Image.Load(GetProfileAvatar(Context.User));
var imgpostion = new Point(x: 20, y: (background.Height / 2 - avatar.Height / 2));
var img = background.Clone(x =>
{
x.DrawImage(avatar, imgpostion, 1);
});
var outputFile = $"my photo";
img.Save(outputFile);
await Context.Channel.SendFileAsync(outputFile);
}
public static Stream GetProfileAvatar(IUser user)
{
WebRequest request = WebRequest.Create(user.GetAvatarUrl());
WebResponse response = request.GetResponse();
Stream responseStream = response.GetResponseStream();
return responseStream;
}