С Новым годом! Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.74/47: Рейтинг темы: голосов - 47, средняя оценка - 4.74
5 / 5 / 4
Регистрация: 20.11.2015
Сообщений: 125
1

Преобразовать byte[] в Bitmap или другой формат, пригодный для pictureBox

09.01.2016, 23:35. Показов 8972. Ответов 3

Author24 — интернет-сервис помощи студентам
Ситуация такая: клиент отправляет на сервер изображения, находящееся в своём pictureBox, конвертирование в byte[] происходит следующим образом:
C#
1
2
TypeConverter bmpConverter = TypeDescriptor.GetConverter(pictureBox1.BackgroundImage.GetType());
msg = (byte[])bmpConverter.ConvertTo(pictureBox1.BackgroundImage, typeof(byte[]));
Далее сервер должен принять этот byte[] и вывести его в своей pictureBox. Проблем с принятием byte[] нет, но есть проблема с преобразованием byte[] в Bitmap или аналогичный - как это сделать?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.01.2016, 23:35
Ответы с готовыми решениями:

Как преобразовать кириллицу в формат пригодный для get-запроса
Подскажите, ребят, как преобразовать кириллицу в формат пригодный для get-запроса средством C#....

Нельзя преобразовать тип function(a: byte;b: byte): byte к integer (Списки)
Создать список из целых чисел.Поменять в списке местами максимальный и минимальный элементы...

Как из PictureBox или из Bitmap скопировать часть картинки
есть ли в C# аналог метода CopyRect() в delphi, т.е. что бы с pictureBox1 или из bitmap скопировать...

Преобразовать byte[] в float или int
Имеется массив типа byte, необходимое мне значение занимает 2 байта, нужно эти 2 байта...

3
Эксперт .NETАвтор FAQ
10418 / 5148 / 1825
Регистрация: 11.01.2015
Сообщений: 6,226
Записей в блоге: 34
10.01.2016, 02:04 2
NikkuL,
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
            var bmp1 = new Bitmap(100, 100);
            byte[] bytes;
 
            using (var ms = new MemoryStream())
            {
                bmp1.Save(ms, ImageFormat.Png);
                bytes = ms.ToArray();
            }
 
            //
            using (var ms = new MemoryStream(bytes))
            {
                var bmp2 = Image.FromStream(ms);
                //
            }
0
5 / 5 / 4
Регистрация: 20.11.2015
Сообщений: 125
10.01.2016, 20:53  [ТС] 3
Заменил конвертирование в byte[] на:
C#
1
2
MemoryStream ms = new MemoryStream();
imageIn.Save(ms, System.Drawing.Imaging.ImageFormat.Png);
И вытаскиваю из byte[]:
C#
1
2
MemoryStream ms = new MemoryStream(byteArrayIn);
Image returnImage = Image.FromStream(ms);
Так проще и более наглядно.
0
Заблокирован
11.01.2016, 12:01 4
Цитата Сообщение от NikkuL Посмотреть сообщение
Так проще и более наглядно.
и менее правильно, using нужен для гарантированного закрытия потока
0
11.01.2016, 12:01
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
11.01.2016, 12:01
Помогаю со студенческими работами здесь

Как сделать инструмент Лупа для Bitmap на PictureBox
Есть pictureBox1, в качестве pictureBox1.Image использую Bitmap bmp. Как увеличить изображение на...

Массив картинок или как преобразовать pictureBox в Int?
Возможно ли pictureBox преобразовать как-то в инт? if(Temp==0) Temp=pictureBox1; Выдает...

Почему If не работает для System.Drawing.Bitmap(PictureBox.Image, вместе с переменными типа Object)
В моей программе для сохранения "базы" ТРЕБУЕТСЯ проверка изображения в PictureBox'е (на...

Стороние библиотеки или другой формат
Не подскажите какие сторонние библиотеки по взаимодействию с word.Или какой нибудь другой...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru