Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/267.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/image-processing/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 打开、裁剪、旋转和转换Windows位图(bmp)的最佳方法_Php_Image Processing - Fatal编程技术网

Php 打开、裁剪、旋转和转换Windows位图(bmp)的最佳方法

Php 打开、裁剪、旋转和转换Windows位图(bmp)的最佳方法,php,image-processing,Php,Image Processing,我喜欢在php中打开Windows位图文件 我发现了一些代码imagecreatefrombmp,它将bmp转换为png。 但这段代码是用普通php编写的,速度很慢。 我的图像大小约为1000x2000像素 gdlib不打开bmp文件 IMagick的编译非常复杂,我找不到与我的php兼容的windows二进制文件 另外,我喜欢从字符串打开bmp。 它是从db流式传输的 我还需要做一些旋转0,90,180,270和一些裁剪 最后,我想把它保存到tiff或png文件或字符串中 但首要问题是,如何打

我喜欢在php中打开Windows位图文件

我发现了一些代码imagecreatefrombmp,它将bmp转换为png。 但这段代码是用普通php编写的,速度很慢。 我的图像大小约为1000x2000像素

gdlib不打开bmp文件

IMagick的编译非常复杂,我找不到与我的php兼容的windows二进制文件

另外,我喜欢从字符串打开bmp。 它是从db流式传输的

我还需要做一些旋转0,90,180,270和一些裁剪

最后,我想把它保存到tiff或png文件或字符串中

但首要问题是,如何打开bmp文件

平台:

php 5.2 vc6、Windows Cli上的ts和Apache 2.2模块 zend框架1.10
您可以在valokuva站点上找到预编译的gmagick PHP Windows扩展。该文件名为php_gmagick_ts.dll

诀窍在于,它们是使用VC9编译器构建的,因此您还需要VC9版本的Apache和PHP。如果您计划将PHP作为模块安装,则需要一个线程安全的ts版本的gmagick和PHP。您可以使用apachelounge中的VC9、名为httpd-2.2.14-win32-x86-ssl.zip的文件和PHP网站中名为PHP-5.3.1-win32-VC9-x86.msi的文件构建Apache

gmagick代码示例可以在PHP文档或Zend DevZone的伟大教程中找到

要查看此答案的所有链接,请转到


享受吧

这不是php的方式。也许exec被suhosin阻止了。如果没有任何帮助:我将编写我自己的扩展,它正在执行我的业务案例。是的,如果您不想从PECL编译它,则需要将堆栈更新为5.3/vc9。