问题描述
各位大神,救救小弟。
解决方案
解决方案二:
Graphics画虚框,然后响应MouseMove事件
解决方案三:
直接去百度搜,有源码。
解决方案四:
我收了有画框的,没找到拖拽的啊谁能给找找急啊
解决方案五:
引用3楼feitianasdf的回复:
我收了有画框的,没找到拖拽的啊谁能给找找急啊
响应MouseMove事件,在里面变换框的Location。
解决方案六:
就这种可以拖拽的框?
解决方案七:
嗯,是的。大神能给个代码吗,
解决方案八:
实现图片上传在线裁剪示例//引入Jcrop插件所需的js文件及css样式<scripttype="text/javascript"src="js/jquery.pack.js"></script><scripttype="text/javascript"src="js/jquery.Jcrop.pack.js"></script><linkrel="stylesheet"href="css/jquery.Jcrop.css"type="text/css"/>//调入jacascript程序实施裁剪<scripttype="text/javascript">$(function(){$('#oImage').Jcrop({boxWidth:520,boxHeight:330,onChange:showCoords,onSelect:showCoords});});//当选择、改变选区时都执行showCoords函数functionshowCoords(c){$("#txtX").val(c.x);//得到选中区域左上角横坐标$("#txtY").val(c.y);//得到选中区域左上角纵坐标$("#txtW").val(c.w);//得到选中区域的宽度$("#txtH").val(c.h);//得到选中区域的高度}functioncheckCoords(){vardefaulturl=document.getElementById("oImage").src;defaulturl=defaulturl.substring(defaulturl.lastIndexOf("/")+1);if(defaulturl=="default1.jpg"){alert("请上传图片");returnfalse;}//codego.net/tags/11/1/else{if(parseInt($('#txtH').val())&&parseInt($('#txtW').val())){sendImg();returntrue;}else{alert("请设置裁剪区域");returnfalse;}}};functionsendImg(){varp=document.getElementById("oImage").src;varx=document.getElementById("txtX").value;vary=document.getElementById("txtY").value;varw=document.getElementById("txtW").value;varh=document.getElementById("txtH").value;varow=222;varoh=300;varrate=w/h;if(rate>1)//选区的宽大于高{document.getElementById("imgCreat").width=ow;document.getElementById("imgCreat").height=ow/rate;}elseif(rate<1)//选区的高大于宽{document.getElementById("imgCreat").width=oh*rate;document.getElementById("imgCreat").height=oh;}elseif(rate==1){document.getElementById("imgCreat").width=222;document.getElementById("imgCreat").height=222;}document.getElementById("imgCreat").src="Handler.ashx?p="+p+"&x="+x+"&y="+y+"&w="+w+"&h="+h+"&"+Math.random();}</script>//将裁剪图片保存到服务器上publicclassHandler:IHttpHandler{publicvoidProcessRequest(HttpContextcontext){intx=Convert.ToInt32(context.Request["x"]);inty=Convert.ToInt32(context.Request["y"]);intdropWidth=Convert.ToInt32(context.Request["w"]);intdropHeight=Convert.ToInt32(context.Request["h"]);stringoPath=Convert.ToString(context.Request["p"]);oPath=HttpContext.Current.Server.MapPath("UpLoad")+"//"+System.IO.Path.GetFileName(oPath);context.Response.ContentType="image/jpeg";cutImage(oPath,x,y,dropWidth,dropHeight).WriteTo(context.Response.OutputStream);}//下载图片文件privatevoidDownLoadFile(stringpath){if(!File.Exists(path)){ClientScript.RegisterStartupScript(this.GetType(),"","<script>alert('文件不存在');</script>");}else{Response.Clear();Response.Charset="utf-8";Response.Buffer=true;this.EnableViewState=false;Response.ContentEncoding=System.Text.Encoding.UTF8;stringstr=System.Web.HttpUtility.UrlEncode(Path.GetFileName(path),System.Text.Encoding.UTF8);Response.AppendHeader("Content-Disposition","attachment;filename="+str);Response.ContentType="application/unknow";Response.WriteFile(path);Response.Flush();Response.Close();Response.End();}}//上传图片protectedvoidImageButton1_Click(objectsender,ImageClickEventArgse){if(FileUpload1.HasFile){stringserverUpload=Server.MapPath("UpLoad");if(!Directory.Exists(serverUpload)){Directory.CreateDirectory(serverUpload);}stringImgPath=FileUpload1.PostedFile.FileName;//文件全路径stringimgType=FileUpload1.PostedFile.ContentType;//获取上传文件的类型intImgLength=FileUpload1.PostedFile.ContentLength;//获取上传文件的大小(单位字节)stringnewImageName="HCDY"+DateTime.Now.Year+DateTime.Now.Month+DateTime.Now.Day+DateTime.Now.Hour+DateTime.Now.Minute+DateTime.Now.Second+DateTime.Now.Millisecond+Path.GetExtension(ImgPath);stringserverImgName=serverUpload+"\"+newImageName;if(imgType.Substring(0,5)=="image"){if(ImgLength<=1048576)//如果文件大小小于1M允许上传{FileUpload1.PostedFile.SaveAs(serverImgName);if(imgType.Substring(imgType.LastIndexOf("/")+1)=="gif"){System.Drawing.Imageimg=System.Drawing.Image.FromFile(serverImgName);FrameDimensionimgfrm=newFrameDimension(img.FrameDimensionsList[0]);intnframe=img.GetFrameCount(imgfrm);if(nframe>1){ClientScript.RegisterStartupScript(this.GetType(),"","<script>alert('只允许上传BMP|JPEG|PNG格式的图片,不允许上传动画');</script>");oImage.Src="";oImage.Width=0;oImage.Height=0;return;}}oImage.Height=330;oImage.Width=520;oImage.Src="UpLoad/"+newImageName;HyperLink1.NavigateUrl="UpLoad/"+newImageName;FileInfofi=newFileInfo(Server.MapPath("UpLoad/"+newImageName));HyperLink1.Text=newImageName+"[上传时间:"+fi.CreationTime+"]";}else{oImage.Src="";oImage.Width=0;oImage.Height=0;ClientScript.RegisterStartupScript(this.GetType(),"","<script>alert('上传图片不能超过1M');</script>");}}else{oImage.Src="";oImage.Width=0;oImage.Height=0;ClientScript.RegisterStartupScript(this.GetType(),"","<script>alert('图片格式不正确');</script>");}}else{oImage.Src="";oImage.Width=0;oImage.Height=0;ClientScript.RegisterStartupScript(this.GetType(),"","<script>alert('请选择需要上传的图片');</script>");}}//提示裁剪上传图片protectedvoidImageButton2_Click(objectsender,ImageClickEventArgse){if(Request.Cookies["url"].ToString().Length!=0){stringpath=Server.MapPath(Request.Cookies["url"].Value);DownLoadFile(path);}else{ClientScript.RegisterStartupScript(this.GetType(),"","<script>alert('请首先裁剪图片');</script>");}}
解决方案九:
有C#的吗?
解决方案十:
我以前写了一个本来想放上博客连接的不过很悲剧这两天那自己博客测试扫描工具vps被封了打不开不过代码貌似在某个程序里面有用到过所以就搞出来了代码一个400行左右不过这里贴不上来说文本太长所以我把代码放到了上面的图里面你把图标保存后最改成zip打开你就能看到一个文本文件哪里就是代码了你自己去看吧。。
解决方案十一:
引用9楼crystal_lz的回复:
我以前写了一个本来想放上博客连接的不过很悲剧这两天那自己博客测试扫描工具vps被封了打不开不过代码貌似在某个程序里面有用到过所以就搞出来了代码一个400行左右不过这里贴不上来说文本太长所以我把代码放到了上面的图里面你把图标保存后最改成zip打开你就能看到一个文本文件哪里就是代码了你自己去看吧。。
您好,能否方便把整个测试工程文件发个我,我学习c#不久,对这个类的使用不太了解,谢谢,我的邮件地址316455699@qq.com,再次谢谢
解决方案十二:
引用9楼crystal_lz的回复:
我以前写了一个本来想放上博客连接的不过很悲剧这两天那自己博客测试扫描工具vps被封了打不开不过代码貌似在某个程序里面有用到过所以就搞出来了代码一个400行左右不过这里贴不上来说文本太长所以我把代码放到了上面的图里面你把图标保存后最改成zip打开你就能看到一个文本文件哪里就是代码了你自己去看吧。。
兄弟来一份983909073@qq.com学习,谢谢
解决方案十三:
引用10楼xyz1950的回复:
您好,能否方便把整个测试工程文件发个我,我学习c#不久,对这个类的使用不太了解,谢谢,我的邮件地址316455699@qq.com,再次谢谢
早就不知道哪里去了--!。。。就连这控件的代码我都还得到处找一找更具上面截图的代码我猜应该是这样用的ctrl.Image=你要裁剪的图像if(ctrl.IsDrawed){Imageimg=ctrl.GetResultImage()//我记得函数名叫做这个来着}
引用11楼liqiexingxing的回复:
Quote: 引用9楼crystal_lz的回复:
我以前写了一个本来想放上博客连接的不过很悲剧这两天那自己博客测试扫描工具vps被封了打不开不过代码貌似在某个程序里面有用到过所以就搞出来了代码一个400行左右不过这里贴不上来说文本太长所以我把代码放到了上面的图里面你把图标保存后最改成zip打开你就能看到一个文本文件哪里就是代码了你自己去看吧。。兄弟来一份983909073@qq.com学习,谢谢
解决方案十四:
谁会用楼主这个类呀