[PHP-users 31624] Re: Spreadsheet::WriteExcelを使用してBitmapの表示

yusuke ito ito.ysk @ gmail.com
2007年 3月 6日 (火) 09:18:48 JST


(別の)伊東です。

07/03/05 に AMO 伊東 丈仁<itoh @ amoffice.co.jp> さんは書きました:
> Spreadsheet_Excel_Writerでエクセルファイルに画像を挿入したいのですが、
> 「test.bmp doesn't appear to be a valid bitmap image.」
> とエクセルは作成しますが、BMPファイルがうまく作成できません。

PHPで記述されているライブラリなんだからちょっとgrepしてみてはいかがですか。

Writer/Worksheet.php(line 3382〜):
  // The first 2 bytes are used to identify the bitmap.
  $identity = unpack("A2ident", $data);
  if ($identity['ident'] != "BM") {
    $this->raiseError("$bitmap doesn't appear to be a valid bitmap image.\n");
  }

先頭2バイトを見て判定していると書いてます。
#とはいえ私には unpack("A2ident", $data); がもう一つ理解できず

とりあえず手元のMSPaintでテキトウナBMPを作成して先頭2バイトを見たところ
確かに「BM」となっていました。
該当の画像もチェックしてみては?


PHP-users メーリングリストの案内