本文目录一览:
为什么我使用php的imagerectangle()函数绘制的矩形边框会是这个样子?
程序是从0开始计算的,楼主画布只有100*100,
此处
imagerectangle( $image, 0, 0, 100, 100, $red );
改成
imagerectangle( $image, 0, 0, 99,99, $red );
试一试
如何用php调用图片?
PHP调用?好的,如果是HTML的话很简单(只需要img标记插入即可),那么我回答一下PHP的载入吧,代码如下:
// 设置图片路径
$path = '/tupian/1.jpg';
// 获取图片信息
$imgInfo = getimagesize($path);
// 获取图片类型
$imgType = $imgInfo[2];
// 检测图片类型
switch ($imgType) {
case 1: // gif
// 采用gif方式载入
$img = imagecreatefromgif($path);
// 声明文件为图片类型
header('Content-Type:image/gif;');
// 采用gif方式输出
imagegif($img);
break;
case 2: // jpg
// 采用jpg方式载入
$img = imagecreatefromjpeg($path);
// 声明文件为图片类型
header('Content-Type:image/jpeg;');
// 采用jpeg方式输出
imagejpeg($img);
break;
case 3: // png
// 采用png方式载入
$img = imagecreatefrompng($path);
// 声明文件为图片类型
header('Content-Type:image/png;');
// 采用png方式输出
imagepng($img);
break;
default:
exit('图片格式不支持!');
}
// 销毁图片资源
imagedestroy($img);
// 删除变量
unset($img);
以上若还有什么不明白的,欢迎追问~
如何使用PHP实现图像比较
?php
/**
* 图片相似度比较
*
* @version $Id: ImageHash.php 4429 2012-04-17 13:20:31Z jax $
* @author jax.hu
*
* code
* //Sample_1
* $aHash = ImageHash::hashImageFile('wsz.11.jpg');
* $bHash = ImageHash::hashImageFile('wsz.12.jpg');
* var_dump(ImageHash::isHashSimilar($aHash, $bHash));
*
* //Sample_2
* var_dump(ImageHash::isImageFileSimilar('wsz.11.jpg', 'wsz.12.jpg'));
* /code
*/
class ImageHash {
/**取样倍率 1~10
* @access public
* @staticvar int
* */
public static $rate = 2;
/**相似度允许值 0~64
* @access public
* @staticvar int
* */
public static $similarity = 80;
/**图片类型对应的开启函数
* @access private
* @staticvar string
* */
private static $_createFunc = array(
IMAGETYPE_GIF ='imageCreateFromGIF',
IMAGETYPE_JPEG ='imageCreateFromJPEG',
IMAGETYPE_PNG ='imageCreateFromPNG',
IMAGETYPE_BMP ='imageCreateFromBMP',
IMAGETYPE_WBMP ='imageCreateFromWBMP',
IMAGETYPE_XBM ='imageCreateFromXBM',
);
/**从文件建立图片
* @param string $filePath 文件地址路径
* @return resource 当成功开启图片则传递图片 resource ID,失败则是 false
* */
public static function createImage($filePath){
if(!file_exists($filePath)){ return false; }
/*判断文件类型是否可以开启*/
$type = exif_imagetype($filePath);
if(!array_key_exists($type,self::$_createFunc)){ return false; }
$func = self::$_createFunc[$type];
if(!function_exists($func)){ return false; }
return $func($filePath);
}