<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://jexp.ru/index.php?action=history&amp;feed=atom&amp;title=Java_Tutorial%2F2D_Graphics%2FAlphaComposite</id>
		<title>Java Tutorial/2D Graphics/AlphaComposite - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://jexp.ru/index.php?action=history&amp;feed=atom&amp;title=Java_Tutorial%2F2D_Graphics%2FAlphaComposite"/>
		<link rel="alternate" type="text/html" href="http://jexp.ru/index.php?title=Java_Tutorial/2D_Graphics/AlphaComposite&amp;action=history"/>
		<updated>2026-04-07T11:03:13Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://jexp.ru/index.php?title=Java_Tutorial/2D_Graphics/AlphaComposite&amp;diff=3520&amp;oldid=prev</id>
		<title> в 17:44, 31 мая 2010</title>
		<link rel="alternate" type="text/html" href="http://jexp.ru/index.php?title=Java_Tutorial/2D_Graphics/AlphaComposite&amp;diff=3520&amp;oldid=prev"/>
				<updated>2010-05-31T17:44:26Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Предыдущая&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Версия 17:44, 31 мая 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; style=&quot;text-align: center;&quot; lang=&quot;ru&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(нет различий)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
			</entry>

	<entry>
		<id>http://jexp.ru/index.php?title=Java_Tutorial/2D_Graphics/AlphaComposite&amp;diff=3521&amp;oldid=prev</id>
		<title>Admin: 1 версия</title>
		<link rel="alternate" type="text/html" href="http://jexp.ru/index.php?title=Java_Tutorial/2D_Graphics/AlphaComposite&amp;diff=3521&amp;oldid=prev"/>
				<updated>2010-05-31T15:25:22Z</updated>
		
		<summary type="html">&lt;p&gt;1 версия&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==  AlphaComposite.DST_IN ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import java.awt.AlphaComposite;&lt;br /&gt;
import java.awt.BorderLayout;&lt;br /&gt;
import java.awt.Canvas;&lt;br /&gt;
import java.awt.Color;&lt;br /&gt;
import java.awt.ruponent;&lt;br /&gt;
import java.awt.Container;&lt;br /&gt;
import java.awt.Graphics;&lt;br /&gt;
import java.awt.Graphics2D;&lt;br /&gt;
import java.awt.GridLayout;&lt;br /&gt;
import java.awt.event.ActionEvent;&lt;br /&gt;
import java.awt.event.ActionListener;&lt;br /&gt;
import java.awt.geom.Ellipse2D;&lt;br /&gt;
import java.awt.image.BufferedImage;&lt;br /&gt;
import javax.swing.JComboBox;&lt;br /&gt;
import javax.swing.JFrame;&lt;br /&gt;
import javax.swing.JLabel;&lt;br /&gt;
import javax.swing.JPanel;&lt;br /&gt;
import javax.swing.JSlider;&lt;br /&gt;
import javax.swing.event.ChangeEvent;&lt;br /&gt;
import javax.swing.event.ChangeListener;&lt;br /&gt;
public class AlphaCompositeDSTIN extends JFrame {&lt;br /&gt;
  public AlphaCompositeDSTIN() {&lt;br /&gt;
    getContentPane().add(new DrawingCanvas());&lt;br /&gt;
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);&lt;br /&gt;
    setSize(500,500);&lt;br /&gt;
    setVisible(true);&lt;br /&gt;
  }&lt;br /&gt;
  public static void main(String arg[]) {&lt;br /&gt;
    new AlphaCompositeDSTIN();&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
class DrawingCanvas extends JPanel{&lt;br /&gt;
  float alphaValue = 1.0f;&lt;br /&gt;
  int compositeRule = AlphaComposite.DST_IN;&lt;br /&gt;
  AlphaComposite ac;&lt;br /&gt;
  DrawingCanvas() {&lt;br /&gt;
    setSize(300, 300);&lt;br /&gt;
    setBackground(Color.white);&lt;br /&gt;
  }&lt;br /&gt;
  public void paint(Graphics g) {&lt;br /&gt;
    Graphics2D g2D = (Graphics2D) g;&lt;br /&gt;
    int w = getSize().width;&lt;br /&gt;
    int h = getSize().height;&lt;br /&gt;
    BufferedImage bi = new BufferedImage(w, h, BufferedImage.TYPE_INT_ARGB);&lt;br /&gt;
    Graphics2D big = bi.createGraphics();&lt;br /&gt;
    ac = AlphaComposite.getInstance(compositeRule, alphaValue);&lt;br /&gt;
    big.setColor(Color.red);&lt;br /&gt;
    big.drawString(&amp;quot;Destination&amp;quot;, w / 4, h / 4);&lt;br /&gt;
    big.fill(new Ellipse2D.Double(0, h / 3, 2 * w / 3, h / 3));&lt;br /&gt;
    big.setColor(Color.blue);&lt;br /&gt;
    big.drawString(&amp;quot;Source&amp;quot;, 3 * w / 4, h / 4);&lt;br /&gt;
    big.setComposite(ac);&lt;br /&gt;
    big.fill(new Ellipse2D.Double(w / 3, h / 3, 2 * w / 3, h / 3));&lt;br /&gt;
    g2D.drawImage(bi, null, 0, 0);&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  AlphaComposite.DST_OUT ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import java.awt.AlphaComposite;&lt;br /&gt;
import java.awt.BorderLayout;&lt;br /&gt;
import java.awt.Canvas;&lt;br /&gt;
import java.awt.Color;&lt;br /&gt;
import java.awt.ruponent;&lt;br /&gt;
import java.awt.Container;&lt;br /&gt;
import java.awt.Graphics;&lt;br /&gt;
import java.awt.Graphics2D;&lt;br /&gt;
import java.awt.GridLayout;&lt;br /&gt;
import java.awt.event.ActionEvent;&lt;br /&gt;
import java.awt.event.ActionListener;&lt;br /&gt;
import java.awt.geom.Ellipse2D;&lt;br /&gt;
import java.awt.image.BufferedImage;&lt;br /&gt;
import javax.swing.JComboBox;&lt;br /&gt;
import javax.swing.JFrame;&lt;br /&gt;
import javax.swing.JLabel;&lt;br /&gt;
import javax.swing.JPanel;&lt;br /&gt;
import javax.swing.JSlider;&lt;br /&gt;
import javax.swing.event.ChangeEvent;&lt;br /&gt;
import javax.swing.event.ChangeListener;&lt;br /&gt;
public class AlphaCompositeDSTOUT extends JFrame {&lt;br /&gt;
  public AlphaCompositeDSTOUT() {&lt;br /&gt;
    getContentPane().add(new DrawingCanvas());&lt;br /&gt;
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);&lt;br /&gt;
    setSize(500,500);&lt;br /&gt;
    setVisible(true);&lt;br /&gt;
  }&lt;br /&gt;
  public static void main(String arg[]) {&lt;br /&gt;
    new AlphaCompositeDSTOUT();&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
class DrawingCanvas extends JPanel{&lt;br /&gt;
  float alphaValue = 1.0f;&lt;br /&gt;
  int compositeRule = AlphaComposite.DST_OUT;&lt;br /&gt;
  AlphaComposite ac;&lt;br /&gt;
  DrawingCanvas() {&lt;br /&gt;
    setSize(300, 300);&lt;br /&gt;
    setBackground(Color.white);&lt;br /&gt;
  }&lt;br /&gt;
  public void paint(Graphics g) {&lt;br /&gt;
    Graphics2D g2D = (Graphics2D) g;&lt;br /&gt;
    int w = getSize().width;&lt;br /&gt;
    int h = getSize().height;&lt;br /&gt;
    BufferedImage bi = new BufferedImage(w, h, BufferedImage.TYPE_INT_ARGB);&lt;br /&gt;
    Graphics2D big = bi.createGraphics();&lt;br /&gt;
    ac = AlphaComposite.getInstance(compositeRule, alphaValue);&lt;br /&gt;
    big.setColor(Color.red);&lt;br /&gt;
    big.drawString(&amp;quot;Destination&amp;quot;, w / 4, h / 4);&lt;br /&gt;
    big.fill(new Ellipse2D.Double(0, h / 3, 2 * w / 3, h / 3));&lt;br /&gt;
    big.setColor(Color.blue);&lt;br /&gt;
    big.drawString(&amp;quot;Source&amp;quot;, 3 * w / 4, h / 4);&lt;br /&gt;
    big.setComposite(ac);&lt;br /&gt;
    big.fill(new Ellipse2D.Double(w / 3, h / 3, 2 * w / 3, h / 3));&lt;br /&gt;
    g2D.drawImage(bi, null, 0, 0);&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  AlphaComposite.DST_OVER ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import java.awt.AlphaComposite;&lt;br /&gt;
import java.awt.BorderLayout;&lt;br /&gt;
import java.awt.Canvas;&lt;br /&gt;
import java.awt.Color;&lt;br /&gt;
import java.awt.ruponent;&lt;br /&gt;
import java.awt.Container;&lt;br /&gt;
import java.awt.Graphics;&lt;br /&gt;
import java.awt.Graphics2D;&lt;br /&gt;
import java.awt.GridLayout;&lt;br /&gt;
import java.awt.event.ActionEvent;&lt;br /&gt;
import java.awt.event.ActionListener;&lt;br /&gt;
import java.awt.geom.Ellipse2D;&lt;br /&gt;
import java.awt.image.BufferedImage;&lt;br /&gt;
import javax.swing.JComboBox;&lt;br /&gt;
import javax.swing.JFrame;&lt;br /&gt;
import javax.swing.JLabel;&lt;br /&gt;
import javax.swing.JPanel;&lt;br /&gt;
import javax.swing.JSlider;&lt;br /&gt;
import javax.swing.event.ChangeEvent;&lt;br /&gt;
import javax.swing.event.ChangeListener;&lt;br /&gt;
public class AlphaCompositeDSTOVER extends JFrame {&lt;br /&gt;
  public AlphaCompositeDSTOVER() {&lt;br /&gt;
    getContentPane().add(new DrawingCanvas());&lt;br /&gt;
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);&lt;br /&gt;
    setSize(500,500);&lt;br /&gt;
    setVisible(true);&lt;br /&gt;
  }&lt;br /&gt;
  public static void main(String arg[]) {&lt;br /&gt;
    new AlphaCompositeDSTOVER();&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
class DrawingCanvas extends JPanel{&lt;br /&gt;
  float alphaValue = 1.0f;&lt;br /&gt;
  int compositeRule = AlphaComposite.DST_OVER;&lt;br /&gt;
  AlphaComposite ac;&lt;br /&gt;
  DrawingCanvas() {&lt;br /&gt;
    setSize(300, 300);&lt;br /&gt;
    setBackground(Color.white);&lt;br /&gt;
  }&lt;br /&gt;
  public void paint(Graphics g) {&lt;br /&gt;
    Graphics2D g2D = (Graphics2D) g;&lt;br /&gt;
    int w = getSize().width;&lt;br /&gt;
    int h = getSize().height;&lt;br /&gt;
    BufferedImage bi = new BufferedImage(w, h, BufferedImage.TYPE_INT_ARGB);&lt;br /&gt;
    Graphics2D big = bi.createGraphics();&lt;br /&gt;
    ac = AlphaComposite.getInstance(compositeRule, alphaValue);&lt;br /&gt;
    big.setColor(Color.red);&lt;br /&gt;
    big.drawString(&amp;quot;Destination&amp;quot;, w / 4, h / 4);&lt;br /&gt;
    big.fill(new Ellipse2D.Double(0, h / 3, 2 * w / 3, h / 3));&lt;br /&gt;
    big.setColor(Color.blue);&lt;br /&gt;
    big.drawString(&amp;quot;Source&amp;quot;, 3 * w / 4, h / 4);&lt;br /&gt;
    big.setComposite(ac);&lt;br /&gt;
    big.fill(new Ellipse2D.Double(w / 3, h / 3, 2 * w / 3, h / 3));&lt;br /&gt;
    g2D.drawImage(bi, null, 0, 0);&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  AlphaComposite.SRC ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import java.awt.AlphaComposite;&lt;br /&gt;
import java.awt.BorderLayout;&lt;br /&gt;
import java.awt.Canvas;&lt;br /&gt;
import java.awt.Color;&lt;br /&gt;
import java.awt.ruponent;&lt;br /&gt;
import java.awt.Container;&lt;br /&gt;
import java.awt.Graphics;&lt;br /&gt;
import java.awt.Graphics2D;&lt;br /&gt;
import java.awt.GridLayout;&lt;br /&gt;
import java.awt.event.ActionEvent;&lt;br /&gt;
import java.awt.event.ActionListener;&lt;br /&gt;
import java.awt.geom.Ellipse2D;&lt;br /&gt;
import java.awt.image.BufferedImage;&lt;br /&gt;
import javax.swing.JComboBox;&lt;br /&gt;
import javax.swing.JFrame;&lt;br /&gt;
import javax.swing.JLabel;&lt;br /&gt;
import javax.swing.JPanel;&lt;br /&gt;
import javax.swing.JSlider;&lt;br /&gt;
import javax.swing.event.ChangeEvent;&lt;br /&gt;
import javax.swing.event.ChangeListener;&lt;br /&gt;
public class AlphaCompositeSRC extends JFrame {&lt;br /&gt;
  public AlphaCompositeSRC() {&lt;br /&gt;
    getContentPane().add(new DrawingCanvas());&lt;br /&gt;
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);&lt;br /&gt;
    setSize(500,500);&lt;br /&gt;
    setVisible(true);&lt;br /&gt;
  }&lt;br /&gt;
  public static void main(String arg[]) {&lt;br /&gt;
    new AlphaCompositeSRC();&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
class DrawingCanvas extends JPanel{&lt;br /&gt;
  float alphaValue = 1.0f;&lt;br /&gt;
  int compositeRule = AlphaComposite.SRC;&lt;br /&gt;
  AlphaComposite ac;&lt;br /&gt;
  DrawingCanvas() {&lt;br /&gt;
    setSize(300, 300);&lt;br /&gt;
    setBackground(Color.white);&lt;br /&gt;
  }&lt;br /&gt;
  public void paint(Graphics g) {&lt;br /&gt;
    Graphics2D g2D = (Graphics2D) g;&lt;br /&gt;
    int w = getSize().width;&lt;br /&gt;
    int h = getSize().height;&lt;br /&gt;
    BufferedImage bi = new BufferedImage(w, h, BufferedImage.TYPE_INT_ARGB);&lt;br /&gt;
    Graphics2D big = bi.createGraphics();&lt;br /&gt;
    ac = AlphaComposite.getInstance(compositeRule, alphaValue);&lt;br /&gt;
    big.setColor(Color.red);&lt;br /&gt;
    big.drawString(&amp;quot;Destination&amp;quot;, w / 4, h / 4);&lt;br /&gt;
    big.fill(new Ellipse2D.Double(0, h / 3, 2 * w / 3, h / 3));&lt;br /&gt;
    big.setColor(Color.blue);&lt;br /&gt;
    big.drawString(&amp;quot;Source&amp;quot;, 3 * w / 4, h / 4);&lt;br /&gt;
    big.setComposite(ac);&lt;br /&gt;
    big.fill(new Ellipse2D.Double(w / 3, h / 3, 2 * w / 3, h / 3));&lt;br /&gt;
    g2D.drawImage(bi, null, 0, 0);&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  AlphaComposite.SRC_IN ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import java.awt.AlphaComposite;&lt;br /&gt;
import java.awt.BorderLayout;&lt;br /&gt;
import java.awt.Canvas;&lt;br /&gt;
import java.awt.Color;&lt;br /&gt;
import java.awt.ruponent;&lt;br /&gt;
import java.awt.Container;&lt;br /&gt;
import java.awt.Graphics;&lt;br /&gt;
import java.awt.Graphics2D;&lt;br /&gt;
import java.awt.GridLayout;&lt;br /&gt;
import java.awt.event.ActionEvent;&lt;br /&gt;
import java.awt.event.ActionListener;&lt;br /&gt;
import java.awt.geom.Ellipse2D;&lt;br /&gt;
import java.awt.image.BufferedImage;&lt;br /&gt;
import javax.swing.JComboBox;&lt;br /&gt;
import javax.swing.JFrame;&lt;br /&gt;
import javax.swing.JLabel;&lt;br /&gt;
import javax.swing.JPanel;&lt;br /&gt;
import javax.swing.JSlider;&lt;br /&gt;
import javax.swing.event.ChangeEvent;&lt;br /&gt;
import javax.swing.event.ChangeListener;&lt;br /&gt;
public class AlphaCompositeSRCIN extends JFrame {&lt;br /&gt;
  public AlphaCompositeSRCIN() {&lt;br /&gt;
    getContentPane().add(new DrawingCanvas());&lt;br /&gt;
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);&lt;br /&gt;
    setSize(500,500);&lt;br /&gt;
    setVisible(true);&lt;br /&gt;
  }&lt;br /&gt;
  public static void main(String arg[]) {&lt;br /&gt;
    new AlphaCompositeSRCIN();&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
class DrawingCanvas extends JPanel{&lt;br /&gt;
  float alphaValue = 1.0f;&lt;br /&gt;
  int compositeRule = AlphaComposite.SRC_IN;&lt;br /&gt;
  AlphaComposite ac;&lt;br /&gt;
  DrawingCanvas() {&lt;br /&gt;
    setSize(300, 300);&lt;br /&gt;
    setBackground(Color.white);&lt;br /&gt;
  }&lt;br /&gt;
  public void paint(Graphics g) {&lt;br /&gt;
    Graphics2D g2D = (Graphics2D) g;&lt;br /&gt;
    int w = getSize().width;&lt;br /&gt;
    int h = getSize().height;&lt;br /&gt;
    BufferedImage bi = new BufferedImage(w, h, BufferedImage.TYPE_INT_ARGB);&lt;br /&gt;
    Graphics2D big = bi.createGraphics();&lt;br /&gt;
    ac = AlphaComposite.getInstance(compositeRule, alphaValue);&lt;br /&gt;
    big.setColor(Color.red);&lt;br /&gt;
    big.drawString(&amp;quot;Destination&amp;quot;, w / 4, h / 4);&lt;br /&gt;
    big.fill(new Ellipse2D.Double(0, h / 3, 2 * w / 3, h / 3));&lt;br /&gt;
    big.setColor(Color.blue);&lt;br /&gt;
    big.drawString(&amp;quot;Source&amp;quot;, 3 * w / 4, h / 4);&lt;br /&gt;
    big.setComposite(ac);&lt;br /&gt;
    big.fill(new Ellipse2D.Double(w / 3, h / 3, 2 * w / 3, h / 3));&lt;br /&gt;
    g2D.drawImage(bi, null, 0, 0);&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  AlphaComposite.SRC_OUT ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import java.awt.AlphaComposite;&lt;br /&gt;
import java.awt.BorderLayout;&lt;br /&gt;
import java.awt.Canvas;&lt;br /&gt;
import java.awt.Color;&lt;br /&gt;
import java.awt.ruponent;&lt;br /&gt;
import java.awt.Container;&lt;br /&gt;
import java.awt.Graphics;&lt;br /&gt;
import java.awt.Graphics2D;&lt;br /&gt;
import java.awt.GridLayout;&lt;br /&gt;
import java.awt.event.ActionEvent;&lt;br /&gt;
import java.awt.event.ActionListener;&lt;br /&gt;
import java.awt.geom.Ellipse2D;&lt;br /&gt;
import java.awt.image.BufferedImage;&lt;br /&gt;
import javax.swing.JComboBox;&lt;br /&gt;
import javax.swing.JFrame;&lt;br /&gt;
import javax.swing.JLabel;&lt;br /&gt;
import javax.swing.JPanel;&lt;br /&gt;
import javax.swing.JSlider;&lt;br /&gt;
import javax.swing.event.ChangeEvent;&lt;br /&gt;
import javax.swing.event.ChangeListener;&lt;br /&gt;
public class AlphaCompositeSRCOUT extends JFrame {&lt;br /&gt;
  public AlphaCompositeSRCOUT() {&lt;br /&gt;
    getContentPane().add(new DrawingCanvas());&lt;br /&gt;
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);&lt;br /&gt;
    setSize(500,500);&lt;br /&gt;
    setVisible(true);&lt;br /&gt;
  }&lt;br /&gt;
  public static void main(String arg[]) {&lt;br /&gt;
    new AlphaCompositeSRCOUT();&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
class DrawingCanvas extends JPanel{&lt;br /&gt;
  float alphaValue = 1.0f;&lt;br /&gt;
  int compositeRule = AlphaComposite.SRC_OUT;&lt;br /&gt;
  AlphaComposite ac;&lt;br /&gt;
  DrawingCanvas() {&lt;br /&gt;
    setSize(300, 300);&lt;br /&gt;
    setBackground(Color.white);&lt;br /&gt;
  }&lt;br /&gt;
  public void paint(Graphics g) {&lt;br /&gt;
    Graphics2D g2D = (Graphics2D) g;&lt;br /&gt;
    int w = getSize().width;&lt;br /&gt;
    int h = getSize().height;&lt;br /&gt;
    BufferedImage bi = new BufferedImage(w, h, BufferedImage.TYPE_INT_ARGB);&lt;br /&gt;
    Graphics2D big = bi.createGraphics();&lt;br /&gt;
    ac = AlphaComposite.getInstance(compositeRule, alphaValue);&lt;br /&gt;
    big.setColor(Color.red);&lt;br /&gt;
    big.drawString(&amp;quot;Destination&amp;quot;, w / 4, h / 4);&lt;br /&gt;
    big.fill(new Ellipse2D.Double(0, h / 3, 2 * w / 3, h / 3));&lt;br /&gt;
    big.setColor(Color.blue);&lt;br /&gt;
    big.drawString(&amp;quot;Source&amp;quot;, 3 * w / 4, h / 4);&lt;br /&gt;
    big.setComposite(ac);&lt;br /&gt;
    big.fill(new Ellipse2D.Double(w / 3, h / 3, 2 * w / 3, h / 3));&lt;br /&gt;
    g2D.drawImage(bi, null, 0, 0);&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  AlphaComposite.SRC_OVER ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import java.awt.AlphaComposite;&lt;br /&gt;
import java.awt.BorderLayout;&lt;br /&gt;
import java.awt.Canvas;&lt;br /&gt;
import java.awt.Color;&lt;br /&gt;
import java.awt.ruponent;&lt;br /&gt;
import java.awt.Container;&lt;br /&gt;
import java.awt.Graphics;&lt;br /&gt;
import java.awt.Graphics2D;&lt;br /&gt;
import java.awt.GridLayout;&lt;br /&gt;
import java.awt.event.ActionEvent;&lt;br /&gt;
import java.awt.event.ActionListener;&lt;br /&gt;
import java.awt.geom.Ellipse2D;&lt;br /&gt;
import java.awt.image.BufferedImage;&lt;br /&gt;
import javax.swing.JComboBox;&lt;br /&gt;
import javax.swing.JFrame;&lt;br /&gt;
import javax.swing.JLabel;&lt;br /&gt;
import javax.swing.JPanel;&lt;br /&gt;
import javax.swing.JSlider;&lt;br /&gt;
import javax.swing.event.ChangeEvent;&lt;br /&gt;
import javax.swing.event.ChangeListener;&lt;br /&gt;
public class AlphaCompositeSRCOVER extends JFrame {&lt;br /&gt;
  public AlphaCompositeSRCOVER() {&lt;br /&gt;
    getContentPane().add(new DrawingCanvas());&lt;br /&gt;
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);&lt;br /&gt;
    setSize(500,500);&lt;br /&gt;
    setVisible(true);&lt;br /&gt;
  }&lt;br /&gt;
  public static void main(String arg[]) {&lt;br /&gt;
    new AlphaCompositeSRCOVER();&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
class DrawingCanvas extends JPanel{&lt;br /&gt;
  float alphaValue = 1.0f;&lt;br /&gt;
  int compositeRule = AlphaComposite.SRC_OVER;&lt;br /&gt;
  AlphaComposite ac;&lt;br /&gt;
  DrawingCanvas() {&lt;br /&gt;
    setSize(300, 300);&lt;br /&gt;
    setBackground(Color.white);&lt;br /&gt;
  }&lt;br /&gt;
  public void paint(Graphics g) {&lt;br /&gt;
    Graphics2D g2D = (Graphics2D) g;&lt;br /&gt;
    int w = getSize().width;&lt;br /&gt;
    int h = getSize().height;&lt;br /&gt;
    BufferedImage bi = new BufferedImage(w, h, BufferedImage.TYPE_INT_ARGB);&lt;br /&gt;
    Graphics2D big = bi.createGraphics();&lt;br /&gt;
    ac = AlphaComposite.getInstance(compositeRule, alphaValue);&lt;br /&gt;
    big.setColor(Color.red);&lt;br /&gt;
    big.drawString(&amp;quot;Destination&amp;quot;, w / 4, h / 4);&lt;br /&gt;
    big.fill(new Ellipse2D.Double(0, h / 3, 2 * w / 3, h / 3));&lt;br /&gt;
    big.setColor(Color.blue);&lt;br /&gt;
    big.drawString(&amp;quot;Source&amp;quot;, 3 * w / 4, h / 4);&lt;br /&gt;
    big.setComposite(ac);&lt;br /&gt;
    big.fill(new Ellipse2D.Double(w / 3, h / 3, 2 * w / 3, h / 3));&lt;br /&gt;
    g2D.drawImage(bi, null, 0, 0);&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Alpha Composite with BufferedImage ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import java.awt.AlphaComposite;&lt;br /&gt;
import java.awt.Color;&lt;br /&gt;
import java.awt.Graphics;&lt;br /&gt;
import java.awt.Graphics2D;&lt;br /&gt;
import java.awt.geom.Ellipse2D;&lt;br /&gt;
import java.awt.image.BufferedImage;&lt;br /&gt;
import javax.swing.JFrame;&lt;br /&gt;
import javax.swing.JPanel;&lt;br /&gt;
public class AlphaCompositeCLEAR extends JFrame {&lt;br /&gt;
  public AlphaCompositeCLEAR() {&lt;br /&gt;
    getContentPane().add(new DrawingCanvas());&lt;br /&gt;
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);&lt;br /&gt;
    setSize(300,300);&lt;br /&gt;
    setVisible(true);&lt;br /&gt;
  }&lt;br /&gt;
  public static void main(String arg[]) {&lt;br /&gt;
    new AlphaCompositeCLEAR();&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
class DrawingCanvas extends JPanel{&lt;br /&gt;
  float alphaValue = 1.0f;&lt;br /&gt;
  int compositeRule = AlphaComposite.CLEAR;&lt;br /&gt;
  AlphaComposite ac;&lt;br /&gt;
  DrawingCanvas() {&lt;br /&gt;
    setSize(300, 300);&lt;br /&gt;
    setBackground(Color.white);&lt;br /&gt;
  }&lt;br /&gt;
  public void paint(Graphics g) {&lt;br /&gt;
    Graphics2D g2D = (Graphics2D) g;&lt;br /&gt;
    int w = getSize().width;&lt;br /&gt;
    int h = getSize().height;&lt;br /&gt;
    BufferedImage bi = new BufferedImage(w, h, BufferedImage.TYPE_INT_ARGB);&lt;br /&gt;
    Graphics2D big = bi.createGraphics();&lt;br /&gt;
    ac = AlphaComposite.getInstance(compositeRule, alphaValue);&lt;br /&gt;
    big.setColor(Color.red);&lt;br /&gt;
    big.drawString(&amp;quot;Destination&amp;quot;, w / 4, h / 4);&lt;br /&gt;
    big.fill(new Ellipse2D.Double(0, h / 3, 2 * w / 3, h / 3));&lt;br /&gt;
    big.setColor(Color.blue);&lt;br /&gt;
    big.drawString(&amp;quot;Source&amp;quot;, 3 * w / 4, h / 4);&lt;br /&gt;
    big.setComposite(ac);&lt;br /&gt;
    big.fill(new Ellipse2D.Double(w / 3, h / 3, 2 * w / 3, h / 3));&lt;br /&gt;
    g2D.drawImage(bi, null, 0, 0);&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Composite Demo ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import java.awt.AlphaComposite;&lt;br /&gt;
import java.awt.Canvas;&lt;br /&gt;
import java.awt.Graphics;&lt;br /&gt;
import java.awt.Graphics2D;&lt;br /&gt;
import java.awt.Image;&lt;br /&gt;
import java.awt.Toolkit;&lt;br /&gt;
import javax.swing.JFrame;&lt;br /&gt;
public class MainClass extends JFrame {&lt;br /&gt;
  public static void main(String args[]) {&lt;br /&gt;
    MainClass app = new MainClass();&lt;br /&gt;
  }&lt;br /&gt;
  public MainClass() {&lt;br /&gt;
    super(&amp;quot;Draw2D&amp;quot;);&lt;br /&gt;
    add(&amp;quot;Center&amp;quot;, new MyCanvas());&lt;br /&gt;
    setSize(400, 400);&lt;br /&gt;
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);&lt;br /&gt;
    setVisible(true);&lt;br /&gt;
  }&lt;br /&gt;
  class MyCanvas extends Canvas {&lt;br /&gt;
    public void paint(Graphics graphics) {&lt;br /&gt;
      Graphics2D g = (Graphics2D) graphics;&lt;br /&gt;
      float alpha = 0.5f;&lt;br /&gt;
      AlphaComposite composite = AlphaComposite.getInstance(AlphaComposite.SRC_OVER, alpha);&lt;br /&gt;
      g.setComposite(composite);&lt;br /&gt;
      Toolkit toolkit = Toolkit.getDefaultToolkit();&lt;br /&gt;
      Image image0 = toolkit.getImage(&amp;quot;image0.gif&amp;quot;);&lt;br /&gt;
      Image image1 = toolkit.getImage(&amp;quot;image1.gif&amp;quot;);&lt;br /&gt;
      g.drawImage(image0, 200, 100, this);&lt;br /&gt;
      g.drawImage(image1, 100, 150, this);&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Compositing is the combining of elements from separate sources into single images ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import java.awt.AlphaComposite;&lt;br /&gt;
import java.awt.Color;&lt;br /&gt;
import java.awt.Graphics;&lt;br /&gt;
import java.awt.Graphics2D;&lt;br /&gt;
import java.awt.image.BufferedImage;&lt;br /&gt;
import javax.swing.JFrame;&lt;br /&gt;
import javax.swing.JPanel;&lt;br /&gt;
public class CompositingDST extends JPanel {&lt;br /&gt;
  public void paint(Graphics g) {&lt;br /&gt;
    Graphics2D g2d = (Graphics2D) g;&lt;br /&gt;
    AlphaComposite ac = AlphaComposite.getInstance(AlphaComposite.DST, 0.5f);&lt;br /&gt;
    BufferedImage buffImg = new BufferedImage(60, 60, BufferedImage.TYPE_INT_ARGB);&lt;br /&gt;
    Graphics2D gbi = buffImg.createGraphics();&lt;br /&gt;
    gbi.setPaint(Color.red);&lt;br /&gt;
    gbi.fillRect(0, 0, 40, 40);&lt;br /&gt;
    gbi.setComposite(ac);&lt;br /&gt;
    gbi.setPaint(Color.green);&lt;br /&gt;
    gbi.fillRect(5, 5, 40, 40);&lt;br /&gt;
    g2d.drawImage(buffImg, 20, 20, null);&lt;br /&gt;
  }&lt;br /&gt;
  public static void main(String[] args) {&lt;br /&gt;
    JFrame frame = new JFrame(&amp;quot;Composition&amp;quot;);&lt;br /&gt;
    frame.add(new CompositingDST());&lt;br /&gt;
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);&lt;br /&gt;
    frame.setSize(400, 120);&lt;br /&gt;
    frame.setVisible(true);&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Composition technique in this animation. ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import java.awt.AlphaComposite;&lt;br /&gt;
import java.awt.Graphics;&lt;br /&gt;
import java.awt.Graphics2D;&lt;br /&gt;
import java.awt.Image;&lt;br /&gt;
import java.awt.event.ActionEvent;&lt;br /&gt;
import java.awt.event.ActionListener;&lt;br /&gt;
import java.awt.image.BufferedImage;&lt;br /&gt;
import javax.swing.ImageIcon;&lt;br /&gt;
import javax.swing.JFrame;&lt;br /&gt;
import javax.swing.JPanel;&lt;br /&gt;
import javax.swing.Timer;&lt;br /&gt;
public class ImageComposite extends JPanel implements ActionListener {&lt;br /&gt;
  Image a = new ImageIcon(this.getClass().getResource(&amp;quot;a.png&amp;quot;)).getImage();&lt;br /&gt;
  Image b = new ImageIcon(this.getClass().getResource(&amp;quot;b.png&amp;quot;)).getImage();&lt;br /&gt;
  Timer timer = new Timer(800, this);&lt;br /&gt;
  float alpha = 1f;&lt;br /&gt;
  public ImageComposite() {&lt;br /&gt;
    timer.start();&lt;br /&gt;
  }&lt;br /&gt;
  public void paint(Graphics g) {&lt;br /&gt;
    super.paint(g);&lt;br /&gt;
    Graphics2D g2d = (Graphics2D) g;&lt;br /&gt;
    BufferedImage buffImg = new BufferedImage(200, 100, BufferedImage.TYPE_INT_ARGB);&lt;br /&gt;
    Graphics2D gbi = buffImg.createGraphics();&lt;br /&gt;
    AlphaComposite ac = AlphaComposite.getInstance(AlphaComposite.SRC_OVER, alpha);&lt;br /&gt;
    gbi.drawImage(a, 40, 30, null);&lt;br /&gt;
    gbi.setComposite(ac);&lt;br /&gt;
    gbi.drawImage(b, 0, 0, null);&lt;br /&gt;
    g2d.drawImage(buffImg, 20, 20, null);&lt;br /&gt;
  }&lt;br /&gt;
  public void actionPerformed(ActionEvent e) {&lt;br /&gt;
    alpha -= 0.1;&lt;br /&gt;
    if (alpha &amp;lt;= 0) {&lt;br /&gt;
      alpha = 0;&lt;br /&gt;
      timer.stop();&lt;br /&gt;
    }&lt;br /&gt;
    repaint();&lt;br /&gt;
  }&lt;br /&gt;
  public static void main(String[] args) {&lt;br /&gt;
    JFrame frame = new JFrame();&lt;br /&gt;
    frame.add(new ImageComposite());&lt;br /&gt;
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);&lt;br /&gt;
    frame.setSize(300, 210);&lt;br /&gt;
    frame.setVisible(true);&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Draw ten rectangles with different levels of transparency ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import java.awt.AlphaComposite;&lt;br /&gt;
import java.awt.Color;&lt;br /&gt;
import java.awt.Graphics;&lt;br /&gt;
import java.awt.Graphics2D;&lt;br /&gt;
import javax.swing.JFrame;&lt;br /&gt;
import javax.swing.JPanel;&lt;br /&gt;
public class TransparentRectangles extends JPanel {&lt;br /&gt;
  public void paint(Graphics g) {&lt;br /&gt;
    super.paint(g);&lt;br /&gt;
    Graphics2D g2d = (Graphics2D) g;&lt;br /&gt;
    for (int i = 1; i &amp;lt;= 10; i++) {&lt;br /&gt;
      g2d.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_OVER, i * 0.1f));&lt;br /&gt;
      g2d.fillRect(50 * i, 20, 50, 50);&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
  public static void main(String[] args) {&lt;br /&gt;
    JFrame frame = new JFrame(&amp;quot;Transparent Rectangles&amp;quot;);&lt;br /&gt;
    frame.add(new TransparentRectangles());&lt;br /&gt;
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);&lt;br /&gt;
    frame.setSize(600, 100);&lt;br /&gt;
    frame.setVisible(true);&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	</feed>