Модераторы: Daevaorn
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> DIB BITMAPV5HEADER хранит JPG? свойство bV5Compression=BI_JPEG 
:(
    Опции темы
DENNN
Дата 29.4.2003, 20:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 3878
Регистрация: 27.3.2002
Где: Москва

Репутация: 1
Всего: 43



Смотрю в мсдн CreateDIBitmap(..)
Функции передается структура BITMAPV5HEADER
Смотрю описание BITMAPV5HEADER:
Свойство BITMAPV5HEADER.bV5Compression возможны варианты сжатия:
Код

BI_RGB An uncompressed format.
BI_RLE8 A run-length encoded (RLE) format for bitmaps with 8 bpp. The compression format is a two-byte format consisting of a count byte followed by a byte containing a color index. If bV5Compression is BI_RGB and the bV5BitCount member is 16, 24, or 32, the bitmap array specifies the actual intensities of blue, green, and red rather than using color table indexes. For more information, see Bitmap Compression.
BI_RLE4 An RLE format for bitmaps with 4 bpp. The compression format is a two-byte format consisting of a count byte followed by two word-length color indexes. For more information, see Bitmap Compression.
BI_BITFIELDS Specifies that the bitmap is not compressed and that the color table consists of three DWORD color masks that specify the red, green, and blue components of each pixel. Valid when used with 16- and 32-bpp bitmaps.
BI_JPEG Specifies that the image is compressed using the JPEG file Interchange Format. JPEG compression trades off compression against loss; it can achieve a compression ratio of 20:1 with little noticeable loss. !!!!!!!!!!!!  
BI_PNG Specifies that the image is compressed using the PNG file Interchange Format.

То есть в памяти байты будут сжиматься по алгоритму JPG?
Получается я могу эту область записать как файл формата JPG или нет?

И еще, в описании на интерфейс IPicture::SaveAsFile (..) сказано (как я понял), что файл будет записан в том формате, какой представлен источником. То есть он запишет в моем случае как JPG?!!

Заранее спасибо за любые ответы или мысли по этому поводу. smile.gif
PM ICQ   Вверх
DENNN
Дата 1.5.2003, 15:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 3878
Регистрация: 27.3.2002
Где: Москва

Репутация: 1
Всего: 43



Что, даже никто представления не имеет?
PM ICQ   Вверх
kruchinin
Дата 1.5.2003, 17:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 100
Регистрация: 19.4.2003

Репутация: нет
Всего: нет



А зачем тебе это нужно?

Если у тебя маленькая программа - много места в памяти ты не выграешь.

А если большая (например игра) - то весь этот перевод из JPG в обычные BMP(то есть на экран) займет много времени. Например в движке Quaka 3 картинки грузятся очень долго из файла (в память они сразу "разархивируются), а если бы каждый раз переводить из формата в нужный формат, то игра будет Сильно тормозить.
PM MAIL   Вверх
DENNN
Дата 1.5.2003, 18:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 3878
Регистрация: 27.3.2002
Где: Москва

Репутация: 1
Всего: 43



Цитата
А зачем тебе это нужно?


Хотя бы для того, чтоб на чистом API писать сразу в JPG файл. А то сколько я не видел библиотек для работы с JPG, все они или очень громоздкие или сложные. Кроме того, помимо флага BI_JPEG есть еще BI_PNG. А в таком формате уже нет больших проблем с прозрачностью. Я игры не пишу, но для того же OpenGL это было бы очень удобно.

Цитата

Если у тебя маленькая программа - много места в памяти ты не выграешь.
А если большая (например игра) - то весь этот перевод из JPG в обычные BMP(то есть на экран) займет много времени.


Помимо игр, есть еще задачи, где быстодействие не ставится как главный фактор. smile.gif
PM ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1015 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.