这篇文章主要介绍了PHP实现将HTML5中Canvas图像保存到服务器的方法,可实现将Canvas图像保存到服务器的功能,是非常实用的技巧,需要的朋友可以参考下

本文实例讲述了PHP实现将HTML5中Canvas图像保存到服务器的方法。分享给大家供大家参考。具体实现方法如下:

一、问题:

在几年前HTML5还没有流行的时候,我们的项目经理曾经向我提出这样一个需求:让项目评审专家们在评审结束时用笔在平板电脑上进行电子签名。这需要我们评审软件里提供这样一个功能:打开浏览器,登录,进入评审意见页,页面最下部有个方块区域,用户在这里用触摸笔进行签名,然后这个签名将会保持的服务器上。

这样的一个需求在当时是让我大费周折,但如今想起来,如果用html5的canvas实现,真是太简单了。在《在HTML5 Canvas中放入图片和保存为图片的方法》这篇文章里就实现了这一功能。

二、解决方法:

之前说了很多如何将canvas图像保存成图片并下载的方法,但这些方法都是将图片保存到客户端,而我们的签名需求是需要将canvas的内容保存到服务器端,如何实现?

其实很简单,看完下面的这段PHP代码,相信你也会觉得很简单。<?php

// requires php5

define('UPLOAD_DIR', 'images/');

$img = $_POST['img'];

$img = str_replace('data:image/png;base64,', '', $img);

$img = str_replace(' ', '+', $img);

$data = base64_decode($img);

$file = UPLOAD_DIR . uniqid() . '.png';

$success = file_put_contents($file, $data);

print $success ? $file : 'Unable to save the file.';

?>

从网页上传到服务器端的图片是base64_encode转码过的Data URL格式,数据在服务器端用base64_decode进行解码,保存成文件。

或许有一天你也会需要用到它的,觉得很有用的话就收藏一下吧!

以上就是本文的全部内容,希望对大家的学习有所帮助,更多相关内容请关注PHP中文网!

相关推荐:

php版canvas,PHP实现将HTML5中Canvas图像保存到服务器相关推荐

  1. html5中提供的绘图元素,HTML5中Canvas元素的使用总结

    HTML5中Canvas元素的使用总结 Canvas提供了开发者自定义绘图的接口,我们可以公国getContext()函数来获取绘图上下文进行绘制操作,这个函数中可以传入两个参数,其中第1个参数设置绘 ...

  2. html页面画虚线,HTML5中canvas怎么画虚线

    HTML5中canvas如何画虚线 虚线也可以看成是一段段的实线组成的,而实线是利用context.moveTo(x,y);context.lineTo(x2,y2);context.stroke() ...

  3. html怎么把图片放到数组,HTML5中的图像数组

    所以,如果我想在网上抓取几张图片,将它们放入一个数组中并在网站上使用它们,我正在使用Javascript怎么做.HTML5中的图像数组 var images = [ {caption: "R ...

  4. HTML5中canvas实现拼图游戏,HTML5 Canvas学习笔记(6)拼图游戏(数字版)

    今天网上发现了一段代码,只有界面,很不错,学习了并完成了逻辑. 效果图: 点击这里试玩 http://www.108js.com/article/canvas/6/play.html 欢迎访问博主的网 ...

  5. html5中canvas画布实现手机端和移动端的刮刮乐效果

    用html5中的canvas实现刮刮乐的效果 使用html+css实现背景的样式 使用clearRect()方法实现挂去的作用 手机端使用addEventListener()监听 手机端滑动事件tou ...

  6. HTML怎么让正方形转动,第十讲:html5中canvas实现正方体的动态旋转

    在html5的画布上,画出三维图形,并且实现它动态的围着一条轴进行旋转. 实现步骤: 1.定义一个对象Vector3,用于存储三维的坐标 2.定义一个观察点坐标和显示屏,初始化观察点的显示屏的距离(主 ...

  7. Html5中Canvas(画布)的使用

    什么是 Canvas?HTML5 的 canvas 元素使用 JavaScript 在网页上绘制图像.画布是一个矩形区域,您可以控制其每一像素.canvas 拥有多种绘制路径.矩形.圆形.字符以及添加 ...

  8. html5中Canvas、绘制线条模糊、常见绘制工具、绘制基本图形、绘制图片、面向对象的方式绘制图形图片、绘制文本、帧动画绘制

    Canvas容器: canvas标签用来定义图像的容器,必须配合脚本来绘制图像,canvas也运用于游戏开发.注意:canvas绘制图时会出现线条模糊情况,这是因为显示屏像素和canvas中定义的一个 ...

  9. php中在网页中显示图片代码,用PHP将网页上的Canvas图像保存到服务器上的方法

    在几年前HTML5还没有流行的时候,我们的项目经理曾经向我提出这样一个需求:让项目评审专家们在评审结束时用笔在平板电脑上进行电子签名.这需要我们评审软件里提供这样一个功能:打开浏览器,登录,进入评审意 ...

最新文章

  1. 极光推送收不到推送消息
  2. CV:基于face库利用cv2调用摄像头(或视频)根据人脸图片实现找人(先指定要识别已知人脸的文件夹转为numpy_array+输入新图片遍历已有numpy_array)
  3. IT项目管理总结:第五章 项目范围管理
  4. 《架构之美》阅读笔记01
  5. 新的JEP草案将简化Java中的撰写
  6. 第五十六期:百度CTO王海峰CNCC2019演讲:深度学习平台支撑产业智能化
  7. 推荐系统(5)-深度推荐模型-AutoRec、DeepCrossing、NeuralCF、PNN、WideDeep、FNN、DeepFM、NFM
  8. Javascript对象属性方法集锦
  9. 关于c#中的string
  10. 查看mysql汉字占用的字节数_一个汉字在数据库占几个字节
  11. iOS开发企业版ipa分发
  12. 北斗导航 | EagleEye2000:国产激光雷达走进测绘世界
  13. 室内外地图切换(室内基于ibeacons三点定位)
  14. 城市的灵魂——记董敬明教授讲座
  15. 工程经济在施工项目成本控制中应用
  16. 基于QT的在线打字练习软件助手(C/S模型)
  17. 英语之境(chapter two)
  18. 99%的人都想要的广告拦截软件
  19. 原癌基因和抑癌基因总结
  20. 杂记(二):while(*target++)(位于小甲鱼C语言视频第22课)

热门文章

  1. 详解电脑屏幕垃圾广告怎么去除
  2. win10如何解决浏览器出现“正在解析主机”的问题,很大原因是虚拟机,虚拟网卡,小米随身wifi导致的,DNS优选下载,
  3. 联想拯救者Legion Y7000P 2020款(10代INTEL+GTX1650)安装ubuntu16.04(双系统)
  4. Spring配置XML本地提示:点击eclipse属性——选择XML Catalog
  5. python docx 表格_python-docx表格添加和删除数据
  6. abb伺服电机如何进行挑选_PLC是怎么控制伺服电机的?如何设计一个伺服系统?...
  7. MybatisPlus报错: org.apache.velocity.context.Context(已解决)
  8. 网页页面禁止用户复制
  9. 计算机无法备份,电脑无法备份怎么办
  10. python绘制三维图散点图_python 绘制三维图形、三维数据散点图