<?php
//创建画布,就是画画的位置 imagecreate()
//为图像分配颜色 imagecolorallocate() 可以把颜色填充到区域中,不能直接填充画布?
//区域填充 bool imagefill(resource image, intx, inty, int color); x,y为填充点
//生成图像 imagegif(resource image[,string,filename])
//释放内存 imagedestroy(resource image)
/* 点 -> 线 -> 面 -> 体
imagefill() 区域填充
imagesetpixel() 画一个单一像素
imageline() 画一条线
imagefilledrectangle 画一个矩形

*/

// $img = imagecreate(500, 200); var_dump($img);
$img = imagecreatetruecolor(500, 200); //真彩色画布,默认是屏幕关掉的颜色

$color = imagecolorallocate($img, 230, 230, 230);
imagefill($img, 0, 0, $color);
$color = imagecolorallocate($img, 255, 0, 0);
imagesetpixel($img, 50, 50, $color);
imageline($img, 10, 10, 490, 190, $color);

imagefilledrectangle($img, 50, 50, 400, 100, $color);
$point = array(15, 15, 400, 20, 390, 190, 17, 180);
imagepolygon($img, $point, 4, $color);

imagestring($img, 5, 20, 150, "ABCDEFHIJKLMN", $color); //5为字体的大小
// imagestringup();
// imagechar();
imagettftext(image, size, angle, x, y, color, fontfile, text); //添加字体样式的文本

header("content-type:image/png"); //头信息,告诉浏览器这是一张图片
imagepng($img);
imagedestroy($img); //释放图片的内存
?>

<?php
$img = imagecreatefromjpeg("./1.jpg");

// header("content-type:image/jpeg");
// imagejpeg($img);

// echo "<pre>";
// print_r(getimagesize("./1.jpg"));
// echo "</pre>";

$w = imagesX($img); //获取图片的宽度
$h = imagesY($img); //获取图片的高度
$nw = ceil($w * 2);
$nh = ceil($h * 2);
$nimg = imagecreatetruecolor($nw, $nh); //创建画布
//重采样拷贝部分图像并调整大小,即图片的剪切和裁剪
imagecopyresampled($nimg, $img, 0, 0, 0, 0, $nw, $nh, $w, $h);
//0 0 新图哪里存放位置
//0 0 原图的哪里去剪切
//$nw $nh 新图的宽度和高度
//$w $h 原图剪切多少

//imagecopy() 拷贝图像的一部分

header("content-type:image/jpeg");
imagejpeg($nimg);
?>

<?php
$desimg = imagecreatefromjpeg("./1.jpg"); //目标图片,从资源处创建
$srcimg = imagecreatefromjpeg("./2.jpg"); //源图片,从资源处创建
imagecopy($desimg, $srcimg, 80, 80, 10, 10, 250, 201);
//80 80 确定图片的放置点
//10 10 250 201 确定copy的区域,是一个矩形

header("content-type:image/jpeg");
imagejpeg($desimg);
imagedestroy($desimg);
imagedestroy($srcimg);
?>

php图片处理函数自定义画图和引入图片的更多相关文章

  1. php 随机显示图片的函数(实例分享)

    转自:http://www.jbxue.com/article/12695.html 发布:thatboy   来源:Net     [大 中 小] 本文分享一个php实现的随机显示图片的函数,可以将 ...

  2. php 随机显示图片的函数(实例)

    转自:http://www.jbxue.com/article/12695.html   发布:thatboy   来源:Net     [大 中 小] 本文分享一个php实现的随机显示图片的函数,可 ...

  3. 转:【译】Asp.net MVC 利用自定义RouteHandler来防止图片盗链

    [译]Asp.net MVC 利用自定义RouteHandler来防止图片盗链   你曾经注意过在你服务器请求日志中多了很多对图片资源的请求吗?这可能是有人在他们的网站中盗链了你的图片所致,这会占用你 ...

  4. jQuery基础(常用插件 表单验证,图片放大镜,自定义对象级,jQuery UI,面板折叠)

    1.表单验证插件——validate   该插件自带包含必填.数字.URL在内容的验证规则,即时显示异常信息,此外,还允许自定义验证规则,插件调用方法如下:   $(form).validate({o ...

  5. Vue.js 第2章 钩子函数&自定义指令&过滤器&计算属性&侦听器

    目标 钩子函数 自定义指令 自定义过滤器 计算属性 监听属性 局部自定义指令 为什么需要自定义指令 为了复用,为了代码的灵活 指令的分类:全局指令,局部指令 在vm外面创建的指令 通过Vue.dire ...

  6. Android实现自定义带文字和图片的Button

    Android实现自定义带文字和图片的Button 在Android开发中经常会需要用到带文字和图片的button,下面来讲解一下常用的实现办法. 一.用系统自带的Button实现 最简单的一种办法就 ...

  7. 显示图片的(自定义)吐司Toast

    一般我们提示的时候都是直接提示文字的,其实Toast也可以显示图片 常用方法 Toast.makeText(context,text,duration)这返回一个Toast对象 toast.setDu ...

  8. java画图程序_图片用字母画出来_源码发布_版本二

    在上一个版本:java画图程序_图片用字母画出来_源码发布 基础上,增加了图片同比例缩放,使得大像素图片可以很好地显示画在Notepad++中. 项目结构: 运行效果1: 原图:http://imag ...

  9. java画图程序_图片用字母画出来_源码发布

    在之前写了一篇blog:java画图程序_图片用字母画出来 主要是把一些调试的截图发布出来,现在程序调试我认为可以了(当然,你如果还想调试的话,也可以下载源码自己调试). 就把源码发布出来. 项目结构 ...

随机推荐

  1. winform学习之----重新绘制边框方法延伸

    方法1. Pen pen1 = new Pen(Color.FromArgb(233, 149, 87));           e.Graphics.DrawRectangle(pen1, new ...

  2. hdu Turn the corner

    这题是道三分的题,首先要分析满足条件的情况,这个就是平面几何的功夫了.要想车子能够转弯成功,最上面那个点到水平线的距离要小于等于y.这里h和s的公式就是利用平面几何的知识求出来的:s=l*cos(a) ...

  3. sessions 表的架构过程

    对于 PHP 开发来说,保存会话用 MySQL 是一个非常不错的选择.MySQL 提供一种建立在内存中的表类型 Heap,如果每条会话数据量很小的话,可以考虑用这种类型的表来进一步优化性能.但是 He ...

  4. hdu1272 并查集

    如果要输出yes 需要满足 1  这个图连通 2  没有回路 3  0 0 也是yes 看它有没有回路 在un的时候做一次判断就可以了 然后是判断连通 在这里采用的方法是扫一遍 如果这个点出现过就判断 ...

  5. Ant Tasks 使用总结

    xmlproperty http://ant.apache.org/manual/Tasks/xmlproperty.html Ant的xmlproperty的Task能直接读取一个xml文件以生成相 ...

  6. Ubuntu安装和设置SSH服务

    1.安装 Ubuntu缺省安装了openssh-client,所以在这里就不安装了,如果你的系统没有安装的话,再用apt-get安装上即可. 安装ssh-server sudo apt-get ins ...

  7. Unity 为NGUI增加体感输入方式

    背景 NGUI在处理UI和输入方面确实做的不错,但是现在的问题是公司引入体感之后,是通过手的位置来实现按钮的点击操作,前提我不想改变原先设计好的NGUI界面和机制,怎么破? NGUI的输入底层机制 N ...

  8. java--接口和抽象类

    接口将抽象类的概念更延伸了一步,完全禁止了所有的函数定义.且可以将多个接口合并到一起,但是不能继承多个类.

  9. 转:java.sql.SQLException: [Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序

    在Win7 64位系统下,使用Java+Access数据库编程,用Java连数据库时,出现错误提示,如下: Java java.sql.SQLException: [Microsoft][ODBC 驱 ...

  10. Android之Dialog详解

    Android中的对话框形式大致可分为五种:分别是一般对话框形式,列表对话框形式,单选按钮对话框,多选按钮对话框,自定义对话框. 在实际开发中,用系统的对话框会很少,因为太丑了,美工不愿意,多是使用自 ...