當前位置:首頁 » 文件管理 » java頭像上傳插件

java頭像上傳插件

發布時間: 2025-04-11 12:39:17

java怎麼生成帶用戶微信頭像的圖片,並把這張圖片發送給用戶。

1、下載生成二維碼所需要的jar包qrcode.jar;2、直接上生成二維碼的java代碼 //需要導入的包import java.awt.Color;import java.awt.Graphics2D;import java.awt.Image;import java.awt.image.BufferedImage;import java.io.File;import javax.imageio.ImageIO;import com.swetake.util.Qrcode; /** * 生成二維碼(QRCode)圖片 * @param content 二維碼圖片的內容 * @param imgPath 生成二維碼圖片完整的路徑 * @param ccbpath 二維碼圖片中間的logo路徑 */ public static int createQRCode(String content, String imgPath,String ccbPath) { try { Qrcode qrcodeHandler = new Qrcode(); qrcodeHandler.setQrcodeErrorCorrect('M'); qrcodeHandler.setQrcodeEncodeMode('B'); qrcodeHandler.setQrcodeVersion(7); // System.out.println(content); byte[] contentBytes = content.getBytes("gb2312"); //構造一個BufferedImage對象 設置寬、高 BufferedImage bufImg = new BufferedImage(140, 140, BufferedImage.TYPE_INT_RGB); Graphics2D gs = bufImg.createGraphics(); gs.setBackground(Color.WHITE); gs.clearRect(0, 0, 140, 140); // 設定圖像顏色 > BLACK gs.setColor(Color.BLACK); // 設置偏移量 不設置可能導致解析出錯 int pixoff = 2; // 輸出內容 > 二維碼 if (contentBytes.length > 0 && contentBytes.length < 120) { boolean[][] codeOut = qrcodeHandler.calQrcode(contentBytes); for (int i = 0; i < codeOut.length; i++) { for (int j = 0; j < codeOut.length; j++) { if (codeOut[j][i]) { gs.fillRect(j * 3 + pixoff, i * 3 + pixoff, 3, 3); } } } } else { System.err.println("QRCode content bytes length = " + contentBytes.length + " not in [ 0,120 ]. "); return -1; } Image img = ImageIO.read(new File(ccbPath));//實例化一個Image對象。 gs.drawImage(img, 55, 55, 30, 30, null); gs.dispose(); bufImg.flush(); // 生成二維碼QRCode圖片 File imgFile = new File(imgPath); ImageIO.write(bufImg, "png", imgFile); }catch (Exception e){ e.printStackTrace(); return -100; } return 0; }

來自網友 孤獨青鳥的博客

⑵ java用前端控制項實現用戶頭像上傳,上傳成功的同時用戶昵稱變為了圖片的名稱,重新登錄昵稱是不會變的。。

你自己程序的bug,請檢查,看看上傳完成的回調函數是不是你錯誤的調用了啥。
ps:是個沒女朋友的宅男吧,圖片這么日韓風。。。

⑶ 如何用CropBox實現頭像裁剪並與java後台交互

主流的前端jQuery 圖像裁剪插件有Jcrop和CropBox,前者是將原圖和需要裁剪的參數(裁剪的各點坐標,旋轉角度等)傳到後台,然後由後台完成實際的裁剪和後續操作。
CropBox實現功能相對較少,但操作更簡單,它的原理是:
將裁減後的圖片通過base64編碼,然後轉化為blob格式發送到伺服器,伺服器完成解碼即可,官網介紹可以看github上的說明和Demo
核心js函數只有兩個:
getDataURL 將裁剪後的圖片簡單以base64編碼後的結果,用於實時預覽,當然也可以將它直接傳到伺服器,然後解碼為png格式
getBlob 上傳圖片為Blob格式

首先貼出兩個函數的源碼
getDataURL: function ()
{
var width = this.thumbBox.width(),
height = this.thumbBox.height(),
canvas = document.createElement("canvas"),
dim = el.css('background-position').split(' '),
size = el.css('background-size').split(' '),
dx = parseInt(dim[0]) - el.width()/2 + width/2,
dy = parseInt(dim[1]) - el.height()/2 + height/2,
dw = parseInt(size[0]),
dh = parseInt(size[1]),
sh = parseInt(this.image.height),
sw = parseInt(this.image.width);

canvas.width = width;
canvas.height = height;
var context = canvas.getContext("2d");
context.drawImage(this.image, 0, 0, sw, sh, dx, dy, dw, dh);
var imageData = canvas.toDataURL('image/png');
return imageData;
},
getBlob: function()
{
var imageData = this.getDataURL();
var b64 = imageData.replace('data:image/png;base64,','');
var binary = atob(b64);
var array = [];
for (var i = 0; i < binary.length; i++) {
array.push(binary.charCodeAt(i));
}
return new Blob([new Uint8Array(array)], {type: 'image/png'});
},

⑷ 上傳頭像的時候報錯了 java.lang.IllegalArgumentException:

這個異常的解釋是"方法的參數錯誤",很多j2me的類庫中的方法在一些情況下都會引發這樣的錯誤,比如音量調節方法中的音量參數如果寫成負數就會出現這個異常,再比如g.setcolor(int red,int green,int blue)這個方法中的三個值,如果有超過255的也會出現這個異常,因此一旦發現這個異常,我們要做的,就是趕緊去檢查一下方法調用中的參數傳遞是不是出現了錯誤。

⑸ 如何java中實現上傳頭像功能

方法一:

①下載fileupload 插件,將文件轉換成流;

②再寫出到指定的路徑,將存儲路徑存儲在資料庫中。

方法二:

可以將頭像文件做一次壓縮處理,原圖一個路徑,壓縮圖一個路徑。壓縮圖路徑展示的是小圖,原圖路徑展示的是原圖。

熱點內容
怎麼配置serial窗口 發布:2025-04-25 23:32:24 瀏覽:961
java配置路徑 發布:2025-04-25 23:29:44 瀏覽:824
閃迪存儲卡g 發布:2025-04-25 23:24:51 瀏覽:211
c語言和It 發布:2025-04-25 23:18:22 瀏覽:694
c語言簡單程序設計 發布:2025-04-25 23:13:14 瀏覽:593
c語言編程思路 發布:2025-04-25 23:08:08 瀏覽:341
安卓開發存儲空間多少則為不足 發布:2025-04-25 22:54:55 瀏覽:541
視頻課堂源碼 發布:2025-04-25 22:52:55 瀏覽:982
庭院植物配置需要什麼 發布:2025-04-25 22:46:47 瀏覽:985
存儲卡ntfs 發布:2025-04-25 22:42:57 瀏覽:76