欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

js+canvas實現(xiàn)兩張圖片合并成一張圖片的方法

 更新時間:2019年11月01日 11:59:54   作者:蒼青浪  
這篇文章主要介紹了js+canvas實現(xiàn)兩張圖片合并成一張圖片的方法,結合實例形式分析了JavaScript結合HTML5 canvas實現(xiàn)圖片合并的操作技巧,并附帶了Java圖片合并的實現(xiàn)方法,需要的朋友可以參考下

本文實例講述了js+canvas實現(xiàn)兩張圖片合并成一張圖片的方法。分享給大家供大家參考,具體如下:

JS和canvas的合成方式

function drawAndShareImage(){
  var canvas = document.createElement("canvas");
  canvas.width = 700;
  canvas.height = 700;
  var context = canvas.getContext("2d");
  context.rect(0 , 0 , canvas.width , canvas.height);
  context.fillStyle = "#fff";
  context.fill();
  var myImage = new Image();
  myImage.src = "./2.png";  //背景圖片 你自己本地的圖片或者在線圖片
  myImage.crossOrigin = 'Anonymous';
  myImage.onload = function(){
    context.drawImage(myImage , 0 , 0 , 700 , 700);
    context.font = "60px Courier New";
    context.fillText("我是文字",350,450);
    var myImage2 = new Image();
    myImage2.src = "./1.png";  //你自己本地的圖片或者在線圖片
    myImage2.crossOrigin = 'Anonymous';
    myImage2.onload = function(){
      context.drawImage(myImage2 , 175 , 175 , 225 , 225);
      var base64 = canvas.toDataURL("image/png"); //"image/png" 這里注意一下
      var img = document.getElementById('avatar');
      // document.getElementById('avatar').src = base64;
      img.setAttribute('src' , base64);
    }
  }
}

PS:在線圖片和本地圖片都要注意下跨越的問題,最好放在服務器上測試。

java的實現(xiàn)方式

public static String generateCode(String codeUrl, Integer userId, String userName) {
 Font font = new Font("微軟雅黑", Font.PLAIN, 30);// 添加字體的屬性設置
 String projectUrl = PathKit.getWebRootPath() + "/before/codeImg/";
 String imgName = projectUrl + userId + ".png";
 try {
 // 加載本地圖片
 String imageLocalUrl = projectUrl + "weixincode2.png";
 BufferedImage imageLocal = ImageIO.read(new File(imageLocalUrl));
 // 加載用戶的二維碼
 BufferedImage imageCode = ImageIO.read(new URL(codeUrl));
 // 以本地圖片為模板
 Graphics2D g = imageLocal.createGraphics();
 // 在模板上添加用戶二維碼(地址,左邊距,上邊距,圖片寬度,圖片高度,未知)
 g.drawImage(imageCode, 575, imageLocal.getHeight() - 500, 350, 350, null);
 // 設置文本樣式
 g.setFont(font);
 g.setColor(Color.BLACK);
 // 截取用戶名稱的最后一個字符
 String lastChar = userName.substring(userName.length() - 1);
 // 拼接新的用戶名稱
 String newUserName = userName.substring(0, 1) + "**" + lastChar + " 的邀請二維碼";
 // 添加用戶名稱
 g.drawString(newUserName, 620, imageLocal.getHeight() - 530);
 // 完成模板修改
 g.dispose();
 // 獲取新文件的地址
 File outputfile = new File(imgName);
 // 生成新的合成過的用戶二維碼并寫入新圖片
 ImageIO.write(imageLocal, "png", outputfile);
 } catch (Exception e) {
 e.printStackTrace();
 }
 // 返回給頁面的圖片地址(因為絕對路徑無法訪問)
 imgName = Constants.PROJECT_URL + "codeImg/" + userId + ".png";
 return imgName;
}

更多關于JavaScript相關內(nèi)容感興趣的讀者可查看本站專題:《JavaScript+HTML5特效與技巧匯總》、《JavaScript圖片操作技巧大全》、《JavaScript圖形繪制技巧總結》、《JavaScript錯誤與調(diào)試技巧總結》、《JavaScript數(shù)據(jù)結構與算法技巧總結》、《JavaScript遍歷算法與技巧總結》及《JavaScript數(shù)學運算用法總結

希望本文所述對大家JavaScript程序設計有所幫助。

相關文章

  • JavaScript數(shù)據(jù)結構鏈表知識詳解

    JavaScript數(shù)據(jù)結構鏈表知識詳解

    存儲有序的元素集合,但不同于數(shù)組,鏈表中的元素在內(nèi)存中不是連續(xù)放置的。每個元素由一個存儲元素本身的節(jié)點和一個指向下一個元素的引用(也稱指針或鏈接)組成。下面通過本文給大家詳細介紹下,需要的朋友參考下
    2016-11-11
  • JS定時器不可靠的原因及解決方案

    JS定時器不可靠的原因及解決方案

    JavaScript中所有的任務分為同步任務與異步任務,同步任務,顧名思義就是立即執(zhí)行的任務,它一般是直接進入到主線程中執(zhí)行,這篇文章主要介紹了JS定時器不可靠的原因及解決方案,需要的朋友可以參考下
    2022-01-01
  • Bootstrap carousel輪轉圖的使用實例詳解

    Bootstrap carousel輪轉圖的使用實例詳解

    圖片輪播效果在Web中常常能看到,很多人也稱之為幻燈片。這篇文章主要給大家介紹Bootstrap carousel輪轉圖的使用實例詳解,需要的朋友可以參考下
    2016-05-05
  • three.js 利用uv和ThreeBSP制作一個快遞柜功能

    three.js 利用uv和ThreeBSP制作一個快遞柜功能

    這篇文章主要介紹了three.js 利用uv和ThreeBSP制作一個快遞柜,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-08-08
  • 使用snowfall.jquery.js實現(xiàn)愛心滿屏飛的效果

    使用snowfall.jquery.js實現(xiàn)愛心滿屏飛的效果

    這篇文章主要介紹了使用snowfall.jquery.js實現(xiàn)愛心滿屏飛的效果的相關資料,需要的朋友可以參考下
    2017-01-01
  • 詳解小程序退出頁面時清除定時器

    詳解小程序退出頁面時清除定時器

    這篇文章主要介紹了小程序退出頁面時清除定時器,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-04-04
  • 詳解axios中封裝使用、攔截特定請求、判斷所有請求加載完畢)

    詳解axios中封裝使用、攔截特定請求、判斷所有請求加載完畢)

    這篇文章主要介紹了axios中封裝使用、攔截特定請求、判斷所有請求加載完畢的相關知識,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-04-04
  • 菜單效果

    菜單效果

    菜單效果...
    2006-10-10
  • Javascript實現(xiàn)跑馬燈效果的簡單實例

    Javascript實現(xiàn)跑馬燈效果的簡單實例

    下面小編就為大家?guī)硪黄狫avascript實現(xiàn)跑馬燈效果的簡單實例。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-05-05
  • uniapp踩坑實戰(zhàn)之文件查找失敗:'uview-ui'?at?main.js解決辦法

    uniapp踩坑實戰(zhàn)之文件查找失敗:'uview-ui'?at?main.js解決辦法

    這篇文章主要給大家介紹了關于uniapp踩坑實戰(zhàn)之文件查找失敗:'uview-ui'?at?main.js的解決辦法,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2023-12-12

最新評論