2013-10-09 2 views
-1

У меня есть буфер сырого изображения. и я хочу отобразить его на экране qml. должен ли я преобразовать это изображение в любой формат изображения, а затем отобразить его на экране? или есть ли способ отобразить буфер необработанного изображения на экране с помощью QML? , когда я пытался это делать в обычном режиме я получил сообщение об ошибке сказав:отображение необработанного изображения на экране-QML

QML Image: Cannot open: file:///ui_cutebox_mips/1_1.raw 

код:

Image{ 
... 
source: "1_1.raw" 
} 

Как я могу отобразить необработанного изображения на экране? заранее спасибо.

ответ

1

Вы в основном есть 3 варианта, как я могу видеть:

Если вы не знакомы с qtdeclarative исходным кодом и qtbase исходный код:

  1. Вы должны преобразовать его в какой-то формат, который поддерживается qt, например jpg, png, bmp.

Если вы знакомы с кварт исходного кода вы можете:

  1. Реализовать QQuickImageProvider для поддержки RAW формат изображения. вы должны прочитать спецификации на RAW формате и написать код самостоятельно
  2. Добавлена ​​поддержка RAW формата в классе QImage в qtbase

Я думаю, что, возможно, не понял вас. Если вы говорите о буфере необработанных изображений, например, у вас есть двоичный файл с пикселями, у вас все еще есть те же параметры. При создании QImage вам нужно будет разместить буфер изображений в качестве ImageData для QImage в вашем ImageProvider.

Смежные вопросы