当前位置:首页 » 编程语言 » java预览图片

java预览图片

发布时间: 2022-11-18 16:38:47

java如何实现上传图片到服务器,并预览图片

预览,不能简单的用<img>,然后把地址赋给src的,会出现浏览器不兼容问题
用css滤镜,像下面
document.getElementById("previewImg").style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod='scale',src='" + o.value + "')";
至于如何上传,struts2很方便的

⑵ 如何用java实现图片预览功能,求代码

使用两种不同的方法实现图片预览功能
Java代码
<BODY>
<script language="javascript">
function ShowImage(path){
document.all.divShow.filters.item("DXImageTransform.Microsoft.AlphaImageLoader").src = path;
}
function test(){
document.all.showimg.src=document.all.file1.value;
}
</script>
<INPUT style="Z-INDEX: 101; LEFT: 232px; POSITION: absolute; TOP: 272px" type="file"onchange="ShowImage(this.value)">
<div id="divShow" style="FILTER:progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=image);WIDTH:274px;HEIGHT:100px">
<input type="file" id="file1" onchange="test()"><br/>
<img id="showimg" style="width:200px;height:200px;">
</BODY>

⑶ java中多张blob图片如何在前台预览,要求这些图片同时显示,最好有代码

//您好,提问者:

比如您后台查询的是个List集合数组,前台接受。

List<String>list=newArrayList<String>();//import你懂的
list.add("D:\xx.jpg");//我不是查询数据库,手动添加图片地址,你也懂的
list.add("D:\xx1.jpg");
//这个时候如果struts2的话list是public有setget的话肯定前台能拿到
//如果不是就放到request.setAttribute("list",list);中

这下面是页面代码:

<%
Listlist=request.getAttribute("list");
for(inti=0;i<list.size();i++){%>
<imgsrc="<%=list.get(i)%>"/>
<%}%>

⑷ 用java写上传图片时,怎么实现预览功能

图片上传后在网页上直接读取上传后的地址进行预览,就是说这个时候图片已经上传到服务器了,如果要写的严谨一些,可以在预览后进行保存操作,如果不保存,则再写一条语句把上传上去的文件删除

⑸ java上传图片本地预览最好有例子

<divid="localImag">

<imgid="preview"alt="预览图片"runat="server"style="width:200px;height:65px"/>

</div>

<asp:FileUploadonkeydown="returnfalse"onkeyup="returnfalse"ID="FileUpload1"

runat="server"Width="300px"onchange="setImagePreview(this,localImag,preview,'200px','65px');"/>
///<summary>
///上传文件
///</summary>
///<paramname="MyFile"></param>
///<paramname="dirPath">文件存储路径(相对路径)</param>
///<paramname="errorMsg">错误信息</param>
///<returns>文件名</returns>
(FileUploadAttachFile,stringdirPath,outstringerrorMsg)
{
stringfileMsg=CheckUploadFile(AttachFile);
//如果返回信息不为""则返回错误信息
if(!"".Equals(fileMsg))
{
errorMsg=fileMsg;
return"";
}
//获取文件名称,包含后缀
stringFileName=AttachFile.FileName;
//获取文件扩展名
stringExtenName=System.IO.Path.GetExtension(FileName);
//将后缀名称大写
stringupExtenName=ExtenName.ToUpper();
//获取上传文件存储相路径
stringRelativePath=dirPath;
//获取上传文件存储绝对路径
stringSavePath=System.Web.HttpContext.Current.Server.MapPath(RelativePath);
//远程用户ip地址
stringipStr=System.Web.HttpContext.Current.Request.UserHostAddress;
//判断存放文件夹是否存在
if(!Directory.Exists(SavePath))
{
//创建存放文件夹
Directory.CreateDirectory(SavePath);
}
//拼接成上传文件保存名称
stringSaveFileName=ipStr+"_"+DateTime.Now.ToString("yyyyMMddHHmmss")+ExtenName;
//生成文件上传全路径
stringSaveFilePath=SavePath+"/"+SaveFileName;
//将excel文件上传至服务器路径下
AttachFile.SaveAs(SaveFilePath);
errorMsg="";
returnSaveFileName;
}
functionshowUploadImg(flag){
if(flag==1){
document.getElementById("img_upload").style.display='';
}
else{
document.getElementById("img_upload").style.display='none';
}
}
functionsetImagePreview(docObj,localImagId,imgObjPreview,width,height){
if(docObj.files&&docObj.files[0]){
//火狐下,直接设img属性
imgObjPreview.style.display='block';
imgObjPreview.style.width=width;
imgObjPreview.style.height=height;
//火狐7以上版本不能用上面的getAsDataURL()方式获取,需要一下方式
imgObjPreview.src=window.URL.createObjectURL(docObj.files[0]);
}
else{
//IE下,使用滤镜
docObj.select();
varimgSrc=document.selection.createRange().text;
//必须设置初始大小
localImagId.style.width=width;
localImagId.style.height=height;
//图片异常的捕捉,防止用户修改后缀来伪造图片
try{
localImagId.style.filter="progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale)";
localImagId.filters.item("DXImageTransform.Microsoft.AlphaImageLoader").src=imgSrc;
}
catch(e){
alert("您上传的图片格式不正确,请重新选择!");
returnfalse;
}
imgObjPreview.style.display='none';
document.selection.empty();
}
returntrue;
}

⑹ 用java将数据导出到wps表格中,怎么实现

一:页面图片显示预览:

1)如下图:

二:代码演示:

说明:执行操作时,请先引进导出excel表格的jar文件包。

找到导出按钮所执行的js方法,在java后天查看该方法的实现即可。

1)jsp代码:


[html]view plainprint?

<%@pagelanguage="java"import="java.util.*"pageEncoding="UTF-8"%>

<%@taglibprefix="s"uri="/struts-tags"%>

<%

Stringpath=request.getContextPath();

StringbasePath=request.getScheme()+"://"

+request.getServerName()+":"+request.getServerPort()

+path+"/";

%>

<html>

<head>

<basehref="<%=basePath%>">

<title>驾校合格率排名</title>

<linkhref="jsp/commonstyle/css/tabStyle.css"rel="stylesheet"type="text/css">

<linkrel="STYLESHEET"type="text/css"href="<%=basePath%>jsp/hgltj/js/tablesort.css">

<scripttype="text/javascript"src="<%=basePath%>jsp/system/common/js/publicColor.js"></script>

<scripttype="text/javascript"src="jsp/commonstyle/js/js/My97DatePicker/WdatePicker.js"defer="defer"></script>

<scripttype="text/javascript"src="<%=basePath%>jsp/hgltj/js/tablesort.js"></script>

<scriptlanguage="JavaScript">

functionload()

{

//根据分辨率设置表格大小

maxw=document.getElementById("maintb").offsetWidth;

if(maxw<824){//1024分辨率未展开

mainbox.width="98%";

}elseif(maxw<1013){//1024分辨率展开

mainbox.width="98%";

}elseif(maxw<1081){//1280分辨率未展开

mainbox.width="95%";

}elseif(maxw<1270){//1280分辨未展开

mainbox.width="95%";

}else{//1280以上分辨展开

mainbox.width="98%";

}

}

</script>

<script>

functionoverIt(){

varthe_obj=event.srcElement;

if(the_obj.tagName.toLowerCase()=="td"){

the_obj=the_obj.parentElement;

the_obj.oBgc=the_obj.currentStyle.backgroundColor;

the_obj.oFc=the_obj.currentStyle.color;

the_obj.style.backgroundColor='#4073C4';

the_obj.style.color='#ffffff';

the_obj.style.textDecoration='underline';

}

}

functionoutIt(){

varthe_obj=event.srcElement;

if(the_obj.tagName.toLowerCase()=="td"){

the_obj=the_obj.parentElement;

the_obj.style.backgroundColor=the_obj.oBgc;

the_obj.style.color=the_obj.oFc;

the_obj.style.textDecoration='';

}

}

functionserch(){

document.getElementById("formName").action="<%=basePath%>hgltj.action?method=getHglpm";

document.getElementById("formName").submit();

}

functiontbbt(){

varjzrq=document.getElementById("jzrqId").value;

//varjxmc=document.getElementById("jxmcId").value;

window.open('<%=basePath%>hgltj.action?method=getHglpmTb&tjjxkshgl.jzrq='+jzrq+'&tjjxkshgl.zt='+1,'','height=650,width=1250,top=150,left=200,toobar=no,menubar=no,scrollbars=yes,resizable=no,location=no,');

}

functionopenwd(){

document.getElementById("formName").action="<%=basePath%>hgltj.action?method=downJxhglPm";

document.getElementById("formName").submit();

}

</script>

</head>

<BODYonLoad="load()"style="background:url(images/cont_bg.gif);background-repeat:repeat-y">

<inputtype="hidden"name="method"value="getDriverInfoList"/>

<tableborder="0"width="100%"cellspacing="0"cellpadding="0"id="maintb">

<tr>

<tdalign="center">

<tablewidth="90%"border="0"cellspacing="0"cellpadding="0"id="mainbox"style="background:url(jsp/commonstyle/images/usermessage_02.gif);background-repeat:repeat-x;">

<!--宽度可变内容框-->

<tr>

<tdwidth="33"height="27"style="background:url(jsp/commonstyle/images/usermessage_01.gif);background-position:left;background-repeat:no-repeat;"></td>

<tdwidth="965"class="style1"><fontcolor="black">驾校合格率排名</font></td>

<tdwidth="14"height="27"style="background:url(jsp/commonstyle/images/usermessage_03.gif);background-position:right;background-repeat:no-repeat;"></td>

</tr>

<tr>

<tdcolspan="3">

<!--页面主体内容开始-->

<!--查询条件-->

<formaction=""name="formName"method="post"style="margin:0px"id="formName"theme="simple">

<tablewidth="100%"border="0"cellpadding="0"cellspacing="0"style="border-collapse:collapse;"id="tj"align="center">

<tralign="left">

<tdclass="tjbg1"style="text-align:left">

<!--<inputtype="hidden"id="method"name="method"value="getHglpm"/>-->

统计日期:

<inputtype="text"name="tjjxkshgl.jzrq"id="jzrqId"value="<s:propertyvalue="tjjxkshgl.jzrq"/>"onclick="WdatePicker({skin:'whyGreen',dateFmt:'yyyy-MM'})"/>

<!--驾校名称:

<s:selectid="jxmcId"name="tjjxkshgl.jxxh"value="tjjxkshgl.jxxh"list="schoolList"listKey="jxxh"listValue="jxmc"headerKey=""headerValue="--请选择--"theme="simple"></s:select>-->

<inputname="input"value="统计"type="button"class="normalbtn"onClick="serch()"style="margin-bottom:5px"/>

<inputname="input"type="button"value="合格率图表"onclick="tbbt()"class="normalbtn"style="margin-bottom:5px"/>

<inputid="Button1"type="button"value="导出"onclick="openwd();"class="normalbtn"style="margin-bottom:5px"/>

</td>

</tr>

</table><!--查询结果-->

</form>

<!--查询结果-->

<tablewidth="100%"border="0"cellpadding="4"cellspacing="1"bgcolor="#abcfff"id="cxjg"align="center">

<thead>

<trclass="tbtitle">

<tdwidth="4%"align="center"class="t1">名次</td>

<tdwidth="8%"align="center"class="t1">名称</td>

<tdclass="t1"width="5%"align="center">科目一</td>

<tdclass="t1"width="5%"align="center">科目二</td>

<tdclass="t1"width="5%"align="center">科目三</td>

<tdclass="t1"width="5%"align="center">平均合格率</td>

<tdclass="t1"width="5%"align="center">操作</td>

</tr>

</thead>

<s:iteratorid="jxhgl"value="jxhelpmList"status="st">

<trclass="changeColor"onMouseOver="overIt()"onMouseOut="outIt()"style="cursor:hand"align="center">

<td><s:propertyvalue="#st.index+1"/></td>

<td><s:propertyvalue="#jxhgl.jxmc"/></td>

<td><s:propertyvalue="#jxhgl.km1hgl"/></td>

<td><s:propertyvalue="#jxhgl.km2hgl"/></td>

<td><s:propertyvalue="#jxhgl.km3hgl"/></td>

<td><s:propertyvalue="#jxhgl.avghgl"/>%</td>

<td>

<ahref="javascript:"onclick="openWin('<%=basePath%>hgltj.action?method=getTbForJxxh&tjjxkshgl.jxxh=<s:propertyvalue="#jxhgl.jxxh"/>&tjjxkshgl.zt=1','',1250,750);">图表</a>

</td>

</tr>

</s:iterator>

</table>

</table>

</td>

</tr>

</table>

</body>

</html>


2)java代码演示:



[java]view plainprint?

/**

*驾校合格率导出excel图表

*/

//response.getOutputStream();//取得输出流

response.reset();//清空输出流

Stringtmptitle="驾校合格率排名";//标题

response.setHeader("Content-disposition","attachment;filename="+newString(tmptitle.getBytes(),"iso8859-1")+".xls");//设定输出文件头

response.setContentType("application/vnd.ms-excel");//定义输出类型

wbook=Workbook.createWorkbook(os);//建立excel文件

WritableSheetwsheet=wbook.createSheet(tmptitle,0);//sheet名称

//设置excel标题

//cellFormat.setBackground(Colour.AQUA);

cellFormat.setFont(wfont);

label.setCellFormat(cellFormat);

wsheet.addCell(label);

//wsheet.addCell(newLabel(0,0,tmptitle,wcfFC));

wsheet.setRowView(0,500);//第一行高度

wsheet.mergeCells(0,0,6,1);//合并单元格(第一列的第一行和第七列的第二行合并)

//wsheet.mergeCells(0,1,9,1);

//wsheet.mergeCells(0,2,0,4);

//wsheet.mergeCells(1,2,3,2);

//wsheet.mergeCells(4,2,6,2);

//wsheet.mergeCells(7,2,9,2);

wsheet.setColumnView(0,10);//宽度

wsheet.setColumnView(1,25);//宽度

wsheet.setColumnView(2,10);//宽度

wsheet.setColumnView(3,10);//宽度

wsheet.setColumnView(4,10);//宽度

wsheet.setColumnView(5,10);//宽度

//开始生成主体内容

wfont=newjxl.write.WritableFont(WritableFont.ARIAL,14,WritableFont.BOLD,false,UnderlineStyle.NO_UNDERLINE,Colour.BLACK);

wcfFC=newWritableCellFormat(wfont);

wsheet.addCell(newLabel(0,2,"名次",wcfFC));

wsheet.addCell(newLabel(1,2,"驾校名称",wcfFC));

wsheet.addCell(newLabel(2,2,"科目一",wcfFC));

wsheet.addCell(newLabel(3,2,"科目二",wcfFC));

wsheet.addCell(newLabel(4,2,"科目三",wcfFC));

wsheet.addCell(newLabel(5,2,"合格率",wcfFC));

intcount=jxhelpmList.size();

if(count>0){////判断集合是否不为0

TjJxkshgltjhgl=null;

for(inti=0;i<jxhelpmList.size();i++){

tjhgl=(TjJxkshgl)jxhelpmList.get(i);

wsheet.addCell(newLabel(0,i+3,(i+1)+""));

wsheet.addCell(newLabel(1,i+3,tjhgl.getJxmc()));

wsheet.addCell(newLabel(2,i+3,tjhgl.getKm1hgl()));

wsheet.addCell(newLabel(3,i+3,tjhgl.getKm2hgl()));

wsheet.addCell(newLabel(4,i+3,tjhgl.getKm3hgl()));

wsheet.addCell(newLabel(5,i+3,tjhgl.getAvghgl()));


}

⑺ java实现图片预览功能,可以显示缩列图,具有上下页的功能求技术支持

把图片按照规定的比例压缩,然后保存至FTP,列表读取缩略图,单击显示原图。

/**
*压缩图片方法一(高质量)
*@paramoldFile将要压缩的图片
*@paramwidth压缩宽
*@paramheight压缩高
*@paramsmallIcon压缩图片后,添加的扩展名(在图片后缀名前添加)
*@paramquality压缩质量范围:<i>0.0-1.0</i>高质量:<i>0.75</i>中等质量:<i>0.5</i>低质量:<i>0.25</i>
*@parampercentage是否等比压缩若true宽高比率将将自动调整
*/
publicstaticvoidcompressImage(StringoldFile,intwidth,intheight,StringsmallIcon,
floatquality,booleanpercentage){
try{
Filefile=newFile(oldFile);

//验证文件是否存在
if(!file.exists())
thrownewFileNotFoundException("找不到原图片!");

//获取图片信息
BufferedImageimage=ImageIO.read(file);
intorginalWidth=image.getWidth();
intorginalHeight=image.getHeight();

//验证压缩图片信息
if(width<=0||height<=0||!Pattern.matches("^[1-9]\d*$",String.valueOf(width))
||!Pattern.matches("^[1-9]\d*$",String.valueOf(height)))
thrownewException("图片压缩后的高宽有误!");

//等比压缩
if(percentage){
doublerate1=((double)orginalWidth)/(double)width+0.1;
doublerate2=((double)orginalHeight)/(double)height+0.1;
doublerate=rate1>rate2?rate1:rate2;
width=(int)(((double)orginalWidth)/rate);
height=(int)(((double)orginalHeight)/rate);
}

//压缩后的文件名
StringfilePrex=oldFile.substring(0,oldFile.lastIndexOf('.'));
StringnewImage=filePrex+smallIcon+oldFile.substring(filePrex.length());

//压缩文件存放位置
FilesavedFile=newFile(newImage);

//创建一个新的文件
savedFile.createNewFile();

//创建原图像的缩放版本
Imageimage2=image.getScaledInstance(width,height,Image.SCALE_AREA_AVERAGING);

//创建数据缓冲区图像
BufferedImagebufImage=newBufferedImage(width,height,BufferedImage.TYPE_INT_RGB);

//创建一个Graphics2D
Graphics2Dg2=bufImage.createGraphics();

//重绘图像
g2.drawImage(image2,0,0,width,height,null);
g2.dispose();

//过滤像素矩阵
float[]kernelData={
-0.125f,-0.125f,-0.125f,
-0.125f,2,-0.125f,-0.125f,
-0.125f,-0.125f};
Kernelkernel=newKernel(3,3,kernelData);

//按核数学源图像边缘的像素复制为目标中相应的像素输出像素
ConvolveOpcOp=newConvolveOp(kernel,ConvolveOp.EDGE_NO_OP,null);

//转换像素
bufImage=cOp.filter(bufImage,null);

FileOutputStreamout=newFileOutputStream(savedFile);
JPEGImageEncoderencoder=JPEGCodec.createJPEGEncoder(out);
JPEGEncodeParamparam=encoder.getDefaultJPEGEncodeParam(bufImage);

//设置压缩质量
param.setQuality(quality,true);
encoder.encode(bufImage,param);

out.close();
System.out.println(newImage);
}catch(Exceptione){
e.printStackTrace();
System.out.println("压缩失败!"+e.getMessage());
}
}

⑻ javaWeb如何实现想QQ空间图片预览的效果以及图片批量上传最好有实例

1:点击自定义。
2:点击右侧的新建模块→点击图片模块。
3:模块名称随便,用一个空格最好,图片地址上输入图片的地址,再点击“更多设置”,只设置图片的宽高度(以图片的大小而定)就可以了,背景、边框选择无,确定保存。
4:用鼠标调整一下图片的大小,让整个图片完全显示。
5:接着点击模块管理→把“互动”以上的模块前面的√全部去掉,然后再把需要显示的模块打√,这样“日志”、“留言”、“个人形象”或“音乐收藏”就显示在大图模块的上面了。确定保存。OK。

⑼ Java获取本地图片,怎么在浏览器实现预览,注意是多张图片,通过io流的方式,,,具体实现求大神指教。

windows有自带视频播放 音频 播放 图片查看的、是一个空间、你上网络搜搜看、我忘了、很久没弄了、很简单的 传一个路劲就ok、路劲你就使用<input type="file" >获取

⑽ java拼图小游戏怎么把预览图片放进去

写过一个类似的

可以使用JLabel里放入html代码来缩放图片 ,(不推荐, swing对html支持不够完美)

可以通过缩放图片来得到缩略图,来使用.但是比较浪费内存和cpu资源

推荐 节省系统资源的方法,两张图片,一张小图当预览图(用JLabel显示出来),一张大图.

为了让玩家更好的观察图片,可以在开始之前,完整显示图片. 当点击开始后才打乱顺序

热点内容
追剧脚本 发布:2025-01-15 07:00:39 浏览:444
c语言字符串库函数 发布:2025-01-15 06:54:49 浏览:524
c语言的工作 发布:2025-01-15 06:50:50 浏览:520
口语交际访问 发布:2025-01-15 06:44:13 浏览:327
编程少儿学习 发布:2025-01-15 06:39:03 浏览:502
服务器搭建怎么设置 发布:2025-01-15 06:39:01 浏览:151
格鲁尔要什么配置 发布:2025-01-15 06:26:56 浏览:855
linux下安装jdk 发布:2025-01-15 06:03:05 浏览:545
服务器拷数据到电脑 发布:2025-01-15 05:58:19 浏览:481
android的单例模式 发布:2025-01-15 05:50:55 浏览:928