首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 網頁程式設計 >> PHP 程式設計 >> PHP 相關知識

WAP 站點使用 GD 1.8+ 產生 WBMP 圖片

     編輯:PHP 相關知識

WBMP 格式簡介

WBMP (Wireless Bitmap) 是 WAP 裝置專用的單色位圖格式,副檔名 .wbmp,MIME 型別 image/vnd.wap.wbmp。GD 1.8 版起內建 ImageWBMP() 函數,可直接輸出。

完整範例:動態產生長方形

WML 呼叫頁 (index.wml)

<?xml version="1.0"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN"
  "https://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
  <card id="start" title="長方形示範">
    <img src="rectangle.php" alt="Rectangle"/>
  </card>
</wml>

PHP 產生腳本 (rectangle.php)

<?php
// 1. 設定正確 MIME 型別
header("Content-type: image/vnd.wap.wbmp");

// 2. 建立 90x90 畫布
$im = imagecreate(90, 90);
$white = imagecolorallocate($im, 255, 255, 255);
$black = imagecolorallocate($im, 0, 0, 0);

// 3. 繪製長方形 (x1,y1,x2,y2,color)
imagerectangle($im, 5, 5, 85, 85, $black);

// 4. 輸出 WBMP 並釋放資源
imagewbmp($im);
imagedestroy($im);
?>

關鍵函數說明

函數用途
imagecreate(w,h)建立調色盤模式畫布
imagecolorallocate(im,r,g,b)分配顏色索引,第一次呼叫自動成為背景色
imagerectangle(im,x1,y1,x2,y2,col)繪製矩形框線
imagewbmp(im[, filename])輸出 WBMP,省略檔名則直接輸出至瀏覽器
imagedestroy(im)釋放畫布記憶體

部署注意事項

  • 確認 PHP 編譯時包含 --with-gd 且 GD 版本 ≥ 1.8。
  • WBMP 僅支援單色(黑/白),若需灰階請改用 WAP 2.0 的 PNG/JPEG。
  • 輸出前 不得有任何空白或 BOM,否則圖片會損壞。
  • WML <img> 的 src 需指向 PHP 腳本,而非靜態檔案。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved