Refine search
image = ImageIO.read(new URL( "http://sstatic.net/stackoverflow/img/logo.png")); } catch (IOException e) { return new Dimension(image.getWidth(), image.getHeight()); int w = old.getWidth(); int h = old.getHeight(); BufferedImage img = new BufferedImage( w, h, BufferedImage.TYPE_INT_ARGB); Graphics2D g2d = img.createGraphics(); g2d.drawImage(old, 0, 0, null); g2d.setPaint(Color.red); g2d.setFont(new Font("Serif", Font.BOLD, 20)); String s = "Hello, world!"; FontMetrics fm = g2d.getFontMetrics(); int x = img.getWidth() - fm.stringWidth(s) - 5; int y = fm.getHeight(); JFrame f = new JFrame(); f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); f.add(new TextOverlay()); f.pack(); f.setVisible(true);
public void decode(InputStream in, OutputStream out) throws JadxException { try { byte[] data = IOUtils.toByteArray(in); BufferedImage im = ImageIO.read(new ByteArrayInputStream(data)); int w = im.getWidth(); int h = im.getHeight(); BufferedImage im2 = new BufferedImage(w + 2, h + 2, BufferedImage.TYPE_INT_ARGB); im2.createGraphics().drawImage(im, 1, 1, w, h, null); NinePatch np = getNinePatch(data); drawHLine(im2, h + 1, np.padLeft + 1, w - np.padRight); drawVLine(im2, w + 1, np.padTop + 1, h - np.padBottom); int[] xDivs = np.xDivs; for (int i = 0; i < xDivs.length; i += 2) { drawHLine(im2, 0, xDivs[i] + 1, xDivs[i + 1]); } int[] yDivs = np.yDivs; for (int i = 0; i < yDivs.length; i += 2) { drawVLine(im2, 0, yDivs[i] + 1, yDivs[i + 1]); } ImageIO.write(im2, "png", out); } catch (IOException | NullPointerException ex) { throw new JadxException(ex.toString()); } }
/** * 等比缩放,居中剪切 * * @param src * @param dest * @param w * @param h * @throws IOException */ public static void scale(String src, String dest, int w, int h) throws IOException { if (notImageExtName(src)) { throw new IllegalArgumentException("只支持如下几种图片格式:jpg、jpeg、png、bmp"); } Iterator<ImageReader> iterator = ImageIO.getImageReadersByFormatName(getExtName(src)); ImageReader reader = (ImageReader) iterator.next(); InputStream in = new FileInputStream(src); ImageInputStream iis = ImageIO.createImageInputStream(in); reader.setInput(iis); BufferedImage srcBuffered = readBuffereImage(reader, w, h); BufferedImage targetBuffered = new BufferedImage(w, h, BufferedImage.TYPE_INT_RGB); Graphics graphics = targetBuffered.getGraphics(); graphics.drawImage(srcBuffered.getScaledInstance(w, h, Image.SCALE_DEFAULT), 0, 0, null); // 绘制缩小后的图 graphics.dispose(); srcBuffered.flush(); save(targetBuffered, dest); targetBuffered.flush(); }
@GetMapping("/{processInstanceId}/image") @ApiOperation("查看当前流程活动节点流程图") @Authorize(action = Permission.ACTION_QUERY) public void getProcessImage(@PathVariable String processInstanceId, HttpServletResponse response) throws IOException { try (InputStream inputStream = bpmProcessService.findProcessPic(processInstanceId)) { response.setContentType(MediaType.IMAGE_PNG_VALUE); ImageIO.write(ImageIO.read(inputStream), "png", response.getOutputStream()); } } }
/** * 根据给定的图片格式或者扩展名获取{@link ImageWriter},如果未找到合适的Writer,返回null * * @param formatName 图片格式或扩展名,例如"jpg"、"png" * @return {@link ImageWriter} * @since 4.3.2 */ public static ImageWriter getWriter(String formatName) { ImageWriter writer = null; Iterator<ImageWriter> iter = ImageIO.getImageWritersByFormatName(formatName); if (iter.hasNext()) { writer = iter.next(); } if (null == writer) { // 尝试扩展名获取 iter = ImageIO.getImageWritersBySuffix(formatName); if (iter.hasNext()) { writer = iter.next(); } } return writer; }
public static Point getImageSizeFromStream(InputStream is) { if (!initialized) { // Stops ImageIO from creating temp files when reading images // from input stream. ImageIO.setUseCache(false); initialized = true; } try { ImageInputStream imageStream = ImageIO.createImageInputStream(is); Iterator<ImageReader> readers = ImageIO.getImageReaders(imageStream); if (!readers.hasNext()) return null; ImageReader reader = readers.next(); try { reader.setInput(imageStream); return new Point(reader.getWidth(0), reader.getHeight(0)); } finally { reader.dispose(); } } catch (IOException e) { throw new RuntimeException(e); } }
Graphics2D g2d = (Graphics2D) g.create(); g2d.setColor(new Color(0xFFAA00)); g2d.drawRoundRect(3, 3, getWidth()-4, getHeight()-4, archH, archH); setLayout(new GridBagLayout()); add(usrNameLabel, labCnst); add(usrNameFeild, txtCnst); Graphics2D g2d = (Graphics2D) g.create(); if(gradientImage==null || gradientImage.getHeight() != getHeight()) MainContainer.textureImg = ImageIO.read(new URL("http://www.brewsterwallcovering.com/data/default/images/catalog/original/289-5757.jpg")); System.out.println("Loading finished. Starting the Demo!"); JFrame frame = new JFrame("Demo: LogIn Dialogue"); frame.setSize(new Dimension(500, 300)); MainContainer container = new MainContainer(); frame.add(new MainContainer()); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setVisible(true);
ORIGINAL = ImageIO.read( ImageManipulationDemo.class.getResource("../resources/whitefro1.jpg")); ALTERED = config.createCompatibleImage( ORIGINAL.getWidth(), ORIGINAL.getHeight() + 20); Graphics2D g2 = ALTERED.createGraphics(); g2.setColor(Color.WHITE); g2.fillRect(0, 0, ALTERED.getWidth(), 20); g2.drawImage(ORIGINAL, 0, 20, null); g2.dispose(); ImageIO.write(ALTERED, "PNG", new File("alteredImage.png")); final JFrame frame = new JFrame("Image Manipulation Demo"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.getContentPane().setBackground(Color.BLUE.darker()); frame.getContentPane().setLayout(new FlowLayout()); frame.getContentPane().add(new JLabel(new ImageIcon(ORIGINAL))); frame.getContentPane().add(new JLabel(new ImageIcon(ALTERED))); frame.pack(); frame.setLocationRelativeTo(null); frame.setVisible(true);
JFrame frame = new JFrame(); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.getContentPane().setLayout(new GridLayout(1, 1)); image = convertToARGB(ImageIO.read(new File("lena512color.png"))); panel.add(createComponent("Original", image)); panel.add(createComponent("Flipped", createFlipped(image))); panel.add(createComponent("Rotated", createRotated(image))); panel.add(createComponent("Inverted", createInverted(image))); frame.getContentPane().add(panel); frame.pack(); frame.setLocationRelativeTo(null); frame.setVisible(true); Graphics2D g = newImage.createGraphics(); g.transform(at); g.drawImage(image, 0, 0, null); g.dispose(); return newImage;
Component component) { BufferedImage image = new BufferedImage( component.getWidth(), component.getHeight(), component.paint( image.getGraphics() ); // alternately use .printAll(..) return image; Runnable r = new Runnable() { public void run() { final JFrame f = new JFrame("Test Screenshot"); new ImageIcon( img.getScaledInstance( img.getWidth(null)/2, try { ImageIO.write( img, "png", JMenuBar mb = new JMenuBar(); mb.add(menu); f.setJMenuBar(mb);
page.imageName = outputFile.getName(); BufferedImage canvas = new BufferedImage(width, height, getBufferedImageType(settings.format)); Graphics2D g = (Graphics2D)canvas.getGraphics(); if (!settings.silent) System.out.println("Writing " + canvas.getWidth() + "x" + canvas.getHeight() + ": " + outputFile); if (settings.outputFormat.equalsIgnoreCase("jpg") || settings.outputFormat.equalsIgnoreCase("jpeg")) { BufferedImage newImage = new BufferedImage(canvas.getWidth(), canvas.getHeight(), BufferedImage.TYPE_3BYTE_BGR); newImage.getGraphics().drawImage(canvas, 0, 0, null); canvas = newImage; Iterator<ImageWriter> writers = ImageIO.getImageWritersByFormatName("jpg"); ImageWriter writer = writers.next(); ImageWriteParam param = writer.getDefaultWriteParam(); param.setCompressionMode(ImageWriteParam.MODE_EXPLICIT); param.setCompressionQuality(settings.jpegQuality); ios = ImageIO.createImageOutputStream(outputFile); writer.setOutput(ios); writer.write(null, new IIOImage(canvas, null, null), param); } else { if (settings.premultiplyAlpha) canvas.getColorModel().coerceData(canvas.getRaster(), true); ImageIO.write(canvas, "png", outputFile);
BufferedImage originalImage = ImageIO.read(url); final BufferedImage textImage = new BufferedImage( originalImage.getWidth(), originalImage.getHeight(), BufferedImage.TYPE_INT_ARGB); Graphics2D g = textImage.createGraphics(); int yOff = 80+(int)-box.getY(); Shape shape = gv.getOutline(xOff,yOff); g.setClip(shape); g.drawImage(originalImage,0,0,null); g.setClip(null); g.setStroke(new BasicStroke(2f)); g.setColor(Color.BLACK); ImageIO.write(textImage,"png",file); Desktop.getDesktop().open(file);
BufferedImage image = ImageIO.read(inFile); BufferedImage resultImage1 = ImageToBufferedImage(transpImg1, image.getWidth(), image.getHeight()); ImageIO.write(resultImage1, "PNG", outFile1); BufferedImage resultImage2 = ImageToBufferedImage(transpImg2, image.getWidth(), image.getHeight()); ImageIO.write(resultImage2, "PNG", outFile2); width, height, BufferedImage.TYPE_INT_ARGB); Graphics2D g2 = dest.createGraphics(); g2.drawImage(image, 0, 0, null); g2.dispose(); return dest;
BufferedImage red = ImageIO.read(redResource.getInputStream()); BufferedImage goodImage = ImageIO.read(goodPic); BufferedImage qrCodeImage = ImageIO.read(qrCodeImg); BufferedImage baseImage = new BufferedImage(red.getWidth(), red.getHeight(), BufferedImage.TYPE_4BYTE_ABGR_PRE); BufferedImage result = new BufferedImage(baseImage.getWidth(), baseImage .getHeight(), BufferedImage.TYPE_3BYTE_BGR); result.getGraphics().drawImage(baseImage, 0, 0, null); ByteArrayOutputStream bs = new ByteArrayOutputStream(); ImageIO.write(result, "jpg", bs);
imageLabel = new JLabel(new ImageIcon(convertToFromBytes(getImage()))); memory = new JProgressBar(0, (int) Runtime.getRuntime().maxMemory()); p.add(imageLabel, BorderLayout.CENTER); p.add(memory, BorderLayout.SOUTH); JFrame f = new JFrame(); f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); f.setContentPane(p); f.setLocation(150, 150); f.pack(); f.setVisible(true); Runnable r = new Runnable() { GradientPaint gp = new GradientPaint(0f, 0f, new Color(127 + random.nextInt(128), 127 + random.nextInt(128), 127 + random.nextInt(128)), (float) halfScreenSize.width, (float) halfScreenSize.width, new Color(random.nextInt(128), random.nextInt(128), random.nextInt(128))); BufferedImage bi = new BufferedImage(halfScreenSize.width, halfScreenSize.height, BufferedImage.TYPE_INT_RGB); Graphics2D g2d = bi.createGraphics(); g2d.setPaint(gp); g2d.fillRect(0, 0, halfScreenSize.width, halfScreenSize.height); g2d.setFont(bigFont); g2d.setColor(Color.BLACK); if (maxMem < ((int) Runtime.getRuntime().freeMemory())) { maxMem = ((int) Runtime.getRuntime().freeMemory()); try { ByteArrayOutputStream baos = new ByteArrayOutputStream(); ImageIO.write(image, "png", baos); return Toolkit.getDefaultToolkit().createImage(baos.toByteArray()); } catch (Exception e) {
int w = bi.getWidth(); int h = bi.getHeight(); int step = w/3; JPanel p = new JPanel(new GridLayout(3,3)); for (int jj=0; jj<h; jj+=step) { Image icon = bi.getSubimage(jj, ii, step, step); if (count%2==1) { JButton button = new JButton(new ImageIcon(icon)); p.add(button); } else { JLabel label = new JLabel(new ImageIcon(icon)); p.add(label); center.add(p); JOptionPane.showMessageDialog(null, center); final BufferedImage bi = ImageIO.read(url); SwingUtilities.invokeLater(new Runnable(){ @Override
frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); img = ImageIO.read(new URL("http://images4.wikia.nocookie.net/__cb20120515073660/naruto/images/0/09/Naruto_newshot.png")).getScaledInstance(200, 200, Image.SCALE_SMOOTH); } catch (Exception ex) { ex.printStackTrace(); frame.add(jsp); frame.pack(); frame.setVisible(true); BufferedImage bi = componentToImage(imagePanel, true); try { File outputfile = new File("c:/saved.png"); ImageIO.write(bi, "png", outputfile); } catch (IOException e) { e.printStackTrace(); BufferedImage img = new BufferedImage(component.getWidth(), component.getHeight(), BufferedImage.TRANSLUCENT); Graphics2D g2d = (Graphics2D) img.getGraphics(); g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON); component.paintAll(g2d); protected void paintComponent(Graphics grphcs) { super.paintComponent(grphcs); grphcs.drawImage(bg, 0, 0, null);
this.image = ImageIO.read(new URL("http://interviewpenguin.com/wp-content/uploads/2011/06/java-programmers-brain.jpg")); }catch(IOException ex) { Logger.getLogger(ScrollImageTest.class.getName()).log(Level.SEVERE, null, ex); protected void paintComponent(Graphics g) { super.paintComponent(g); g.drawImage(image, 0, 0, null); canvas.add(new JButton("Currently I do nothing")); canvas.setPreferredSize(new Dimension(image.getWidth(), image.getHeight())); JScrollPane sp = new JScrollPane(canvas); setLayout(new BorderLayout()); add(sp, BorderLayout.CENTER); public void run() { JPanel p = new ScrollImageTest(); JFrame f = new JFrame(); f.setContentPane(p); f.setSize(400, 300); f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); f.setVisible(true);
private void generatePremultiplyAlpha(File out){ try { BufferedImage outImage = new BufferedImage(image.getWidth(), image.getHeight(), BufferedImage.TYPE_INT_ARGB); float[] color = new float[4]; WritableRaster raster = image.getRaster(); WritableRaster outRaster = outImage.getRaster(); for(int x =0, w = image.getWidth(); x< w; ++x) for(int y =0, h = image.getHeight(); y< h; ++y){ raster.getPixel(x, y, color); float alpha = color[3]/255f; for(int i=0;i < 3; ++i) color[i] *= alpha; outRaster.setPixel(x, y, color); } ImageIO.write(outImage, "png", out); } catch (IOException e) { e.printStackTrace(); } }