PHP 中 GD库(以及Jpgraph库) 的配置和使用

(满屏荒唐言,一把辛酸泪)搞这种配置什么的真的太痛苦了!

一、安装前说明。

我的安装环境是,windows + IIS +php

首先我们要理解GD库和Jpgraph库之间的关系。

GD是默认安装在php下的图形库。(但是并没开启,稍后讲解)

而Jpgraph库是基于GD库的,它需要在Jpgraph官网上自行下载(这个很快)。

所以我们首先需要在php中开启 GD库的使用,然后安装并配置Jpgraph。

二,开启GD库。

首先,打开php.ini(windows下应该在你的安装目录根目录下)。

找到 entension_dir, 注释掉前面的 ;  , 将你的 ext (扩展文件夹目录) 路径写在后面。(windows下一般也在你的根目录下)

这样做的目的: 让php知道去哪里找那些扩展文件(windows下是一堆.dll)

然后, 还要开启 gd库, 同样, 在php.ini. 中,找到 php_gd2.dll, 将前面的注释; 去掉, 也就是开启了gd2的使用。

这样在刚刚那个ext文件下的 一个 php_gd2.dll 文件就能够被使用了。

(同理, 开启其他功能的使用也是这样操作的)

这里,为什么是gd2呢, 因为在php5 之后,就把gd给删掉了,也就是说 gd2 包含了 原本的gd, 所以不要有怀疑。

这时候你测试一下:

<?php
var_dump(gd_info());
?>

如果出现,gd的信息,说明,gd启动成功。

但是很有可能你在画很多网上的例子的时候还是显示不出来,

这是因为缓存问题,你需要在输出图形之前加上

ob_clean();清除缓存。

这样就可以了。

(我搞了一整天就是这个原因,网上很多都是重复在说gd的配置开启,

不过既然要写,为了完整性,我就把完整的步骤写下来了)

三,jpgraph库

至于jpgraph的配置其实很简单,把jpgraph的src里面的所有文件放在php里面(或者其他位置也行),

然后在php.ini 中找到 include_path, 写上你的文件目录。

这里要注意一个问题,

如果你的include_path 如图:

那么你在引用的时候,必须是从includes下一级开始写文件路径,知道需要的php文件。

如,

那么说明, includes下面就是 jpgraph, 然后jpgraph中有那两个php。

为什么我要特意说一下这个呢,因为一开始我的include_path 写的是 E:\php\includes\jpgraph\;. 然后就会引用出错。

这是个细节。

还有一小点: 要让php.ini 生效,服务器必须要重启的。

四,最后, 很有可能还有一些编码问题,(全用英文就好了,中文也不一定会错)

这个我实在是暂时不想研究了,搞这种东西很痛苦。

然后前面说的因为缓存的问题,应该来说,在jpgraph的一个配置文件 jpg-config.inc.php中,是可以进行配置的,

同上,暂时就不研究了,毕竟手动加个ob_clean()不是什么困难的事。

等遇到问题,找到解决办法 再更新。

PHP 中 GD库(以及Jpgraph库) 的配置和使用。(满屏荒唐言,一把辛酸泪)相关推荐

  1. PHP GD库及jpgraph的安装与配置

    一.了解 GD 库 在PHP中可以使用GD库对图像进行操作.DG库是一个开放的动态创建图像.源代码公开的函数库,可以从官主网站下载.目前GD库支持gif .png .jpeg. wbmp和xbm等多种 ...

  2. php中gd库的使用,php GD库的使用

    两大功能:自己画,对于原有图片改变 PHP中GD库的使用 PHP 不仅限于只产生 HTML 的输出,还可以创建及操作多种不同格式的图像文件.PHP提供了一些内置的图像信息函数,也可以使用GD函数库创建 ...

  3. ios 开发中 动态库 与静态库的区别

    使用静态库的好处 1,模块化,分工合作 2,避免少量改动经常导致大量的重复编译连接 3,也可以重用,注意不是共享使用 动态库使用有如下好处: 1使用动态库,可以将最终可执行文件体积缩小 2使用动态库, ...

  4. python时间函数报错_python3中datetime库,time库以及pandas中的时间函数区别与详解...

    1介绍datetime库之前 我们先比较下time库和datetime库的区别 先说下time 在 Python 文档里,time是归类在Generic Operating System Servic ...

  5. linux 中如何将文件粘贴到usr下的lib内,学会在Linux下GCC生成和使用静态库和动态库...

    一.基本概念1.1什么是库 在windows平台和linux平台下都大量存在着库. 本质上来说库是一种可执行代码的二进制形式,可以被操作系统载入内存执行. 由于windows和linux的平台不同(主 ...

  6. Linux中的动态库和静态库(.a/.la/.so/.o)

    为什么80%的码农都做不了架构师?>>>    Linux中的动态库和静态库(.a/.la/.so/.o) Linux中的动态库和静态库(.a/.la/.so/.o) C/C++程序 ...

  7. 移动中”的HTML5-开源图表库ichartjs-王鹤

    2019独角兽企业重金招聘Python工程师标准>>> 移动中"的HTML5-开源图表库ichartjs-王鹤 ichartjs是一款基于HTML5的图形图表库,使用纯Ja ...

  8. python 控制库_python中实现自动化控制pyautogui库使用方法介绍

    大家在使用电脑中,有时候需要电脑进行一些繁锁的程序化操作.Python中有一个第三方库,能够帮助大家实现自动化控制电脑完成指定任务.这个库叫pyautogui库.今天,咿哑呀就简单地教大家怎样使用这个 ...

  9. Atitit. 数据库-----catalog与schema的设计区别以及在实际中使用 获取数据库所有库表 java jdbc php  c#.Net...

    Atitit. 数据库-----catalog与schema的设计区别以及在实际中使用 获取数据库所有库表 java jdbc php  c#.Net 1. -catalog与schema的设计区别1 ...

最新文章

  1. 华为自研搜索引擎曝光:「花瓣」虽小,但要替代谷歌
  2. GPU 加速下的图像视觉
  3. 掌握11项技能,你就是优秀的前端开发工程师
  4. vue如何写原生js_纯技巧向:React, Vue, Rxjs 和原生 JS 代码大乱斗
  5. python和java反射_python实现反射功能
  6. 修辞结构理论论文集合
  7. mfc响应鼠标前进后退按键_诚意升级,商务大鼠再临:雷柏MT750S多模无线激光鼠标评测...
  8. Windows 必备纯净软件
  9. 微信小程序地图实现展示路线路
  10. 怎样修改管家婆服务器密码,管家婆软件肿么修改密码
  11. Android 中WebView的使用详解
  12. 谷歌的无痕模式有什么好处_为什么Google的新搜索结果设计是黑暗的模式
  13. 各大高校自曝状态一览 排名不分先后
  14. 如何利用支付宝实现异地、跨行转账0元手续费
  15. 面对逆境:你是胡萝卜、鸡蛋还是咖啡豆
  16. 巡检水中机器人_一种水下管道巡检机器人及巡检方法与流程
  17. Android NDK编译libjpeg-turbo压缩图片
  18. 小孩子上机器人课好还是编程课好
  19. FPGA编程过程中遇到的一些错误
  20. sever串口wifi拓展板_串口Wifi模块的工作原理和详细功能介绍

热门文章

  1. 【安装cad后不小心卸了,再次重新安装时显示已安装。这个怎么破?】
  2. c语言的%的转义吗,%20转义(C语言转义字符问题)
  3. 投递邮件简历要注意的细节
  4. 10款 好用的php 编辑器
  5. linux pacman安装目录,Arch包管理器pacman和yaourt简明用法
  6. 程序员是学历与能力,哪个重要呢?本文告诉你!
  7. yaourt 查询时Segmentation fault package-query问题解决
  8. 2020年同济软院夏令营经历
  9. 点击化学DBCO修饰药物(DBCO-PEG-雷替曲塞,甲氨喋呤MTX,培美曲塞,磺胺地索辛)
  10. win10下docker部署nginx+node+mongodb+redis学习