【QT】xpm format


【目的】

  • xpm 格式可以直接內嵌於程式中。這邊將圖形檔案轉換成 xpm 格式。

【方法】

  1. 使用 convert,第一個參數是來源,第二個是目的檔。例如
    $ convert lena_std.png lena_std.xpm
  2. 寫一段程式,利用qt作格式轉換,將圖檔讀出再直接轉存成 xpm 格式。

【結果】

  1. 利用 convert 轉換後可用 vim 觀看。
    image
  2. 字串內容,以上面為例
    1. 256 256: 代表圖形長寬,目前圖形大小為 256 x 256。
    2. 246: 代表使用顏色數量,目前共有 246 色。
    3. 2: 每一個顏色以 2 個 ASCII 字母來代表。
    4. [空白] C #4C0C38: 表示符號與所代表的RGB值。如果RGB值為None表示不畫顏色或透明。

【驗證】

  1. 可以使用 eog,會顯示完整的圖形。
    image
  2. 如果使用 gvim 直接觀看,會看到圖形大致的輪廓。
    image

【附註】

  1. convert 有多種用法,可以參考 man。例如轉成 .h 檔 (為方便觀看,轉完之後有稍微排版一下)
    $ convert lena_std.png lena_std.h
    $ cat lena_std.h
    /*
      lena_std.h (PNM).
    */
    static unsigned char
      MagickImage[] =
      {
        0x50,0x36,0x0A,0x32,0x35,0x36,0x20,0x32,0x35,0x36,0x0A,0x32, 
        0x35,0x35,0x0A,0xE2,0x89,0x7D,0xDF,0x88,0x82,0xE2,0x85,0x76, 
        0xE3,0x88,0x7B,0xE2,0x8A,0x7B,0xE2,0x86,0x7B,0xE0,0x86,0x71, 
        0xDE,0x84,0x75,0xDD,0x84,0x6E,0xDE,0x8A,0x75,0xDF,0x81,0x6B, 
        0xDE,0x83,0x69,0xDB,0x84,0x6F,0xE0,0x7F,0x67,0xDD,0x81,0x74,
    ...

【參考】

  1. 用 QT Designer 來快速學習 QT(convert介紹)
    http://www.study-area.org/tips/qd/qt.html
  2. 将普通图片转换为QT中使用的XPM文件
    http://hi.baidu.com/codefish/blog/item/f798fb3168f57b10eac4af62.html
 

Ed32. Copyright 2008 All Rights Reserved Revolution Two Church theme by Brian Gardner Converted into Blogger Template by Bloganol dot com