Кажется, что BMP не поддерживается imagecreatefromstring (GD) или РНР по этому вопросу [1]
Это, кажется, поддерживает WBMP, который не является BMP. [2]
И кроме того, imagecreatefromstring() ожидает получить весь файл, а не просто «выписку» из выбранных вами пикселей. Если бы он принимал необработанные пиксельные данные (забывая о таких проблемах, как цветовой формат, количество бит и т. Д.), Вам все равно нужно указать, по крайней мере, пиксели на каждую строку, чтобы imagecreatefromstring() для GD составлять что-либо из ваших «необработанных данных», ,
Из-за природы BMP, где данные являются несжатыми пиксельными данными, если вам действительно нужно, я думаю, вы могли бы вообразить() пустое изображение и использовать imagesetpixel() в a for (y) {for (x) {...}}, чтобы установить данные пикселя из выписки из исходного файла BMP. Не зная, что вы пытаетесь сделать, я бы поспорил, что это будет проще.
[1] http://php.net/manual/en/function.imagecreatefromstring.php/"imagecreatefromstring() возвращает идентификатор изображения, представляющий изображение, полученное с данного изображения. Эти типы будут автоматически обнаружены, если ваша сборка PHP поддерживает их: JPEG, PNG, GIF, WBMP и GD2 «.
[2] http://en.wikipedia.org/wiki/Wireless_Application_Protocol_Bitmap_Format
Газа пространство и использовать [ 'hex2bin'] (http://php.net/hex2bin) (или реализацию пользовательских программ [[' пак'] (HTTP: // PHP. net/pack)]). – mario
Вам нужно преобразовать массив байтов в двоичную строку, как вы это делаете? –