@KzLIFE

Как правильно конвертировть картинку в Base64 для последующего вывода в браузере?

Graphics graph = null;

var bmp = new Bitmap(Screen.PrimaryScreen.Bounds.Width, Screen.PrimaryScreen.Bounds.Height);

graph = Graphics.FromImage(bmp);

graph.CopyFromScreen(0, 0, 0, 0, bmp.Size);

var ms = new MemoryStream();

bmp.Save(ms, System.Drawing.Imaging.ImageFormat.Png);

string convertedImg = Convert.ToBase64String(ms.ToArray(), Base64FormattingOptions.None);


На выходе получаю base64 при вставке его в браузер получаю тлен(

<img alt="" src="data:image/png;base64, CONVERTED_BASE64"/>
  • Вопрос задан
  • 488 просмотров
Пригласить эксперта
Ответы на вопрос 2
tomnolane
@tomnolane
профессиональный разработчик
вот мой код:
Bitmap printscreen = new Bitmap(Screen.PrimaryScreen.Bounds.Width, Screen.PrimaryScreen.Bounds.Height);

            Graphics graphics = Graphics.FromImage(printscreen as Image);

            graphics.CopyFromScreen(0, 0, 0, 0, printscreen.Size);

            var ms = new MemoryStream();

            printscreen.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg); 

            string convertedImg = Convert.ToBase64String(ms.ToArray(), Base64FormattingOptions.None);


получаю на выходе:
/9j/4AAQSkZJRgABAQEAYABgAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkSEw8UHRofHh0aHBwgJC4nICIsIxwcKDcpLDAxNDQ0Hyc5PTgyPC4zNDL/2wBDAQkJCQwLDBgNDRgyIRwhMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjL/wAARCAMABVYDASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRV... и т.д.


вставляю в ручную в браузер (п.с. без пробелов, как у вас
<img alt="" src="data:image/png;base64,ТУТ_ПРОБЕЛА_У_ВАС CONVERTED_BASE64"/>
между base64, и CONVERTED_BASE64)

получаю:
86911b10be4643f1b42b3ca4172c7a6a.PNG
а получаю скриншот из Visual Studio
Ответ написан
@svetlov97
Боже, что так сложно то. Просто используй FileReader.readAsDataURL()
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы