java emf 转jpg_JAVA读取EMF文件并转化为PNG,JPG,GIF格式
主要思路: 使用EMFInputStream读取EMF文件,然后使用EMFRenderer对象将EMF绘制到创建 好的空白的BufferedImage里面。这样就把EMF图片转化为Java中的BufferedImage对 象,然后可以重新保存为Java 2D支持图像格式如PNG或者JPG等。 代码如下: [java] view pla
主要思路: 使用EMFInputStream读取EMF文件,然后使用EMFRenderer对象将EMF绘制到创建
好的空白的BufferedImage里面。这样就把EMF图片转化为Java中的BufferedImage对
象,然后可以重新保存为Java 2D支持图像格式如PNG或者JPG等。
代码如下:
[java] view plaincopy
import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import javax.imageio.ImageIO;
import javax.swing.JFrame;
import javax.swing.JPanel;
import org.freehep.graphicsio.emf.EMFInputStream;
import org.freehep.graphicsio.emf.EMFRenderer;
/**
* download the third-party libraries here:
* http://java.freehep.org/vectorgraphics/index.html
*
* @author gloomyfish
*
*/
public class EMFReader {
public static void main(String[] args) {
try {
EMFInputStream inputStream = new EMFInputStream(new FileInputStream("D:\\export.emf"), EMFInputStream.DEFAULT_VERSION);
System.out.println("height = " + inputStream.readHeader()。getBounds()。getHeight());
System.out.println("widht = " + inputStream.readHeader()。getBounds()。getWidth());
// headerInfo of bitmap API always tell a lie, could not get
// correct width and height
// BitmapInfoHeader headerInfo = new BitmapInfoHeader(inputStream);
// System.out.println("Big Error on reading emf format picture");
EMFRenderer emfRenderer = new EMFRenderer(inputStream);
// create buffered image object from EMF render
final int width = (int)inputStream.readHeader()。getBounds()。getWidth();
final int height = (int)inputStream.readHeader()。getBounds()。getHeight();
System.out.println("widht = " + width + " and height = " + height);
final BufferedImage result = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);
Graphics2D g2 = (Graphics2D)result.createGraphics();
emfRenderer.paint(g2);
// write it as png/jpg/gif, up to you!!!
File outputfile = new File("D:\\result.png");
ImageIO.write(result, "png", outputfile);
// display it www.heatpress123.net
JPanel resultPanel = new JPanel() {
/**
*
*/
private static final long serialVersionUID = 1L;
public void paintComponent(Graphics g) {
super.paintChildren(g);
Graphics2D g2 = (Graphics2D)g;
g2.drawImage(result, 0, 0, width, height, null);
}
};
JFrame ui = new JFrame("EMF Reader");
ui.getContentPane()。setLayout(new BorderLayout());
ui.getContentPane()。add(resultPanel, BorderLayout.CENTER);
ui.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
ui.setSize(new Dimension(width+20, height+40));
ui.setVisible(true);
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
java emf 转jpg_JAVA读取EMF文件并转化为PNG,JPG,GIF格式相关推荐
- JAVA读取EMF文件并转化为PNG,JPG,GIF格式
JAVA读取EMF文件并转化为PNG,JPG,GIF格式 使用第三方库下载地址为:http://java.freehep.org/vectorgraphics/index.html 主要思路: 使用E ...
- java读取emf文件并规定大小_JAVA读取EMF文件并转化为PNG,JPG,GIF格式.pdf
您所在位置:网站首页 > 海量文档  > 计算机 > Java JAVA读取EMF文件并转化为PNG,JPG,GIF格 ...
- Java的marven工程读取resources文件,并打可执行的jar
Java的maven工程读取resources文件,并打可执行的jar 文章目录 Java的maven工程读取resources文件,并打可执行的jar 如何读取resources文件 maven如何 ...
- R读取json文件并转化为dataframe
R读取json文件并转化为dataframe 目录 R读取json文件并转化为dataframe R读取json文件 把json转为dataframe
- JAVA实现环形缓冲多线程读取远程文件
2019独角兽企业重金招聘Python工程师标准>>> 如果用HttpURLConnection类的方法打开连接,然后用InputStream类获得输入流,再用BufferedInp ...
- java wav 波形_java读取wav文件(波形文件)并绘制波形图的方法
本文实例讲述了java读取wav文件(波形文件)并绘制波形图的方法.分享给大家供大家参考.具体如下: 因为最近有不少网友询问我波形文件读写方面的问题,出于让大家更方便以及让代码能够得到更好的改进,我将 ...
- java xml 反射_Java 读取XML文件以及Java 的反射机制实现
Java 读取XML文件以及Java 的反射机制实现 代码部分 import java.io.File; import javax.xml.parsers.DocumentBuilder; impor ...
- java classpath 遍历_Java 读取JAR文件信息
Java 读取JAR文件信息 为什么想到读取JAR文件的信息 查看spring 资源处理,查找多个资源classpath*,会去寻找jar包中的内容,因此会出现读取jar包中的文件或者读取文件夹中的文 ...
- Java使用GeoTools轻松读取shapefile文件内容
日常GIS开发中难免会将一些shapefile文件数据读取存入数据库中,很多人第一想到的就是使用GeoTools操作和显示地图的开源Java 代码库. 生活捉弄人,因为项目需要对于从来没有做过GIS相 ...
- python 读取excel文件,并读成数据框格式输出
pandas直接读取 import pandas as pd df = pd.read_excel('/path/file.xlsx' ) sheet_name: str, int, list, or ...
最新文章
- EOS账户系统(4)账户权限分级
- QT的QProxyStyle类的使用
- Centos6.6安装之后调优
- 我今天对JavaFX的了解
- linux 下载mysql5.7.22
- Kaggle新赛 | HuBMAP: 识别人体肾脏组织图像中的肾小球~总奖金 6 万美金
- 还你一个干净清爽的Windows系统--win7重装小记
- POJ3264 Balanced Lineup【线段树】
- php自动提交百度收录,wordpress站点如何自动提交百度收录
- 雨听|生成mac风格代码块
- echarts版本升级导致Chinamap渲染报错问题(vue2)
- 计算机虚拟仿真专业,计算机虚拟仿真实验教学中心
- java技术cad转图片,怎么把原有的cad文件转换成图片格式?快速把cad转jpg的技巧...
- 阿里巴巴矢量字体转Image图片(建议收藏)
- c# 角度和弧度的转换
- 操作系统 银行家算法 安全性检查
- 用户情感可视化分析——天池竞赛
- 软件测试-软件及分类
- 紅米android os,红米7A 魔趣OS 安卓10 纯净完美 原生极简 纯净推荐
- 阿里巴巴Java开发手册github地址