COMPASSi/trunk/code/projects/Util/src/SaveImage.cpp

32 lines
877 B
C++
Raw Permalink Normal View History

2025-06-25 15:06:42 +08:00
#pragma execution_character_set("utf-8")
#include "SaveImage.h"
#include "QImage"
#include "QDebug"
#include "PathUtil.h"
#include "Error.h"
int save_image(const QString &base64_data, const QString &image_name)
{
int ret = EXECUTE_SUCCESS;
// 将 Base64 字符串解码为字节数组
QByteArray decoded_data = QByteArray::fromBase64(base64_data.toUtf8());
// 将字节数组转换为 QImage 对象
QImage image;
if (!image.loadFromData(decoded_data)) {
qDebug() << "Failed to load image from decoded data.";
return -1;
}
// 保存 QImage 为文件
QString output_file = PathUtil::bin_dir() + "imagePath/" + image_name + ".png";
if (image.save(output_file)) {
// qDebug() << "Image saved as" << output_file;
} else {
qDebug() << "Failed to save image.";
return -1;
}
return ret;
}