2013-10-09 72 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。

如果你熟悉了Qt源代碼,你可以:

  1. 實現一個QQuickImageProvider支持RAW圖像格式。你必須閱讀RAW格式規格和自己寫的代碼
  2. 到的QImage類添加支持RAW格式的qtbase

我想我可能會誤解你了。如果你正在談論原始圖像緩衝區,就像你有一個帶有像素的二進制文件,那麼你仍然有相同的選擇。創建QImage時,您必須將圖像緩衝區作爲ImageData添加到ImageProvider的QImage中。