导航:首页 > 编程语言 > java后台生成图片

java后台生成图片

发布时间:2023-09-16 16:26:08

『壹』 如何用java整合echarts生成饼图

首先要把所需的js和swf文件导入进去

//后台拼图标所需xml
StringBufferoutXml=newStringBuffer();//任务列表xml字符串
@Action("/task/loadMyTaskPercentXml")
()
{
HttpServletResponseres=ServletActionContext.getResponse();
res.setHeader("Cache-Control","no-store");
res.setHeader("Pragma","no-cache");
res.setDateHeader("Expires",0);
res.setContentType("text/xml;charset=GBK");
PrintWriterout=res.getWriter();
StringBufferoutXml=newStringBuffer(
"<?xmlversion="1.0"encoding="GBK"?> ");
outXml
.append("<chartbaseFontSize='12'caption='任务统计'subcaption=''yAxisMinValue='51650.1'yAxisMaxValue='71118.3'xaxisname='日期'yaxisname='数量'hovercapbg='FFECAA'hovercapborder='F47E00'formatNumberScale='0'decimalPrecision='0'showvalues='1'numdivlines='10'numVdivlines='0'shownames='1'rotateNames='1'>");
outXml.append(" ");
outXml.append("<setname='已完成任务(%)");
outXml.append("'value='"+s1.replace("%","")+"");
outXml.append("'/>");
outXml.append(" ");
outXml.append("<setname='未完成任务(%)");
outXml.append("'value='"+s2.replace("%","")+"");
outXml.append("'/>");
outXml.append(" ");
outXml.append("</chart> ");
out.print(outXml.toString());
out.flush();
out.close();
returnnull;
}
在后台进行拼装xml,并且返回到页面
<divstyle="display:none"id="taskListGraph">${outXml}</div>
<scripttype="text/javascript">
vartext=document.getElementById("taskListGraph").innerHTML
varchart2=newFusionCharts("${base}/swf/Bar2D.swf?ChartNoDataText=暂无数据&XMLLoadingText=正在载入数据,请稍候","chart02","610","276");
chart2.setDataXML(text);
chart2.render('jdbox');
chart2.addParam("wmode","Opaque");
</script>
这样图就生成好了!

『贰』 用java完成图片多张批量上传的功能,还有就是后台的应该怎么处理上传的照片。

/*
*图片上传参数
*/
private File[] images;
private String[] imagesFileName;
private String[] imagesContentType;
加get set方法

req=ServletActionContext.getRequest();
//增加商品字段到数据库
Proct proct=new Proct();
ProctCategory proctCategory=null;
ProctCategoryBiz pcb=new ProctCategoryBizImpl();
System.out.println("third is:"+third_id+"ok");
if(third_id.equals("")){
proctCategory=pcb.getCategory(Integer.parseInt(second_id));
}else{
proctCategory=pcb.getCategory(Integer.parseInt(third_id));
}
proct.setCategory(proctCategory);
proct.setName(name);
proct.setPrice(Double.valueOf(price));
proct.setStock(Integer.parseInt(stock));
//上传图片到服务器
String fileType = null;
String fileName = "";
if(pb.addProct(proct)){
for (int i = 0; i < images.length; i++) {
fileType = imagesFileName[i].substring(imagesFileName[i]
.lastIndexOf("."));
fileName = (new Date().getTime() + i + 1) + fileType;
File imageFile = new File(ServletActionContext.getServletContext()
.getRealPath("/files")
+ "/" + fileName);
(images[i], imageFile);
addImages("files/"+fileName);
System.out.println("路径"+imageFile);
}
req.setAttribute("msg", "商品添加成功!");
return "success";
}else{
req.setAttribute("msg", "商品添加失败!");
return "input";
}

『叁』 将html5页面上的div转化为图片,然后提交给后台java保存图片到指定路径

div 转化成图片?怎么会有这个要求,很奇怪的,正常来讲,一般是会有将canvas转成图版片的。

div转成图片实在没有必要权,canvas 是有方法可以直接转换成图片的

functionconvertCanvasToImage(canvas){
varimage=newImage();
image.src=canvas.toDataURL("image/png");
returnimage;
}

转换代码如上

『肆』 java怎么从数据库里获得动态数据生成统计图

我这个是使用的echarts的饼图,如果需要使用到其他的图形,可以在echarts的官网上面去找找,上面各种的图都有例子

option = {

title : {

//图中2的位置

text: '某站点用户访问来源',

subtext: '纯属虚构',

x:'center'

},

tooltip : {

trigger: 'item',

formatter: "{a} <br/>{b} : {c} ({d}%)"

},

legend: {

orient: 'vertical',

left: 'left',

data: ['直接访问','邮件营销','联盟广告','视频广告','搜索引擎']//图中1的位置

},

series : [ //图中3的位置

{

name: '访问来源',

type: 'pie',

radius : '55%',

center: ['50%', '60%'],

data:[

//这下面就是你从数据库中查询的结果

{value:335, name:'直接访问'},

{value:310, name:'邮件营销'},

{value:234, name:'联盟广告'},

{value:135, name:'视频广告'},

{value:1548, name:'搜索引擎'}

],

itemStyle: {

emphasis: {

shadowBlur: 10,

shadowOffsetX: 0,

shadowColor: 'rgba(0, 0, 0, 0.5)'

}

} }]};


数据具体怎么从后台传送到前台来,楼主应该知道的吧,我这儿就不说了,望采纳!

阅读全文

与java后台生成图片相关的资料

热点内容
wps如何扫描文件 浏览:370
微信收费电影网站系统 浏览:62
佛山哪里学编程好 浏览:389
不同环境配置文件分支管理 浏览:663
电脑显示pdf文件不是一个有效的 浏览:391
demo1js下载 浏览:304
java安卓 浏览:411
傲剑2刷充值工具 浏览:340
电子秤程序流程图 浏览:225
qq发过来的文件如何保存到桌面 浏览:701
win10配置ini文件 浏览:286
魅族18原装数据线是多少A的 浏览:752
数据块怎么编程 浏览:437
linux读取文件顺序 浏览:808
c语言翻译代码 浏览:435
苹果怎么看联系人在哪个文件夹 浏览:501
数控编程中m91代表什么意思 浏览:273
星球庄园这款app怎么样 浏览:615
红头文件内容什么字体 浏览:344
编程猫怎么上下拖动 浏览:115

友情链接