Russian Qt Forum
Ноябрь 22, 2024, 16:44 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: 1 [2]   Вниз
  Печать  
Автор Тема: Не могу вывести Pixmap  (Прочитано 14791 раз)
ppk
Гость
« Ответ #15 : Август 23, 2009, 19:56 »

Вот, как выглядит ba после
QByteArray ba = QByteArray::fromRawData(cs,720*576):

"\1c\1c\1c\1c\1b\19\18\1c"\c\198\1d\1b\c\12\18\15\12\11\11\13\16\1a\1d\1d\1d\1d\1c\1a\18\16\15\18\1b\1f!! \1e\1d\1e !"!\1e\1c\1a\1a\1b\1d\1e!#&'%"\1e\1c\1c\1d\1f \1e\1c\1a\19\1a\1c\1e\1f\1e\1c\1b\19\19\19\19\1a\1b\1c\1d\1e\1f\1f\1f\1f\1f   \1f\1f\1f\1f "#\b"\cd\ee5\e3\bd\b4r\eb"

Исходный буфер гораздо больше и соответствует размеру 720*576. Вот его начало:
0x9145460 "\034\034\034\034\033\031\030\034\"\f\0318\035\033\f\022\030\025\022\021\021\023\026\032\035\035\035\035\034\032\030\026\025\030\033\037!! \036\035\036 !\"!\036\034\032\032\033\035\036!#&'%\"\036\034\034\035\037 \036\034\032\031\032\034\036\037\036\034\033\031\031\031\031\032\033\034\035\036\037\037\037\037\037   \037\037\037\037 \"#$#! \036\034\033\032\032\033\034\036  !!\"#$%%#\" \036\037  !! \037\035\036\036\036\035\034\032\031\030\032\034\036\037 \037! \025\f\025!##$$\" \035\033\035\037\"$#!\037\036\035\035\035\034\032\027\025\024\026\031\034\036\037\037\037\037\037\037\036\036\035\035\034\033\031\026\024\023\023\023\022\022\027\034\033\027\r\005\b\020\031 \034\030\034\"&(('%\"\037\034\030\026\030\033\034\032\024\016\r\016\020\022\023\025\027\030\031\032\034\035\037\037\035\032\026\024\032!!  !+2-%\034\026\034\"\027\016\024\034\035\034\033\032\032\032\032\033\034\037'2CROHA=BJQVTNIDCCCDHKOQPMJF@;7447;BKYx\224\227\222\216\213\216\222\223\224\225\226\227\230\232\235\241\246\255\265\276\305\307\306\304\301\276\272\265\251~]\201\252\244\226\223\220\206\200\221\246\270\303\271\253\255\262\263\264\266\267\270\270\270\267\265\263\257\252\245\244\251\260\267\275\276\275\274\273\273\273\273\274\274\275\276\275\272\266\264\263\263\267\304\321\321\317\315\313\314\315\316\316\316\316\315\315\314\314\314\313\313\312\306\304\322\335\322\305\307\313\315\316\315\313\312\310\307\306\303\307\336\366\375\376\377\372\356\303\302\352\307\315\310\311\311\311\312\313\320\323\312\305\324\345\350\345\330\312\307\303\302\313\311\310\310\307\307\306\303\277\274\266\250\232\216\213\241\272\303\307\310\306\306\305\303\301\301\301\301\276\261\243\225\215\225\244\263\300\305\307\311\310\305\300\273\267\270\274\302\303\251\217\214\225\255\304\304\277\301\302\277\274\275\276\272\267\274\275\254\226\201w\220\257\301\312\301\266\266\270\266\265\265\266\267\267\270\271\272\274\275\277\300\300\277\274\272\267\264\262\260\257\261\265\270\272\273\273\272\271\271\270\267\266\264\263\261\260\257\256\255\254\253\253\252\252\252\253\254\255\255\256\257\257\256\254\251\247\245\243\242\241\242\244\247\250\247\246\244\242\241\240\237\237\240\242\244\245\244\242\240
...


Попытка увеличить размер в 2 или 4 раза выводит сообщение, что ba находится вне области видимости.
« Последнее редактирование: Август 23, 2009, 19:59 от ppk » Записан
ритт
Гость
« Ответ #16 : Август 23, 2009, 21:22 »

и кто такое cs?
Записан
ppk
Гость
« Ответ #17 : Август 23, 2009, 21:31 »

unsigned char *buffer
...
const char *cs = (char *) buffer;

Я немного ранее приводил кусок кода
Записан
ppk
Гость
« Ответ #18 : Август 23, 2009, 22:01 »

Посмотрел код по сохранению этого буфера в файл в чужой библиотеке.
Перед сохранением в начала буфера добавляется строка:
"P5\n720 576\n255\n"
Сделал у себя также:
QByteArray p("P5\n720 576\n255\n");
QByteArray ba =  QByteArray::fromRawData(cs,720*576).prepend(p);

И все получилось.
Может быть кто-нибудь подскажет почему без этой строки QPixmap не хочет отображать картинку?
Записан
ритт
Гость
« Ответ #19 : Август 24, 2009, 00:12 »

строка QByteArray ba =  QByteArray::fromRawData(cs,720*576).prepend(p); стала бессмысленной.
"P5\n720 576\n255\n" - какая-то сигнатура?
Записан
ppk
Гость
« Ответ #20 : Август 24, 2009, 09:24 »

Что означает эта строка не знаю, поэтому и спрашиваю, но она пишется в начало файла перед буфером, если буфер сохраняется в файл.
Там явно прослеживаются размеры изображения 576 X 720.
Записан
Страниц: 1 [2]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.121 секунд. Запросов: 20.