调试网址:在线图像转Base64 - 码工具 (matools.com)
注意要加(data:image/png;base64,)
FString UBasicFuncLib::LoadImageToBase64(const FString& ImagePath)
{TArray<uint8> ImageData;// Step 1: 读取图片文件到字节数组if (!FFileHelper::LoadFileToArray(ImageData, *ImagePath)){return "false";}// Step 2: 可以选择将字节数组转换为UTexture,如果需要,这一步可以跳过// 在这个例子中,我们假设图片文件是PNG格式IImageWrapperModule& ImageWrapperModule = FModuleManager::LoadModuleChecked<IImageWrapperModule>(FName("ImageWrapper"));TSharedPtr<IImageWrapper> ImageWrapper = ImageWrapperModule.CreateImageWrapper(EImageFormat::PNG);if (ImageWrapper.IsValid() && ImageWrapper->SetCompressed(ImageData.GetData(), ImageData.Num())){// 这里你可以获取解码后的原始像素数据,如果需要的话// const TArray<uint8>* RawImageData = nullptr;// ImageWrapper->GetRaw(ERGBFormat::RGBA, 8, RawImageData);}// Step 3: 将字节数组编码为Base64字符串FString OutBase64 = FBase64::Encode(ImageData);return OutBase64;
}