|
@@ 610-613 (lines=4) @@
|
| 607 |
|
// read file header |
| 608 |
|
$meta = unpack('vtype/Vfilesize/Vreserved/Voffset', fread($fh, 14)); |
| 609 |
|
// check for bitmap |
| 610 |
|
if ($meta['type'] != 19778) { |
| 611 |
|
trigger_error('imagecreatefrombmp: ' . $fileName . ' is not a bitmap!', E_USER_WARNING); |
| 612 |
|
return false; |
| 613 |
|
} |
| 614 |
|
// read image header |
| 615 |
|
$meta += unpack('Vheadersize/Vwidth/Vheight/vplanes/vbits/Vcompression/Vimagesize/Vxres/Vyres/Vcolors/Vimportant', fread($fh, 40)); |
| 616 |
|
// read additional 16bit header |
|
@@ 633-636 (lines=4) @@
|
| 630 |
|
// in rare cases filesize is equal to offset so we need to read physical size |
| 631 |
|
if ($meta['imagesize'] < 1) { |
| 632 |
|
$meta['imagesize'] = @filesize($fileName) - $meta['offset']; |
| 633 |
|
if ($meta['imagesize'] < 1) { |
| 634 |
|
trigger_error('imagecreatefrombmp: Can not obtain filesize of ' . $fileName . '!', E_USER_WARNING); |
| 635 |
|
return false; |
| 636 |
|
} |
| 637 |
|
} |
| 638 |
|
} |
| 639 |
|
// calculate colors |