Canvas合成图像 比较简单 看代码和demo

<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="utf-8">
        <style>
            *{
                margin:0;
                padding:0;
            }
            .center{
                text-align: center;
            }

        </style>
    </head>
    <body>
        <div class="center">
            <img src="1.jpg" alt="" />
            <img src="2.png" alt="" />
        </div>
        <button onclick="date()">生成</button>
        <div id="imgBox" style="width:1000px;height:800px;">
        </div>
    </body>
    <script>
        var data=["1.jpg","2.png"],base64=[];
        function date(){
            var Mycanvas=document.createElement("canvas"),
                ct=Mycanvas.getContext("2d"),
                len=data.length;
                Mycanvas.width=640;
                Mycanvas.height=386;
                ct.rect(0,0,Mycanvas.width,Mycanvas.height);
                ct.fillStyle='#fff';
                ct.fill();
                function draw(n){
                    if(n<len){
                        var img=new Image;
                        img.crossOrigin = 'Anonymous'; //解决跨域
                        img.src=data[n];
                        console.log(data[n]);
                        img.onload=function(){
                            ct.drawImage(this,0,0,640,386);
                            draw(n+1);
                        }
                    }else{
                        base64.push(Mycanvas.toDataURL("image/png"));
                        document.getElementById("imgBox").innerHTML='<img src="'+base64[0]+'">';
                    }
                }
                draw(0)

        }

    </script>
</html>

demohttp://sandbox.runjs.cn/show/kozthrpo

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-11-01 21:24:00

Canvas合成图像 比较简单 看代码和demo的相关文章

将字符串转成整数的函数给我看一下吗,简单看一下代码基本功。要求:不要调用parseInt等转换函数

为了提高面试流程效率,方便用java写一段将字符串转成整数的函数给我看一下吗,简单看一下代码基本功. 要求:不要调用parseInt等转换函数.按位读取字符串里的字符进行处理将字符串转化为整数, 不考虑整数溢出问题,给定的输入一定是合法输入不包含非法字符,字符串头尾没有空格, 考虑字符串开头可能有正负号.public int StringToInt(String str) import javax.net.ssl.SSLContext; /** * 字符串转为int * @author IT *

跟KingDZ学HTML5之五 探究Canvas之图像与文字

大家好,这节课咱们继续讲解 canvas 这个标签的一些常见的使用,呵呵,这个标签还是真的挺有用途的. 这节课程首先说明的是 如何才 canvas 中插入图像. canvas 插入图像的步骤:呵呵,又来了. 1.首先当然准备一张图片了. 2.用 drawImage 方法将图像插入到 canvas 中. drawImage 方法 有三种形态的参数可以选择 第一种: 我们先用最简单的方法写一个例子 drawImage(image, x, y) 其中 image 是 image 或者 canvas 对

安卓第十五天笔记-图形图像一些简单处理

安卓第十五天笔记-图形图像一些简单处理 多媒体编程简介--图形的一般处理 1.计算机中图形计算的大小 一般白色就是0,黑色就是1 单色位图: 8位表示一个字节, 大小:长*宽/8,表示大小,还有一些文件信息如创建时间,什么工具创建之类的 24位位图 一个像素表示24位 大小:长*宽*24/8 256色 1个像素可以表示256种颜色 一个字节它的长度刚好是256 ,那么一个像素点就是一个字节 大小:长*宽 安卓中默认使用32位的 位图的缺陷 放大到一定的比例会出会出现失真与锯齿形状 占用很大的存储

MMDrawerController 的实践,已经实现,几行简单的代码实现侧栏

学习方法,看readme,看给的Demo 看功能怎么实现的去模仿,个人感觉模仿是最快的学习方法 废话少说,上代码 导入MMDrawerController框架我就不多少了,之后做什么才是我们才关注的事情 首先介绍一下框架的基本机构,框架有中心,左右三个controller 所以要创建三个controller ,将三个控制器放在框架的指定位置即可,看代码理解 #import "AppDelegate.h" //抽屉效果#import "MMDrawerController.h&

(原创)JS闭包看代码理解

<html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>JS闭包</title> <script type="text/javascript" src="

html5 Canvas处理图像 实例讲解

最近在学习canvas,canvas有很强大的图像处理功能,下面写一个我的学习总结: canvas常用功能: 1. 绘制矩形.圆形.曲线.组合图形 2. 绘制文本 3.绘制渐变.变形的图形 4. 图片处理功能:绘制图片到画布.裁剪图片. 步骤: 1.在html中新增canvas元素,建议在canvas元素中设置width和height 2.编写js代码(需要在onload时调用绘制图形的函数): 2.1 获取画布 2.2 获取画笔:图像上下文.封装了图像绘制功能的对象,目前只支持2d 2.3 设

最短路径 简单的代码

看了这些代码之后 总结了一下 其实就那三个for 循环 一:找与v有连接的点 .二:从这些连接的点找到最小,把他看成是下一次的v . 三: 你要把有出现的那些边 更新掉 . 详解在代码里写出了 #include #include #include using namespace std ; #define N 100 #define M 100 typedef struct node { int matrix[N][M] ; int n ; int e ; }Dgraph ; void Diji

看代码和写代码还是很不同的

代码看懂了不难,但是简单的代码从头到尾写出来也不容易. 写个TCP服务器&客户端.是从UDP改过来的,那费老劲了. 最开始listen出错,原来SOCK_DGRAM忘记修改为SOCK_STREAM了, 接着发现listen的端口不对,原来忘记bind了, 后面发现客户端发送数据服务端接收不到,再看代码,原来都没有accept/connect. 加上accept和connect,客户端提示成功了,但是服务端没有返回,查了半天,发现客户端忘记把SOCK_DGRAM修改为SOCK_STREAM了. 太

最近看代码的一点总结

最近看了些libevent的源码, 发现自己的技术还差的很远. 之前写程序总习惯自己实现.有的东西自己掌握不牢,或者没有接触到新的技术,总是用笨方法写出不好看的代码.之前对TCP/IP,网络编程不是很熟悉,实现的TCP客户端断线重连就很弱. 实现的服务器端监听端口,同时处理多个连接的程序,没有理解清楚one connection one thread的思想,写的代码不够简洁高效. 还是在一次面试中遇到select/poll/epoll相关的问题,之后我才开始在网上以及书上注意到IO多路复用相关的