[PHP-users 31629] Re: Spreadsheet::WriteExcelを使用してBitmapの表示
AMO 伊東 丈仁
itoh @ amoffice.co.jp
2007年 3月 6日 (火) 16:05:08 JST
yusuke itoさま
菊澤さま
無事解決できましたので、ご報告させていただきます。
菊澤さまからアドバイスを頂いた内容をヒントに、いくつか修正を施しました。
>PHPのバージョンで名前無しのunpackの挙動が違うんじゃないでしょうか?
>・連想配列に名前無しで、入れる。
>・配列にインデックスを付けて、入れる。
>名前有りのunpackをしてやれば、多分うまくいくと思いますよ。
まさしくこれでした。
「PHP Version 4.3.11」を使用の方で同じ悩みをお持ちの方
ぜひ参考にしていただければと思います。
以下の部分を変更してうまくいきましたのでご紹介します。
Worksheet.php
2756付近
// The first 2 bytes are used to identify the bitmap.
$identity = unpack("A2ident", $data);
if ($identity['ident'] != "BM") {
die("$bitmap doesn't appear to be a valid bitmap image.\n");
}
2768付近
$size_array = unpack("Vsa", substr($data, 0, 4));
$size = $size_array['sa'];
2799付近
// Read and remove the bitmap compression. Verify compression.
$compression = unpack("Vcomp", substr($data, 0, 4));
$data = substr($data, 4);
//$compression = 0;
if ($compression['comp'] != 0) {
die("$bitmap: compression not supported in bitmap image.\n");
}
本当にありがとうございました。
PHP-users メーリングリストの案内