openflashchart保存图片(For JAVA)
来源:互联网 发布:java防重复提交 编辑:程序博客网 时间:2024/05/21 07:14
最近领导要求把flash生成的图表存成图片,使用的是openflashchart,百度后才发现本身就有导出图片功能(孤陋寡闻了-_-!!)。
openflashchart导出的是BASE64编码的字符串,如果要保存文件,这就需要用后台进行解码,然后再保存。
话不多说,上代码:
<script type="text/javascript" src="js/swfobject.js"></script>
<div id="mychart"></div>
<script>
function show_swf(AreaStr){
swfobject.embedSWF(
"charts/open-flash-chart-new.swf",
"mychart",
330,
120,
"9.0.0",
"charts/expressinstall.swf",
{"data-file":"PriceString.zhtml?Areaname="+AreaStr},
{"wmode" : "transparent"});
}
//抓图
OFC = {};
OFC.jquery = {
name: "jQuery",
version: function(src) { return $('#' + src)[0].get_version() },
rasterize: function(src, dst) { $('#' + dst).replaceWith(OFC.jquery.image(src)) },
image: function(src) { return "<img src='data:image/png;base64," + $('#' + src)[0].get_img_binary() + "' />" },
popup: function(src) {
var img_win = window.open('', 'Image')
with (img_win.document) {
write('<html><head><title>Tipsdoo Chart Report Image</title></head><body>' + OFC.jquery.image(src) + '</body></html>')
}
img_win.document.close();
}
}
if (typeof (Control == "undefined")) { var Control = { OFC: OFC.jquery} }
function save_image() {
$.ajax({
type:"POST",
url:"SaveImage.Base64ToImage",
data:"imgstr="+$('#mychart')[0].get_img_binary(),
success:function(re){
}
});
//OFC.jquery.popup('mychart')
}
function moo() { alert(99); };
</script>
<input type="button" name="btncopy" onclick="OFC.jquery.rasterize('mychart', 'ImagePanel');save_image();" value="生成图片" />
后台代码:
import java.io.FileOutputStream;
import java.io.OutputStream;
import java.util.Date;
import sun.misc.BASE64Decoder;
public void Base64ToImage(String ImageStr){
//对字节数组字符串进行Base64解码并生成图片
if (ImageStr == null) //图像数据为空
return;
BASE64Decoder decoder = new BASE64Decoder();
try
{
//Base64解码
byte[] b = decoder.decodeBuffer(ImageStr);
for(int i=0;i<b.length;++i)
{
if(b[i]<0)
{//调整异常数据
b[i]+=256;
}
}
//生成jpeg图片
String imgFilePath = "c:\\abc.png";//新生成的图片
OutputStream out = new FileOutputStream(imgFilePath);
out.write(b);
out.flush();
out.close();
}
catch (Exception e)
{
return;
}
}
- openflashchart保存图片(For JAVA)
- arcobject for java 将图层保存为图片
- OpenFlashChart
- OpenFlashChart将FLASH导出成图片
- Java MongoDB 保存图片
- java--打开图片--显示图片--保存图片
- java 根据网络地址保存图片
- openflashchart使用
- openflashchart使用
- OpenFlashChart初学
- Qt for android 截屏、Qml保存图片到本地
- OpenCV for Python [1].图片读入、显示、保存
- Java中将组件保存成图片
- java 将组件保存为图片
- java 读取并保存excel中的图片
- imgareaselect+java实现图片裁剪保存
- java图片保存在xml里
- Java中将图片保存到数据库中
- Android插件式开发备忘
- TCP协议难点全景解析
- PV操作
- Java中String常见的7种用法
- Smack:处理传入的Packet
- openflashchart保存图片(For JAVA)
- u3d android 优化
- 运行时静态联编
- 在jquery中,让ajax执行完后再往下执行
- yum本地安装
- 处理器怎样访问内存
- delegate
- [朝花夕拾]一个菜鸟从高一到大二的作品整理
- [ACM - 深度优先搜索]Oil Deposits