jfreechart生成可嵌入html中的base64
时间: 2024-02-11 11:08:19 浏览: 116
在Hibernate+Spring+SpringMVC中集成JfreeChart
您可以使用 JFreeChart 库中的 ChartUtilities 类来将生成的图表转换为 base64 编码,并将其嵌入 HTML 中。以下是一个示例代码片段:
```java
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import org.jfree.chart.ChartUtilities;
import org.jfree.chart.JFreeChart;
import org.apache.commons.codec.binary.Base64;
public class ChartToBase64 {
public static String chartToBase64(JFreeChart chart) throws IOException {
ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
ChartUtilities.writeChartAsPNG(outputStream, chart, 500, 300); //设置图表的宽度和高度
byte[] bytes = outputStream.toByteArray();
outputStream.close();
return Base64.encodeBase64String(bytes);
}
}
```
使用该方法,您可以将生成的图表转换为 base64 编码,并将其嵌入 HTML 中的 `<img>` 标签。例如:
```html
<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADICAYAAACt..."
alt="My chart"/>
```
其中 `data:image/png;base64,` 告诉浏览器图像数据以 base64 编码的方式呈现,后面的字符串则是经过 base64 编码的图像数据。
阅读全文