亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > Java > 正文

Java如何實現圖片裁剪預覽功能

2019-11-26 15:03:12
字體:
來源:轉載
供稿:網友

在項目中,我們需要做些類似頭像上傳,圖片裁剪的功能,ok看下面文章!
需要插件:jQuery Jcrop
后端代碼:

package org.csg.upload; import java.awt.Rectangle;import java.awt.image.BufferedImage;import java.io.File;import java.io.FileInputStream;import java.io.IOException;import java.util.Iterator;import javax.imageio.ImageIO;import javax.imageio.ImageReadParam;import javax.imageio.ImageReader;import javax.imageio.stream.ImageInputStream;public class Upload { /**  * @author 小夜的傳說  * @param path1 圖片原路徑  * @param path2 裁剪后存儲的路徑  * @param x x軸  * @param y y軸  * @param w  * @param h  */ public static void CutImage(String path1,String path2,int x,int y,int w,int h){  FileInputStream fileInputStream=null;  ImageInputStream iis=null;     try {   //讀取圖片文件,建立文件輸入流   fileInputStream=new FileInputStream(path1);   //創建圖片的文件流 迭代器   Iterator<ImageReader> it = ImageIO.getImageReadersByFormatName("jpg");   ImageReader reader=it.next();   //獲取圖片流 建立文圖 文件流   iis=ImageIO.createImageInputStream(fileInputStream);   //獲取圖片默認參數   reader.setInput(iis, true);   ImageReadParam param=reader.getDefaultReadParam();   //定義裁剪區域   Rectangle rect=new Rectangle(x,y,w,h);   param.setSourceRegion(rect);   BufferedImage bi=reader.read(0,param);   ImageIO.write(bi, "jpg", new File(path2));  } catch (Exception e) {   e.printStackTrace();   System.out.println("裁剪失敗");  }finally{   try {    if(fileInputStream!=null){     fileInputStream.close();    }    if(iis!=null){     iis.close();    }   } catch (IOException e) {    e.printStackTrace();   }      } }}

訪問代碼:

<%@ page language="java" import="java.util.*,org.csg.upload.*" pageEncoding="utf-8"%><% //圖片的相對路徑 String imagPath=request.getParameter("imgPath"); String relPath=request.getRealPath("/");//獲取圖片服務器絕對地址 String newFileName=new Date().getTime()+".jpg"; //實際圖片路徑 String path1=relPath+imagPath; //裁剪后存儲到服務器的圖片路徑 String path2=relPath+"/images/"+newFileName;   int x=Integer.parseInt(request.getParameter("x")); int y=Integer.parseInt(request.getParameter("y")); int w=Integer.parseInt(request.getParameter("w")); int h=Integer.parseInt(request.getParameter("h")); try{ Upload.CutImage(path1, path2, x, y, w, h); out.print("<img src='images/"+newFileName+"'/>"); }catch(Exception e){ e.printStackTrace(); out.print("圖片裁剪失敗"); }%>

jsp代碼:

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html> <head> <title>Jsp開發頭像裁剪</title> <meta http-equiv="pragma" content="no-cache"> <meta http-equiv="cache-control" content="no-cache"> <meta http-equiv="expires" content="0">  <meta http-equiv="keywords" content="keyword1,keyword2,keyword3"> <meta http-equiv="description" content="This is my page"> <link rel="stylesheet" href="css/jquery.Jcrop.css" type="text/css" /> <script type="text/javascript" src="js/jquery.min.js"></script> <script type="text/javascript" src="js/jquery.Jcrop.min.js"></script>  <style type="text/css">  *{margin: 0;padding: 0;}  .cut{   margin-top: 20px;  }  #preview-pane {   display: block;   position: absolute;   z-index: 2000;   top: 10px;   right: -280px;   padding: 6px;   border: 1px rgba(0,0,0,.4) solid;   background-color: white;   -webkit-border-radius: 6px;   -moz-border-radius: 6px;   border-radius: 6px;   -webkit-box-shadow: 1px 1px 5px 2px rgba(0, 0, 0, 0.2);   -moz-box-shadow: 1px 1px 5px 2px rgba(0, 0, 0, 0.2);   box-shadow: 1px 1px 5px 2px rgba(0, 0, 0, 0.2); }   #preview-pane .preview-container {  width: 250px;  height: 170px;  overflow: hidden; }  </style>  <script type="text/javascript">   $(function(){    var jcrop_api,   boundx="",   boundy="",   $preview = $('#preview-pane'),   $pcnt = $('#preview-pane .preview-container'),   $pimg = $('#preview-pane .preview-container img'),   xsize = $pcnt.width(),   ysize = $pcnt.height();    $('#cutImage').Jcrop({     onChange:showCoords,//獲取選中的值     onSelect:showCoords,//獲取拖拽的值     aspectRatio: xsize / ysize    },function(){     var bounds = this.getBounds();     boundx = bounds[0];     boundy = bounds[1];     jcrop_api = this;     $preview.appendTo(jcrop_api.ui.holder);    });    function showCoords(c){     var x=c.x;     var y=c.y;     var w=c.w;     var h=c.h;     $("#x1").val(parseInt(x));     $("#y1").val(parseInt(y));     $("#w").val(parseInt(w));     $("#h").val(parseInt(h));    if (parseInt(c.w) > 0){     var rx = xsize / c.w;     var ry = ysize / c.h;     $pimg.css({      width: Math.round(rx * boundx) + 'px',      height: Math.round(ry * boundy) + 'px',      marginLeft: '-' + Math.round(rx * c.x) + 'px',      marginTop: '-' + Math.round(ry * c.y) + 'px'     });     }    }   });  </script> </head> <body> <h1>Java開發QQ頭像裁剪系統</h1> <div class="cut">  <img id="cutImage" alt="" src="images/1.jpg" >  <div id="preview-pane">   <div class="preview-container">    <img src="images/1.jpg" class="jcrop-preview" alt="Preview" />   </div>  </div> </div> <form action="success.jsp" method="post" >  <input type="text" value="images/1.jpg" name="imgPath">  x軸:<input type="text" size="4" id="x1" name="x" />  y軸:<input type="text" size="4" id="y1" name="y"/>  寬度:<input type="text" size="4" id="w" name="w"/>  高度:<input type="text" size="4" id="h" name="h"/>  <input type="submit" value="裁剪"/> </form> </body></html>

效果圖:

以上就是本文的全部內容,希望大家能夠喜歡。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
www.国产精品一二区| 国产不卡精品视男人的天堂| 国产精品久久久久久超碰| 久久久久久香蕉网| 高清在线视频日韩欧美| 91在线观看欧美日韩| 国产精品69精品一区二区三区| 亚洲国模精品私拍| 亚洲激情在线视频| 亚洲欧美成人精品| 久久久精品国产| x99av成人免费| 色狠狠av一区二区三区香蕉蜜桃| 亚洲精品98久久久久久中文字幕| 日韩精品高清在线| 欧美成人精品h版在线观看| 在线观看国产精品91| 久久国产精品久久久| 68精品国产免费久久久久久婷婷| 日韩欧美中文在线| 日韩av在线免费观看| 国产精品久久久久久久久久久久久久| 日韩成人在线观看| 国产精品中文在线| 久久久91精品国产一区不卡| 亚洲国产精品久久久久久| 国产精品爱啪在线线免费观看| 国产乱人伦真实精品视频| 亚洲自拍偷拍在线| 高清欧美一区二区三区| 欧美性xxxx18| 国产精品久久久久久影视| 永久免费看mv网站入口亚洲| 日韩精品小视频| 91视频国产一区| 日韩亚洲精品视频| 亚洲jizzjizz日本少妇| 国产亚洲精品美女久久久| 1769国产精品| 欧美在线一级视频| 亚洲欧美日韩另类| 九色成人免费视频| 久久99精品国产99久久6尤物| 91成人国产在线观看| 91精品国产乱码久久久久久久久| 亚洲最大福利视频网| 久久福利视频导航| 一本一道久久a久久精品逆3p| 国产精品专区h在线观看| 在线观看精品自拍私拍| 欧美日韩在线看| 国产成人精彩在线视频九色| 久久精品人人做人人爽| 日韩精品亚洲精品| 久久亚洲精品一区| 日韩国产在线播放| 爽爽爽爽爽爽爽成人免费观看| 国产精品久久久久久网站| 九九久久久久久久久激情| 国产精品自拍网| 色婷婷**av毛片一区| 精品一区二区三区四区在线| 一区二区欧美久久| 国产精品一区二区久久久| 国产a级全部精品| 久久久久久这里只有精品| 亚洲精品视频在线播放| 亚洲第一综合天堂另类专| 欧美成年人在线观看| 91影视免费在线观看| 久久在线免费观看视频| 日韩中文有码在线视频| 91精品国产91久久久久久| 久久中文字幕视频| 91成人在线视频| 亚洲字幕一区二区| 欧美精品在线看| 国产精品欧美日韩一区二区| 日本aⅴ大伊香蕉精品视频| 亚洲大胆美女视频| 日本欧美中文字幕| 欧美极度另类性三渗透| 91亚洲人电影| 亚洲欧美日韩一区二区在线| 国产91免费观看| 亚洲男人天堂久| 国产伦精品一区二区三区精品视频| 亚洲成人亚洲激情| 欧美视频不卡中文| 亚洲福利小视频| 精品国产精品三级精品av网址| 日本一区二区在线免费播放| 久久久国产一区二区三区| 97婷婷大伊香蕉精品视频| 中文字幕久热精品在线视频| 日韩欧美中文字幕在线播放| 2020国产精品视频| 亚洲性视频网址| 欧美日韩激情视频8区| 国产成人精品久久亚洲高清不卡| 亚洲热线99精品视频| 日韩电影中文 亚洲精品乱码| 国产日韩欧美另类| 欧美性xxxx极品hd欧美风情| 国产91ⅴ在线精品免费观看| 在线播放亚洲激情| 欧美精品免费播放| 免费91麻豆精品国产自产在线观看| 亚洲aaaaaa| 原创国产精品91| 亚洲精品自拍偷拍| 国产99久久精品一区二区 夜夜躁日日躁| 亲爱的老师9免费观看全集电视剧| 精品久久久一区二区| 91地址最新发布| 欧美专区第一页| 国产高清视频一区三区| 国产视频自拍一区| 国产一区二区三区免费视频| 中文字幕九色91在线| 国产日韩精品一区二区| 日韩电影大片中文字幕| 亚洲加勒比久久88色综合| 青青青国产精品一区二区| 91色琪琪电影亚洲精品久久| 国产97在线|日韩| 中文字幕av一区二区| 亚洲天堂av图片| 自拍偷拍亚洲区| 久久久国产精品视频| 欧美激情综合色综合啪啪五月| 欧美黑人xxxⅹ高潮交| 国产成人av网| 国产精品精品久久久| 亚洲男人的天堂在线| 精品久久久av| 亚洲欧洲xxxx| 懂色av中文一区二区三区天美| 国产精品尤物福利片在线观看| 日韩高清电影好看的电视剧电影| 欧美猛男性生活免费| 欧美性猛交xxxx免费看| 欧美国产极速在线| 色www亚洲国产张柏芝| 国产一区二区色| 黑人精品xxx一区| 欧美黑人xxx| 亚州国产精品久久久| 欧美三级欧美成人高清www| 亚洲japanese制服美女| 91欧美精品午夜性色福利在线| 正在播放欧美一区| 伊人伊成久久人综合网站| 精品国产欧美一区二区三区成人| 国产成人一区二区| 国产一级揄自揄精品视频| 欧美极品少妇xxxxⅹ裸体艺术| 久久99精品国产99久久6尤物| 亚洲美女在线视频| 国产精品久久久久久影视| 91网站在线免费观看| 国产视频久久久久| 国产精品久久久久久久久久久不卡| 免费不卡欧美自拍视频|