Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > C# (си шарп)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 14.11.2015, 14:04   #1
a.n.o.n.i.m
Форумчанин
 
Регистрация: 26.02.2011
Сообщений: 301
По умолчанию Bitmap кодирка изображения - C#

Задача следующая: Выбераю картинку,далее ее нужно закодировать в формат .pcx, а затем ее декодировать в начальный формат. Натолкните на нужный алгоритм работы.

Я так понял нужно воспользоваться: 1)Взять Bitmap,то есть я открываю файл и он грузится туда

Код:
            OpenFileDialog openFileDialog = new OpenFileDialog();
            openFileDialog.Filter = "Все файлы (*.*)|*.*";
            if (openFileDialog.ShowDialog() == DialogResult.OK)
            {
                StreamReader streamReader = new StreamReader(openFileDialog.FileName);
                textBox1.Text = openFileDialog.FileName;
                Bitmap picture = new Bitmap(textBox1.Text);
                streamReader.Close();}
2)Грузануть туда(в массив res типа byte) по пиксельно информацию

Код:
  StreamWriter streamWriter = new StreamWriter("test.txt");        
 int width = picture.Width,height = picture.Height;
                byte[, ,] res = new byte[3, height, width];
                for (int y = 0; y < height; ++y)
                {
                    for (int x = 0; x < width; ++x)
                    {
                        Color color = picture.GetPixel(x, y);
                        res[0, y, x] = color.R;
                        streamWriter.WriteLine(res[0, y, x]);
                        res[1, y, x] = color.G;
                        streamWriter.WriteLine(res[1, y, x]);
                        res[2, y, x] = color.B;
                        streamWriter.WriteLine(res[2, y, x]);
                        streamWriter.WriteLine();
                    }
                }
streamWriter.Close();
Как пример будут такие тройки значений
Код:
56
57
60

56
56
59

55
56
59

54
55
57
3)Дальше что делать то?как закодировать,получив картинку .pcx ?
a.n.o.n.i.m вне форума Ответить с цитированием
Старый 19.11.2015, 17:21   #2
phomm
personality
Старожил
 
Аватар для phomm
 
Регистрация: 28.04.2009
Сообщений: 2,882
По умолчанию

Спецификация этого формата есть у Вас ? Вроде pcx есть разные. Когда будет спецификация, можно соответственно написать код побайтной записи нужной по спецификации информации.
phomm вне форума Ответить с цитированием
Старый 23.11.2015, 18:47   #3
a.n.o.n.i.m
Форумчанин
 
Регистрация: 26.02.2011
Сообщений: 301
По умолчанию

а он разве не один?
http://www.codenet.ru/progr/formt/pcx1.php
я там читал про него
a.n.o.n.i.m вне форума Ответить с цитированием
Старый 24.11.2015, 16:37   #4
Скарам
Дружите с Linq ;)
Форумчанин
 
Аватар для Скарам
 
Регистрация: 15.10.2008
Сообщений: 822
По умолчанию

Вот и погуглил
Не давай организму поблажки, каждый день тренируй его в шашки..
Скарам вне форума Ответить с цитированием
Старый 26.11.2015, 20:01   #5
a.n.o.n.i.m
Форумчанин
 
Регистрация: 26.02.2011
Сообщений: 301
По умолчанию

Что это вообще?
a.n.o.n.i.m вне форума Ответить с цитированием
Старый 27.11.2015, 08:30   #6
Скарам
Дружите с Linq ;)
Форумчанин
 
Аватар для Скарам
 
Регистрация: 15.10.2008
Сообщений: 822
По умолчанию

Вы думаете, что только Вам нужно перекодировать изображения из одного в другое? Ищете готовое решение, как пример, это данный пакет. Используйте Nuget и будет хорошо. В чем смысл тратить свое и наше время на написание данного алгоритма?
Не давай организму поблажки, каждый день тренируй его в шашки..
Скарам вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Загрузка изображения BITMAP из файла. st_yak Win Api 0 09.11.2014 16:54
Классы. Чтение и создание .bmp изображения. Пропадает 1 пиксел при создании изображения. s-mumrik Visual C++ 3 12.04.2013 21:21
Сохранение изображения из DrawingArea в Bitmap Mixim C# (си шарп) 2 12.12.2012 11:33
Как загрузить изображения с использованием Bitmap Pilgrimm C++ Builder 2 24.03.2011 07:56
из-за чего появляется полоса (на скрине) при вставке BitMap в TImage? - Проблема с Bitmap Grey@2009 Мультимедиа в Delphi 2 02.01.2010 20:23