黑马程序员java 图片添加水印
来源:互联网 发布:use女装知乎 编辑:程序博客网 时间:2024/05/17 03:00
package ekaiser.rong.frame;
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Font;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.GraphicsEnvironment;
import java.awt.Image;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.AdjustmentEvent;
import java.awt.event.AdjustmentListener;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;
import javax.swing.BorderFactory;
import javax.swing.Box;
import javax.swing.JButton;
import javax.swing.JCheckBox;
import javax.swing.JColorChooser;
import javax.swing.JComboBox;
import javax.swing.JFileChooser;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JScrollBar;
import javax.swing.JScrollPane;
import javax.swing.JTextField;
import javax.swing.filechooser.FileFilter;
public class NonstandardFrame extends JFrame {
//图片预览面板
privatePhotoPanel pane = null;
//预览滚动面板
privateJScrollPane scrollPane = null;
//上方的面板
private BoxboxNorth = null;
//下方的面板
private BoxboxSouth = null;
//图片地址文本框
privateJTextField imageFileText = null;
//打开图片按钮
privateJButton openFileButton = null;
//水印文字
privateJTextField text = null;
//字体大小文本框
privateJTextField fontSizeText = null;
//是否粗体
privateJCheckBox boldBox = null;
//是否斜体
privateJCheckBox italicBox = null;
//字体文本框
privateJComboBox fontBox = null;
//文字显示X坐标
privateJTextField pointXText = null;
//文字显示Y坐标
privateJTextField pointYText = null;
// 调色板
privateJColorChooser colorChooser = null;
//颜色按钮
privateJButton colorButton = null;
//透明度滑块
privateJScrollBar alphaBar = null;
//透明度文本框
privateJTextField alphaText = null;
//预览按钮
privateJButton previewButton = null;
//输出图片按钮
privateJButton outImagebutton = null;
//图片输入、输出选择框
privateJFileChooser fileChooser = null;
//缓冲图像
privateBufferedImage bufferedImage = null;
//导入的图片
privateImage image = null;
publicNonstandardFrame() {
super("图像水印小工具");
init();
getContentPane().add(boxNorth, BorderLayout.NORTH);
getContentPane().add(scrollPane);
getContentPane().add(boxSouth, BorderLayout.SOUTH);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setSize(800, 600);
setLocationRelativeTo(null);
setVisible(true);
}
private voidinit() {
pane = new PhotoPanel();
scrollPane = new JScrollPane(pane);
boxNorth = Box.createHorizontalBox();
boxSouth = Box.createHorizontalBox();
boxNorth.setBorder(BorderFactory.createEmptyBorder(5, 5, 5,5));
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Font;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.GraphicsEnvironment;
import java.awt.Image;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.AdjustmentEvent;
import java.awt.event.AdjustmentListener;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;
import javax.swing.BorderFactory;
import javax.swing.Box;
import javax.swing.JButton;
import javax.swing.JCheckBox;
import javax.swing.JColorChooser;
import javax.swing.JComboBox;
import javax.swing.JFileChooser;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JScrollBar;
import javax.swing.JScrollPane;
import javax.swing.JTextField;
import javax.swing.filechooser.FileFilter;
public class NonstandardFrame extends JFrame {