重庆分公司,新征程启航

为企业提供网站建设、域名注册、服务器等服务

用Java代码生成图片,java代码生成类图

跪求图片生成器java全代码,要求可以画图和获取屏幕并且能保存。拜托各位大神了

正好写了一个,给你看看哈

网站建设哪家好,找创新互联!专注于网页设计、网站建设、微信开发、微信小程序、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了蒲县免费建站欢迎大家使用!

import java.awt.*;

import java.awt.image.BufferedImage;

import java.io.File;

import java.util.Date;

import javax.imageio.ImageIO;

public class ScreenCapturer {

public static void main(String[] args) throws Exception{

Date date = new Date();

Robot rbt = new Robot();

BufferedImage bf =  rbt.createScreenCapture(new Rectangle(1440,900));  //这是屏幕分辨率  可以根据自己的屏幕修改

File file = new File("d://"+ date.toString().replace(" ","").replace(":","")+".jpg");  //这是保存路径D盘根目录

ImageIO.write(bf,"jpg",file);

System.out.println("截图成功!保存于D盘根目录下!时间:" + date.toString());

}

}

powerdesigner怎么用java代码生成类图

使用PowerDesigner软件逆向生成java类图的方法、步骤:1、打开PowerDesiger软件,点击文件-建立新模型,新建Obect-OrientedModel2、点击语言-ReverseEngineerJava,弹出反向生成类图设置窗口;3、在反向生成类图设置窗口中,选择ReverseEngineer,可以选择JavaFiles或JavaDirectories等,在这里我选择JavaDirectories;4、然后点击Add按钮添加目录,在这里我选择一个java源文件目录;5、点击确定,PowerDesigner会显示生成进度窗口,完成以后在PowerDesigner工作空间下会显示类图目录结构;6、到此便将选中的Java目录下的Java类文件生成了静态类结构,

java在生成图片的时候,让文字竖排展示,如何实现?

package honest.imageio;

import java.awt.Color;

import java.awt.Font;

import java.awt.Graphics;

import java.awt.image.BufferedImage;

import java.io.File;

import java.io.IOException;

import javax.imageio.ImageIO;

/**

* 图片操作类

* @author 

*/

public class ImageUtil {

private BufferedImage image;

private int width; // 图片宽度

private int height; // 图片高度

public ImageUtil(int width, int height) {

this.width = width;

this.height = height;

image = new BufferedImage(width, height, BufferedImage.TYPE_INT_ARGB);

}

/**

* 创建一个含有指定颜色字符串的图片

* @param message

*            字符串

* @param fontSize

*            字体大小

* @param color

*            字体颜色

* @return 图片

*/

public BufferedImage drawString(String message, int fontSize, Color color) {

Graphics g = image.getGraphics();

g.setColor(color);

Font f = new Font("宋体", Font.BOLD, fontSize);

g.setFont(f);

int len = message.length();

g.drawString(message, (width - fontSize * len) / 2,

(height + (int) (fontSize / 1.5)) / 2);

g.dispose();

return image;

}

/**

* 缩放图片

* @param scaleW

*            水平缩放比例

* @param scaleY

*            垂直缩放比例

* @return

*/

public BufferedImage scale(double scaleW, double scaleH) {

width = (int) (width * scaleW);

height = (int) (height * scaleH);

BufferedImage newImage = new BufferedImage(width, height,

image.getType());

Graphics g = newImage.getGraphics();

g.drawImage(image, 0, 0, width, height, null);

g.dispose();

image = newImage;

return image;

}

/**

* 旋转90度旋转

* @return 对应图片

*/

public BufferedImage rotate() {

BufferedImage dest = new BufferedImage(height, width,

BufferedImage.TYPE_INT_ARGB);

for (int i = 0; i  width; i++)

for (int j = 0; j  height; j++) {

dest.setRGB(height - j - 1, i, image.getRGB(i, j));

}

image = dest;

return image;

}

/**

* 合并两个图像

* @param anotherImage

*            另一张图片

* @return 合并后的图片,如果两张图片尺寸不一致,则返回null

*/

public BufferedImage mergeImage(BufferedImage anotherImage) {

int w = anotherImage.getWidth();

int h = anotherImage.getHeight();

if (w != width || h != height) {

return null;

}

for (int i = 0; i  w; i++) {

for (int j = 0; j  h; j++) {

int rgb1 = image.getRGB(i, j);

int rgb2 = anotherImage.getRGB(i, j);

Color color1 = new Color(rgb1);

Color color2 = new Color(rgb2);

// 如果该位置两张图片均没有字体经过,则跳过

// 如果跳过,则最后将会是黑色背景

if (color1.getRed() + color1.getGreen() + color1.getBlue()

+ color2.getRed() + color2.getGreen()

+ color2.getBlue() == 0) {

continue;

}

Color color = new Color(

(color1.getRed() + color2.getRed()) / 2,

(color1.getGreen() + color2.getGreen()) / 2,

(color1.getBlue() + color2.getBlue()) / 2);

image.setRGB(i, j, color.getRGB());

}

}

return image;

}

/**

* 保存图片int rgb1 = image.getRGB(i, j); int rgb2 = anotherImage.getRGB(i, j);

* rgb2 = rgb1  rgb2; image.setRGB(height - i, j, rgb2);

* @param filePath

*            图片路径

*/

public void save(String filePath) {

try {

ImageIO.write(image, "png", new File(filePath));

} catch (IOException e) {

e.printStackTrace();

}

}

/**

* 得到对应的图片

* @return

*/

public BufferedImage getImage() {

return image;

}

}

解析下这个生成图片的Java代码

1.调用"images"文件夹里的文件放在ImageIcon里显示2.在windows下面显示正常Java在图形处理时调用了本地的图形处理库。在利用Java作图形处理(比如:图片缩放,图片签名,生成报表)时,如果运行在windows上不会出问题。如果将程序移植到Linux/Unix上的时候有可能出现图形不能显示的错误。3.提示信息:"Can'tconnecttoX11windowserver"这是由于Linux的图形处理需要一个XServer服务器。(关于Linux的图形处理模式参考Tomcat的修改如下:打开%Tomcat_home%/bin/catalina.sh文件在文件的86%处,启动Tomcat的脚本中加上:-Djava.awt.headless=true/参考:"$_RUNJAVA"$JAVA_OPTS$CATALINA_OPTS/-Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS"-classpath"$CLASSPATH"/-Dcatalina.base="$CATALINA_BASE"/-Dcatalina.home="$CATALINA_HOME"/-Djava.io.tmpdir="$CATALINA_TMPDIR"/-Djava.awt.headless=true/org.apache.catalina.startup.Bootstrap"$@"start/"$CATALINA_BASE"/logs/catalina.out21if[!-z"$CATALINA_PID"];thenecho$!$CATALINA_PIDfifielif["$1"="stop"];then保存后,重新启动就可以处理图形了。

java如何生成颜色相间的条纹图片

这是简单的初步实现,你可以借鉴一下哈

package v01;

import javax.swing.*;

import java.awt.*;

public class ColorP extends JFrame {

public ColorP(){

this.add(new NewPanel());

}

public static void main(String[] args) {

ColorP frame = new ColorP();

frame.setTitle("Content");

frame.setSize(300, 150);

frame.setLocationRelativeTo(null);

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

frame.setVisible(true);

}

class NewPanel extends JPanel{//扩展JPanel

public NewPanel(){

}

protected void paintComponent(Graphics g){//运用画笔Graphics绘制

super.paintComponent(g);//添加画笔

int[] x = new int[4];

int[] y = new int[4];

for(int i = 0; i 10; i++){

x[0] = i * 40 ;y[0] = 0;

x[1] = x[0] + 40;y[1] = 0;

x[2] = 0;y[2] = (i+1) * 40;

x[3] = 0;y[3] = y[2] - 40 ;

if(i % 2 == 0)

g.setColor(Color.black);

else

g.setColor(Color.yellow);

g.fillPolygon(x, y, x.length);

}

}

}

}


文章名称:用Java代码生成图片,java代码生成类图
转载来于:http://cqcxhl.com/article/hojpgi.html

其他资讯

在线咨询
服务热线
服务热线:028-86922220
TOP