使用PHP 5.0创建图形的巧妙方法

yipeiwu_com7年前PHP代码库
我将图形编辑程序分为两类:一类(是)绘图程序,利用这种程序可以一个像素一个像素(地)绘制图像;另外一类(是)制图程序,这种程序提供了一组对象,例如线、椭圆和矩形,您可以使用这些对象来组合成一幅大图像,例如 JPEG。绘图程序非常适合进行像素级(的)控制。但(是)对于业务图形来说,制图程序(是)比较好(的)方式,因为大部分图形都(是)由矩形、线和椭圆组成(的)。

  PHP 内置(的)制图基本操作与绘图程序非常类似。它们对于绘制图像来说功能非常强大;但(是)如果您希望自己(的)图像(是)一组对象集合时,这(就)不太适合了。本文将向您展示如何在 PHP 图形库(的)基础上构建一个面向对象(的)图形库。您将使用 PHP V5 中提供(的)面向对象(的)扩展。

  具有面向对象(的)图形支持之后,您(的)图形代码(就)非常容易理解和维护了。您可能还需要从一种单一(的)图形源将图形合成为多种类型(的)媒介:Flash 电影、SVG 等等。

  目标

  创建一个图形对象库包括 3 个主要(的)目标:

  从基本操作切换到对象上

  它不使用 imageline、imagefilledrectangle 以及其他图形函数,这个库应该提供一些对象,例如 Line、Rectangle 和 Oval,它们可以用来制作图像。它应该还可以支持构建更大(的)复杂对象或对对象进行分组(的)功能。

  可以进行 z 值排序

  制图程序让画家可以在画面表面上上下移动图形对象。这个库应该可以支持将一个对象放到其他对象前后(的)功能:它使用了一个 z 值,用来定义对象从制图平面开始(的)高度。z 值越大(的)对象被画(得)越晚,(也就)出现在那些 z 值较小(的)对象之上。

相关文章

PHP实现ASCII码与字符串相互转换的方法

本文实例讲述了PHP实现ASCII码与字符串相互转换的方法。分享给大家供大家参考,具体如下: <?php class ascii { /** * 将ascii...

PHP使用strrev翻转中文乱码问题的解决方法

本文实例讲述了PHP使用strrev翻转中文乱码问题的解决方法。分享给大家供大家参考,具体如下: 在用PHP中的strrve翻转中文时,会出现乱码情况 例如: header("Con...

54个提高PHP程序运行效率的方法

1.在可以用file_get_contents替代file、fopen、feof、fgets等系列方法的情况下,尽量用 file_get_contents,因为他的效率高得多!但是要注意...

PHP高效获取远程图片尺寸和大小的实现方法

 PHP高效获取远程图片尺寸和大小的实现方法 在这里分享一下自己的心得,希望和大家一起分享技术,如果有什么不足,还请大家指正。写出这篇目的,就是希望大家一起成长,我也相信技术之...

学习php设计模式 php实现观察者模式(Observer)

学习php设计模式 php实现观察者模式(Observer)

一、意图 定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新【GOF95】 又称为发布-订阅(Publish-Subscribe)模式...