文件名称:Java实现图片透明效果.rar
文件大小:155KB
文件格式:RAR
更新时间:2022-07-30 12:28:32
Java源码-图形操作
Java实现图片透明效果,从演示截图可看到,上层图片与下层图片互相重叠,也就是上层图片透明了,看到了下层以的图片,具体的代码实现: public class HalfTransparentImageDemo extends JFrame { private Container content = getContentPane(); //获得窗口的容器 private JSlider jSlider = new JSlider(JSlider.HORIZONTAL,0,100,75); //改变图像的透明度 DisplayPanel displayPanel = new DisplayPanel(); //显示图形面板 public HalfTransparentImageDemo() { super("半透明图片"); //调用父类构造器 jSlider.setPaintTicks(true); //绘制标志位 jSlider.setMajorTickSpacing(25); //设置标志尺寸 jSlider.setMinorTickSpacing(5); jSlider.setPaintLabels(true); //绘制出数字 jSlider.setBorder(new TitledBorder(BorderFactory.createEmptyBorder(), "图像的透明度(%)")); //设置边框 jSlider.addChangeListener(new ChangeListener() { //滑动条jSlider事件处理 public void stateChanged(ChangeEvent ce) { float alpha =((float) ((JSlider) ce.getSource()).getValue()) / 100; displayPanel.alpha = alpha; //改变图像的透明度 displayPanel.repaint(); //重绘displayPanel } g2d.drawImage(bufImage1, 0, 0, this); //在图形环境绘制缓冲区图像1 g2d.drawString("Destination",5,20); //绘制文字 int compositeRule = AlphaComposite.SRC_OVER; //源排斥目标法合成规则 AlphaComposite alphaComposite=AlphaComposite.getInstance(compositeRule,alpha); //创建AlphaComposite对象 g2d.setComposite(alphaComposite); //设置图形环境的合成方式 g2d.drawImage(bufImage2, 0, 0, this); //在图形环境绘制缓冲区图像2 g2d.drawString("Source",150,20); //绘制文字 }
【文件预览】:
codesc.net
----Java半透明图片()
--------girl.gif(16KB)
--------HalfTransparentImageDemo.java(3KB)
--------48-1.bmp(264KB)
--------HalfTransparentImageDemo$DisplayPanel.class(2KB)
--------48-2.bmp(264KB)
--------HalfTransparentImageDemo$1.class(890B)
--------back.jpg(13KB)
--------HalfTransparentImageDemo.class(2KB)