Nambers / MiraiCP

c++ SDK of Mirai
https://eritque-arcus.tech/MiraiCP/
GNU Affero General Public License v3.0
176 stars 31 forks source link

对动画表情的发送似乎不正确 #200

Closed ofbwyx closed 1 year ago

ofbwyx commented 1 year ago

Code of Conduct

问题描述

使用如下代码发送了一个动画表情:

json t = json::parse(R"([
{
    "height": 217,
    "imageId" : "{FE87DC1F-F5AF-7932-B396-D2977A45964A}.gif",
    "imageType" : "GIF",
    "isEmoji" : false,
    "size" : 52942,
    "type" : "Image",
    "width" : 226
}
])");
MessageChain msg = msg.deserializationFromMessageJson(t);
g.sendMessage(msg);

但发出来的在电脑上并未正确显示为表情,如下两张图,图一是控制台显示发送的的确是表情(isEmoji=true),但图二第一张是大张的 gif。随后我在电脑上拖动这个 bot 发送的表情到聊天框再发送,显示不是表情。图二的第三张是我发送的正常表情。

image

2023-08-15 20-21-03 (online-video-cutter com)

如下两图是测试把代码中的 "isEmoji" 改为 false,输出内容没有变化,仍然是不正确的大张。(jpg 和 gif 表现相同)。

image

image

在手机上 gif 显示为完全相同且正确的表情,而 jpg 仍然错误显示为了图片。

QQ版本:电脑 9.7.3.29149,手机 8.9.73.11945。

日志

2023-08-15 20:12:10 V/Bot.399642824: Group(681739052) <- [mirai:image:{FE87DC1F-F5AF-7932-B396-D2977A45964A}.gif, width=226, height=217, size=52942, type=GIF, isEmoji=true]
2023-08-15 20:12:19 V/Bot.399642824: [bot test(681739052)] 咕咕咕(3088688469) -> [mirai:image:{FE87DC1F-F5AF-7932-B396-D2977A45964A}.gif, width=226, height=217, size=52942, type=GIF, isEmoji=false]
2023-08-15 20:12:22 V/Bot.399642824: [bot test(681739052)] 咕咕咕(3088688469) -> [mirai:image:{FE87DC1F-F5AF-7932-B396-D2977A45964A}.gif, width=226, height=217, size=52942, type=GIF, isEmoji=true]

2023-08-15 20:53:10 V/Bot.399642824: [bot test(681739052)] 咕咕咕(3088688469) -> [mirai:image:{36A89EA0-D0A0-1349-0B75-FC8ADFF244AA}.jpg, width=300, height=214, size=12258, type=JPG, isEmoji=true]
2023-08-15 20:53:17 V/Bot.399642824: [bot test(681739052)] 咕咕咕(3088688469) -> #test
2023-08-15 20:53:17 I/MiraiCP: Send message for Group(681739052) is [mirai:image:{D785F90B-D895-9435-B68B-AA7B7D8BE10D}.jpg, width=300, height=214, size=8444, type=JPG, isEmoji=true]
2023-08-15 20:53:18 V/Bot.399642824: Group(681739052) <- [mirai:image:{D785F90B-D895-9435-B68B-AA7B7D8BE10D}.jpg, width=300, height=214, size=8444, type=JPG, isEmoji=true]

版本

2.15.0

组件

不属于上述项或我不知道属于哪一项

编译器

Microsoft Visual C++ (MSVC)

系统

Windows

架构

x86-64/amd64

Nambers commented 1 year ago

这个是由 mirai 实现,见 https://github.com/mamoe/mirai/issues/2463 可以去这个 issue 里面跟踪后续 (如果我理解错你的意思可以重开本 issue)