`
- 浏览:
172206 次
-
package demo;
import java.io.File;
import org.jfree.chart.JFreeChart;
import java.io.IOException;
import java.io.OutputStream;
import java.io.BufferedOutputStream;
import java.io.FileOutputStream;
import java.awt.image.BufferedImage;
import org.jfree.chart.encoders.ImageFormat;
import java.awt.Graphics2D;
import java.awt.*;
import java.awt.*;
import org.jfree.chart.encoders.ImageEncoder;
import org.jfree.chart.encoders.ImageEncoderFactory;
import javax.swing.JFrame;
import javax.imageio.ImageIO;
public class ToImg {
public ToImg() {
}
/** *//**
* Saves a chart to a file in JPEG format.
*
* @param file the file (<code>null</code> not permitted).
* @param quality the JPEG quality setting.
* @param chart the chart (<code>null</code> not permitted).
* @param width the image width.
* @param height the image height.
*
* @throws IOException if there are any I/O errors.
*/
public static void saveChartAsJPEG(File file,
float quality,
JFreeChart chart,
int width,
int height) throws IOException {
if (file == null) {
throw new IllegalArgumentException("Null 'file' argument.");
}
if (chart == null) {
throw new IllegalArgumentException("Null 'chart' argument.");
}
OutputStream out = new BufferedOutputStream(new FileOutputStream(file));
BufferedImage images = chart.createBufferedImage(width, height, null);
BufferedImage image = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);
Graphics2D g2 = image.createGraphics();
// draw(g2, new Rectangle2D.Double(0, 0, width, height), null, info);
g2.dispose();
writeBufferedImage(image, ImageFormat.JPEG, out, quality);
out.close();
}
public static void writeBufferedImage(BufferedImage image, String format,
OutputStream outputStream, float quality)
throws IOException {
ImageEncoder imageEncoder
= ImageEncoderFactory.newInstance(format, quality);
imageEncoder.encode(image, outputStream);
}
public static void main(String[] args) {
Robot robot = null;
try {
JFrame f = new Frame1();
f.setSize(500,600);
f.setVisible(true);
f.setDefaultCloseOperation(2);
BufferedImage image = new BufferedImage(500, 600, BufferedImage.TYPE_INT_RGB);
f.getContentPane().paint(image.getGraphics());
FileOutputStream out = new FileOutputStream("d:\\b.jpg");
ImageIO.write(image, "jpeg" , out);
out.close();
/** *//**
抓图
Robot robot = new java.awt.Robot();
BufferedImage image = robot.createScreenCapture(new Rectangle(100, 100));
ImageEncoder imageEncoder
= ImageEncoderFactory.newInstance(ImageFormat.JPEG, 100);
FileOutputStream out = new FileOutputStream("d:\\a.jpg");
imageEncoder.encode(taget, out);
}*/
}
catch (Exception ex) {
ex.printStackTrace();
}
}
}
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
Jigloo是另一个用于开发SWT/Swing应用的插件,它提供了一套工具和API,帮助开发者创建高性能的图形界面。 **18.4.2 搭建SWT开发环境** SWT的开发环境需要特殊的设置,包括安装必要的库文件和配置IDE(如Eclipse)...
"AWT/Swing 可视化eclipse插件"是一个专为Eclipse定制的工具,它集成了AWT和Swing组件的可视化编辑功能。通过这个插件,开发者可以直观地看到UI组件的布局,调整组件的位置、大小、属性,而无需手动编写复杂的布局...
- **Swing**:作为AWT的扩展,Swing提供了一个更加强大且灵活的组件集合,具有跨平台性,可以在不同的操作系统上保持一致的外观和行为。Swing组件通常比AWT组件更加美观,并且提供了更多的功能。 - **SWT (Standard ...
AWT的组件创建机制是基于本地窗口系统的,当创建一个AWT组件时,会对应生成一个本地窗口对象。 Swing是在AWT的基础上发展起来的,它提供了更丰富的组件集和更好的用户体验。Swing组件大多数是“轻量级”的,它们不...
在Java编程语言中,AWT(Abstract Window Toolkit)和Swing是用于构建图形用户界面(GUI)的基础组件。本文将探讨在Java学习过程中涉及到的一些关键知识点,包括图像处理、窗口布局、事件处理以及如何利用Apache POI...
【标题】"使用Velocity Swing制作的代码生成工具"是一个基于Java Swing UI框架和Velocity模板引擎开发的代码自动化生成工具。这个工具旨在帮助开发者快速生成符合特定模式的代码,减轻重复劳动,提高开发效率。 ...
【Java Swing UI编程】是Java桌面应用开发的重要组成部分,它提供了丰富的组件库来构建图形用户界面(GUI)。在Java编程技术09章节中,我们主要会学习如何利用Swing库来创建美观且功能齐全的用户界面。 首先,我们...
Java AWT(Abstract Window Toolkit)框架是Java早期用于创建图形用户界面(GUI)的基础库,它是Swing库的前身。本篇文章将详细讲解AWT框架中的核心概念、组件以及如何通过代码实现简单的图像显示。 首先,AWT是...
Swing界面开发工具源代码是Java开发者们设计和构建图形用户界面(GUI)的重要资源,尤其对于那些希望在他们的应用程序中创建美观且功能丰富的Swing界面的开发者来说,这是一个宝贵的工具。Swing库是Java标准版(Java...
这个名为"JAVA画图形学程序(论文+源代码).rar"的压缩包文件很可能包含了一个关于Java图形学的毕业设计项目,其中的论文部分会详细阐述相关理论和技术,而源代码部分则会展示实际的编程实现。 Java提供了多种库和API...
Java Swing 是Java GUI(图形用户界面)开发的一个库,它基于Java AWT(抽象窗口工具包)并提供了更丰富的组件和事件处理能力。在“JAVASWING多线程产生随机球”的项目中,开发者利用Swing创建了一个互动的应用程序...
总的来说,"JPEG图象生成器"结合了Java的图像处理、文件I/O和UI设计技术,提供了一个实用的工具,让用户能够自由创作并保存JPEG图像,同时也具备屏幕截图并保存为JPEG的功能。这个项目对于学习和理解Java图像处理和...
JFormDesigner是一个可视化编辑器,它允许开发者通过拖放方式设计和布局UI组件,而无需编写任何代码。该工具支持各种布局管理器,如FlowLayout、GridLayout、BorderLayout、 MigLayout等,使得界面设计变得简单易行...
Swing是Java编程语言中的一个图形用户界面(GUI)工具包,它是Java Foundation Classes (JFC)的一部分。这个“reference for swing and code generator demo”显然指向一个关于Swing使用和代码生成器演示的资源集合。...
Swing组件大全是一个深入探讨Java Swing库的资源,它涵盖了Swing提供的所有主要组件,以及如何将它们结合使用来创建功能丰富的图形用户界面(GUI)。Swing是Java Foundation Classes(JFC)的一部分,用于构建桌面...
对于一个用户友好的词云生成器,通常会有一个简单的用户界面供用户上传文件、选择参数(如颜色、布局、字体大小等)并预览结果。这可能使用JavaFX或Swing构建,提供按钮、文本框和文件选择对话框等交互元素。 **7. ...
本项目"JavaSwing实现飞机大战"是一个基于JavaSwing开发的经典游戏,它展示了如何利用JavaSwing组件来创建一个交互式的、具有图形界面的游戏。 在JavaSwing中,我们可以使用组件(如JFrame、JButton、JLabel等)来...