< prev index next >

src/java.desktop/share/classes/sun/print/PathGraphics.java

Print this page




  18  * 2 along with this work; if not, write to the Free Software Foundation,
  19  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  20  *
  21  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  22  * or visit www.oracle.com if you need additional information or have any
  23  * questions.
  24  */
  25 
  26 package sun.print;
  27 
  28 import java.lang.ref.SoftReference;
  29 import java.util.Hashtable;
  30 import sun.font.CharToGlyphMapper;
  31 import sun.font.CompositeFont;
  32 import sun.font.Font2D;
  33 import sun.font.Font2DHandle;
  34 import sun.font.FontManager;
  35 import sun.font.FontManagerFactory;
  36 import sun.font.FontUtilities;
  37 


  38 import java.awt.Color;
  39 import java.awt.Font;
  40 import java.awt.Graphics2D;
  41 import java.awt.Image;
  42 import java.awt.Paint;
  43 import java.awt.Polygon;
  44 import java.awt.Shape;
  45 
  46 import java.awt.geom.Path2D;
  47 import java.text.AttributedCharacterIterator;
  48 
  49 import java.awt.font.FontRenderContext;
  50 import java.awt.font.GlyphVector;
  51 import java.awt.font.TextAttribute;
  52 import java.awt.font.TextLayout;
  53 
  54 import java.awt.geom.AffineTransform;
  55 import java.awt.geom.Arc2D;
  56 import java.awt.geom.Ellipse2D;
  57 import java.awt.geom.Line2D;


1873         int srcHeight = img.getHeight();
1874 
1875         if (srcWidth <= 0 || srcHeight <= 0) {
1876             return;
1877         }
1878 
1879         if (img instanceof BufferedImage) {
1880             bufferedImage = (BufferedImage) img;
1881         } else {
1882             bufferedImage = new BufferedImage(srcWidth, srcHeight,
1883                                               BufferedImage.TYPE_INT_ARGB);
1884             Graphics2D imageGraphics = bufferedImage.createGraphics();
1885             imageGraphics.drawRenderedImage(img, xform);
1886         }
1887 
1888         drawImageToPlatform(bufferedImage, xform, null,
1889                             0, 0, srcWidth, srcHeight, false);
1890 
1891     }
1892 





















1893 }


  18  * 2 along with this work; if not, write to the Free Software Foundation,
  19  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  20  *
  21  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  22  * or visit www.oracle.com if you need additional information or have any
  23  * questions.
  24  */
  25 
  26 package sun.print;
  27 
  28 import java.lang.ref.SoftReference;
  29 import java.util.Hashtable;
  30 import sun.font.CharToGlyphMapper;
  31 import sun.font.CompositeFont;
  32 import sun.font.Font2D;
  33 import sun.font.Font2DHandle;
  34 import sun.font.FontManager;
  35 import sun.font.FontManagerFactory;
  36 import sun.font.FontUtilities;
  37 
  38 import java.awt.AlphaComposite;
  39 import java.awt.Composite;
  40 import java.awt.Color;
  41 import java.awt.Font;
  42 import java.awt.Graphics2D;
  43 import java.awt.Image;
  44 import java.awt.Paint;
  45 import java.awt.Polygon;
  46 import java.awt.Shape;
  47 
  48 import java.awt.geom.Path2D;
  49 import java.text.AttributedCharacterIterator;
  50 
  51 import java.awt.font.FontRenderContext;
  52 import java.awt.font.GlyphVector;
  53 import java.awt.font.TextAttribute;
  54 import java.awt.font.TextLayout;
  55 
  56 import java.awt.geom.AffineTransform;
  57 import java.awt.geom.Arc2D;
  58 import java.awt.geom.Ellipse2D;
  59 import java.awt.geom.Line2D;


1875         int srcHeight = img.getHeight();
1876 
1877         if (srcWidth <= 0 || srcHeight <= 0) {
1878             return;
1879         }
1880 
1881         if (img instanceof BufferedImage) {
1882             bufferedImage = (BufferedImage) img;
1883         } else {
1884             bufferedImage = new BufferedImage(srcWidth, srcHeight,
1885                                               BufferedImage.TYPE_INT_ARGB);
1886             Graphics2D imageGraphics = bufferedImage.createGraphics();
1887             imageGraphics.drawRenderedImage(img, xform);
1888         }
1889 
1890         drawImageToPlatform(bufferedImage, xform, null,
1891                             0, 0, srcWidth, srcHeight, false);
1892 
1893     }
1894 
1895     protected boolean isCompositing(Composite composite) {
1896 
1897         boolean isCompositing = false;
1898 
1899         if (composite instanceof AlphaComposite) {
1900             AlphaComposite alphaComposite = (AlphaComposite) composite;
1901             float alpha = alphaComposite.getAlpha();
1902             int rule = alphaComposite.getRule();
1903 
1904             if (alpha != 1.0
1905                     || (rule != AlphaComposite.SRC
1906                         && rule != AlphaComposite.SRC_OVER))
1907             {
1908                 isCompositing = true;
1909             }
1910 
1911         } else {
1912             isCompositing = true;
1913         }
1914         return isCompositing;
1915     }
1916 }
< prev index next >