Как преобразовать изображение из пути на компьютере пользователя в строку base64 в C #?
Например, у меня есть путь к изображению (в формате C:/image/1.gif
), и я хотел бы иметь URI данных, например, data:image/gif;base64,/9j/4AAQSkZJRgABAgEAYABgAAD..
представляющий 1.gif
возвращенное изображение.
Ответы:
Попробуй это
источник
image.RawFormat
.RawFormat
не является спецификатором формата изображения; это свойствоimage
объекта, которое возвращает, в каком формате было изображение, когда оно было прочитано из файла , то есть в данном случае оно вернет формат gif. Таким образом, это ничего не меняет, за исключением того, что вместо фактических байтов исходного файла у вас есть байты изображения, повторно сохраненные в gif инфраструктурой .Net.Получите
byte[]
представление изображения в виде массива байтов ( ), затем используйтеConvert.ToBase64String()
st. как это:Чтобы преобразовать изображение base4 обратно в System.Drawing.Image:
источник
System.Drawing.Image
вы можете использовать st. вот так:var img = Image.FromStream(new MemoryStream(Convert.FromBase64String(base64String)));
Поскольку большинству из нас нравятся строчки:
Если он вам нужен как байтовый массив Base64:
источник
Хотя более сложный ответ в порядке, я считаю, что это намного лучше
Это просто, вам не нужно повторно сохранять и обрабатывать разные форматы
источник
Это класс, который я написал для этой цели:
источник
Вы можете легко передать путь к изображению, чтобы получить строку base64
Надеюсь, это поможет.
источник
_image.RawFormat
), но предоставляет данные как тип пантомимыimage/jpg
Вы можете использовать
Server.Map
путь для указания относительного пути, а затем вы можете либо создать изображение с помощьюbase64
преобразования, либо просто добавитьbase64
строку вimage src
.источник
Так проще: вы передаете изображение, а затем передаете формат.
источник
У меня работает следующий фрагмент кода:
источник
На основе ответов, получивших наибольшее количество голосов, обновлено для C # 8. Следующее можно использовать из коробки. Явно добавлено
System.Drawing
ранее,Image
поскольку по умолчанию можно было использовать этот класс из другого пространства имен.источник
Вы можете преобразовать это так
Вывод
источник
Что-то такое
источник
C#
метку на вопросе?