簡體   English   中英

如何將 javascript jpeg 字符串圖像轉換為 C# 圖像字節?

[英]How can I convert javascript jpeg string image to C# image bytes?

我正在使用 javascript FileReader() 在 React Front-end App 中讀取圖像內容作為

return new Promise((resolve, reject) => {
    const reader = new FileReader();
    reader.onload = e => resolve(e.target.result);
    reader.onerror = reject;   
    reader.readAsDataURL(file);   // file is a jpeg file
  });

現在,我想傳遞這個圖像字符串 C# SDK,它接受表單的圖像數據字節

var fileStream = new FileStream(filePath, FileMode.Open, FileAccess.Read);
var buffer = new byte[fileStream.Length];
fileStream.Read(buffer, 0, buffer.Length);
fileStream.Close();

如何轉換圖像字符串? 我已經嘗試通過刪除初始圖像格式填充為

Face= Face.Replace("data:image/jpeg;base64,", string.Empty);

然后將 Face 傳遞給字節緩沖區作為

byte[] buffer = Encoding.UTF8.GetBytes(Face); //also tried Convert.FromBase64String(Face);

首先,您需要使用Convert.FromBase64String解碼 Base64 字符串。 然后,您可以使用某種圖像庫從生成的字節數組中加載圖像。

示例(尚未測試):

Face = Face.Replace("data:image/jpeg;base64,", string.Empty);
byte[] FaceBytes = Convert.FromBase64String(Face);
using (var ms = new MemoryStream(FaceBytes ))
{
    var image = Image.FromStream(ms);
    // Do something with image
}

或者您可以簡單地將FaceBytes數組用於您需要的任何內容。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM