List of usage examples for java.awt.image BufferedImage TYPE_INT_RGB
int TYPE_INT_RGB
To view the source code for java.awt.image BufferedImage TYPE_INT_RGB.
Click Source Link
From source file:gr.iti.mklab.reveal.forensics.util.Util.java
public static BufferedImage scaleImage(BufferedImage image, int width, int height) { assert (width > 0 && height > 0); // create image of new size BufferedImage img = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB); Graphics g = img.getGraphics(); ((Graphics2D) g).setRenderingHint(RenderingHints.KEY_INTERPOLATION, RenderingHints.VALUE_INTERPOLATION_NEAREST_NEIGHBOR); // ((Graphics2D) g).setRenderingHint(RenderingHints.KEY_INTERPOLATION, RenderingHints.VALUE_INTERPOLATION_BILINEAR); g.drawImage(image, 0, 0, img.getWidth(), img.getHeight(), null); return img;// w w w .j a v a 2 s . co m }
From source file:net.cit.tetrad.rrd.service.TetradRrdDbServiceImpl.java
public String detailedGraphPerRrdDb(GraphDefInfo graphDefInfo) { logger.info("start draw main graph rrdDb:" + graphDefInfo.getFileName()); String fileName = null;//from w ww .j ava 2s . c o m RrdGraphDef rrdGraphDef = null; try { String imagePath = CommonUtils.getDefaultRrdImgPath(); fileName = graphDefInfo.getFileName() + "_detailed.png"; rrdGraphDef = tetradRrdGraphDef.detailedCreateGraphPerRrdDb(graphDefInfo); rrdGraphDef.setFilename(imagePath + fileName); RrdGraph rrdGraph = new RrdGraph(rrdGraphDef); BufferedImage bim = new BufferedImage(graphDefInfo.getWidth(), graphDefInfo.getHeight(), BufferedImage.TYPE_INT_RGB); rrdGraph.render(bim.getGraphics()); } catch (Exception e) { logger.error(e, e); fileName = ""; } logger.info("end draw main graph rrdDb:" + graphDefInfo.getFileName()); return fileName; }
From source file:net.cit.tetrad.rrd.service.TetradRrdDbServiceImpl.java
public String detailedMultiDeviceGraphPerRrd(String rrdDb, GraphDefInfo graphDefInfo, String title) { logger.info("start draw main graph rrdDb:" + rrdDb); String fileName = null;/*from w w w . ja v a 2 s.c o m*/ RrdGraphDef rrdGraphDef = null; try { String imagePath = CommonUtils.getDefaultRrdImgPath(); fileName = graphDefInfo.getFileName() + ".png"; rrdGraphDef = tetradRrdGraphDef.detailedCreateMultiDeviceGraphPerRrd(rrdDb, graphDefInfo, title); rrdGraphDef.setFilename(imagePath + fileName); RrdGraph rrdGraph = new RrdGraph(rrdGraphDef); BufferedImage bim = new BufferedImage(graphDefInfo.getWidth(), graphDefInfo.getHeight(), BufferedImage.TYPE_INT_RGB); rrdGraph.render(bim.getGraphics()); } catch (Exception e) { logger.error(e, e); fileName = ""; } logger.info("end draw main graph rrdDb:" + rrdDb); return fileName; }
From source file:au.com.gaiaresources.bdrs.controller.test.TestDataCreator.java
private byte[] getAndScaleImageData(int targetWidth, int targetHeight, File file) throws IOException { if (file == null) { return null; }/*w ww .j a v a2 s. c o m*/ BufferedImage sourceImage = ImageIO.read(file); BufferedImage targetImage; if (targetWidth > -1 && targetHeight > -1) { // Resize the image as required to fit the space targetImage = new BufferedImage(targetWidth, targetHeight, BufferedImage.TYPE_INT_RGB); Graphics2D g2_scaled = targetImage.createGraphics(); // Better scaling g2_scaled.setRenderingHint(RenderingHints.KEY_INTERPOLATION, RenderingHints.VALUE_INTERPOLATION_BICUBIC); g2_scaled.setBackground(Color.WHITE); g2_scaled.clearRect(0, 0, targetWidth, targetHeight); int sourceWidth = sourceImage.getWidth(); int sourceHeight = sourceImage.getHeight(); double widthRatio = (double) targetWidth / (double) sourceWidth; double heightRatio = (double) targetHeight / (double) targetHeight; if (heightRatio > widthRatio) { int scaledHeight = (int) Math.round(widthRatio * sourceHeight); g2_scaled.drawImage(sourceImage, 0, (targetImage.getHeight() - scaledHeight) / 2, targetImage.getWidth(), scaledHeight, g2_scaled.getBackground(), null); } else { int scaledWidth = (int) Math.round(heightRatio * sourceWidth); g2_scaled.drawImage(sourceImage, (targetImage.getWidth() - scaledWidth) / 2, 0, scaledWidth, targetImage.getHeight(), new Color(0, 0, 0, 255), null); } } else { targetImage = sourceImage; } ByteArrayOutputStream baos = new ByteArrayOutputStream(targetWidth * targetHeight); ImageIO.write(targetImage, "png", baos); baos.flush(); byte[] data = baos.toByteArray(); baos.close(); return data; }
From source file:org.fhcrc.cpl.viewer.quant.gui.PanelWithSpectrumChart.java
License:asdf
/** * * @param imageWidthEachScan// ww w. j a v a 2s.c om * @param imageHeightEachScan * @param maxTotalImageHeight a hard boundary on the total image height. If imageHeightEachScan is too big, * given the total number of charts and this arg, it gets knocked down * @param outputFile * @throws java.io.IOException */ public void savePerScanSpectraImage(int imageWidthEachScan, int imageHeightEachScan, int maxTotalImageHeight, File outputFile) throws IOException { int numCharts = scanLineChartMap.size(); int widthPaddingForLabels = 50; imageHeightEachScan = Math.min(imageHeightEachScan, maxTotalImageHeight / numCharts); List<Integer> allScanNumbers = new ArrayList<Integer>(scanLineChartMap.keySet()); Collections.sort(allScanNumbers); List<PanelWithChart> allCharts = new ArrayList<PanelWithChart>(); for (int scanNumber : allScanNumbers) { PanelWithLineChart scanChart = scanLineChartMap.get(scanNumber); allCharts.add(scanChart); scanChart.setSize(imageWidthEachScan - widthPaddingForLabels, imageHeightEachScan); } BufferedImage perScanChartImage = MultiChartDisplayPanel.createImageForAllCharts(allCharts); BufferedImage perScanChartImageWithLabels = new BufferedImage(imageWidthEachScan, perScanChartImage.getHeight(), BufferedImage.TYPE_INT_RGB); Graphics2D g = perScanChartImageWithLabels.createGraphics(); g.drawImage(perScanChartImage, widthPaddingForLabels, 0, null); g.setPaint(Color.WHITE); g.drawRect(0, 0, widthPaddingForLabels, perScanChartImage.getHeight()); for (int i = 0; i < allCharts.size(); i++) { int scanNumber = allScanNumbers.get(i); int chartTop = i * imageHeightEachScan; int chartMiddle = chartTop + (imageHeightEachScan / 2); if (lightFirstScanLine > 0 && lightLastScanLine > 0) { if (scanNumber >= lightFirstScanLine && scanNumber <= lightLastScanLine) g.setPaint(Color.GREEN); else g.setPaint(Color.RED); } else g.setPaint(Color.BLACK); g.drawString("" + scanNumber, 5, chartMiddle); } g.dispose(); ImageIO.write(perScanChartImageWithLabels, "png", outputFile); }
From source file:net.cbtltd.server.UploadFileService.java
private static byte[] getImageBlob(String fn, int fullsizepixels) { try {//from ww w . j a va 2s. com ImageIcon image = new ImageIcon(fn); ImageIcon logoImage = new ImageIcon( image.getImage().getScaledInstance(fullsizepixels, -1, Image.SCALE_SMOOTH)); BufferedImage bufferedImage = new BufferedImage(logoImage.getIconWidth(), logoImage.getIconHeight(), BufferedImage.TYPE_INT_RGB); Graphics graphics = bufferedImage.getGraphics(); graphics.drawImage(logoImage.getImage(), 0, 0, null); fn = fn.substring(0, fn.lastIndexOf('.')) + ".Blob.jpg"; File file = new File(fn); file.delete(); ImageIO.write(bufferedImage, FULLSIZE_JPEG, file); InputStream is = new FileInputStream(file); long length = file.length(); if (length > Integer.MAX_VALUE) { throw new IOException("File is too large for logo - maximum size = " + Integer.MAX_VALUE); } byte[] bytes = new byte[(int) length]; int offset = 0; int numRead = 0; while (offset < bytes.length && (numRead = is.read(bytes, offset, bytes.length - offset)) >= 0) { offset += numRead; } if (offset < bytes.length) { throw new IOException("Could not completely read file " + file.getName()); } is.close(); return bytes; } catch (IOException x) { throw new RuntimeException("Error creating BLOB image " + x.getMessage()); } }
From source file:javazoom.jlgui.player.amp.skin.Skin.java
/** * Instantiate PosBar Panel with ActiveComponent. *//* w w w .j a v a 2 s .c om*/ protected void setPosBarPanel() { int l = 0; Image posBackground = new BufferedImage(248, 10, BufferedImage.TYPE_INT_RGB); posBackground.getGraphics().drawImage(imPosBar, 0, 0, 248, 10, 0, 0, 248, 10, null); acPosBar = new ActiveJSlider(); acPosBar.setMinimum(0); acPosBar.setMaximum(POSBARMAX); acPosBar.setValue(0); acPosBar.setOrientation(JSlider.HORIZONTAL); acPosBar.setConstraints(new AbsoluteConstraints(posBarLocation[l++], posBarLocation[l++], 248, releasedPosIm[0].getHeight(null))); ActiveSliderUI sUI = new ActiveSliderUI(acPosBar); Image[] back = { posBackground }; sUI.setBackgroundImages(back); sUI.setThumbXOffset(0); sUI.setThumbYOffset(0); sUI.setThumbImage(releasedPosIm[0]); sUI.setThumbPressedImage(pressedPosIm[0]); acPosBar.setUI(sUI); acPosBar.setToolTipText(getResource("slider.seek")); }
From source file:ar.edu.uns.cs.vyglab.arq.rockar.gui.JFrameControlPanel.java
public void updateVisualizations() { // first, update piechart this.chart.setTitle(DataCenter.samplePath); this.pieChartDataset.clear(); PiePlot plot = (PiePlot) chart.getPlot(); for (Entry<Integer, Vector<Point>> entry : DataCenter.minerals.entrySet()) { if (entry.getValue().size() != 0) { this.pieChartDataset.setValue(DataCenter.names.get(entry.getKey()), entry.getValue().size()); plot.setSectionPaint(DataCenter.names.get(entry.getKey()), DataCenter.colors.get(entry.getKey())); }/* w ww . j a v a2 s. c o m*/ } // then update overview, if exists //TODO fit jlabeloverview into jpanel if (DataCenter.pointsHorizontal != 0) { this.overview = new BufferedImage(DataCenter.pointsHorizontal, DataCenter.pointsVertical, BufferedImage.TYPE_INT_RGB); for (Entry<Point, Integer> entry : DataCenter.points.entrySet()) { int x = entry.getKey().x; int y = entry.getKey().y; Color c = DataCenter.colors.get(entry.getValue()); this.overview.setRGB(x, y, c.getRGB()); } scaled = this.overview.getScaledInstance(this.jPanelOverviewContent.getWidth(), this.jPanelOverviewContent.getHeight(), Image.SCALE_SMOOTH); //this.jLabelOverview.setIcon(new ImageIcon(this.overview)); this.jLabelOverview.setIcon(new ImageIcon(scaled)); this.jPanelOverviewContent.repaint(); } // then update table information} this.jLabelMineralTableInformation .setText(DataCenter.langResource.getString("total_counted_table") + " " + DataCenter.points.size()); int totalPoints = DataCenter.points.size(); Set<Entry<Integer, Vector<Point>>> minerals = DataCenter.minerals.entrySet(); for (Entry<Integer, Vector<Point>> item : minerals) { int mineral = item.getKey(); for (int i = 0; i < this.jTableMineralsModel.getRowCount(); i++) { if (mineral == (Integer) this.jTableMineralsModel.getValueAt(i, 0)) { this.jTableMineralsModel.setValueAt(item.getValue().size(), i, 3); float countLocal = item.getValue().size(); float total = totalPoints; float percent = (countLocal * (float) 100) / total; String s = String.format("%.2f", percent); this.jTableMineralsModel.setValueAt(s + "%", i, 4); break; } } } // update main view DataCenter.jframeSetter.getjLabelImage().repaint(); /* * Set<Entry<Point, Integer>> points = DataCenter.points.entrySet(); for( Entry<Point, Integer> item : points) { */ }
From source file:javazoom.jlgui.player.amp.skin.Skin.java
/** * Set sliders for equalizer./* ww w.j ava 2 s . c o m*/ */ private void setSliderPanel() { releasedSliderImage[0] = new BufferedImage(12, 11, BufferedImage.TYPE_INT_RGB); Graphics g = releasedSliderImage[0].getGraphics(); g.drawImage(imFullEqualizer, 0, 0, 12, 11, 0, 164, 0 + 12, 164 + 11, null); pressedSliderImage[0] = new BufferedImage(10, 11, BufferedImage.TYPE_INT_RGB); g = pressedSliderImage[0].getGraphics(); g.drawImage(imFullEqualizer, 0, 0, 11, 11, 0, 176, 0 + 11, 176 + 11, null); for (int k = 0; k < sliderImage.length / 2; k++) { sliderImage[k] = new BufferedImage(13, 63, BufferedImage.TYPE_INT_RGB); g = sliderImage[k].getGraphics(); g.drawImage(imSliders, 0, 0, 13, 63, k * 15, 0, k * 15 + 13, 0 + 63, null); } for (int k = 0; k < sliderImage.length / 2; k++) { sliderImage[k + (sliderImage.length / 2)] = new BufferedImage(13, 63, BufferedImage.TYPE_INT_RGB); g = sliderImage[k + (sliderImage.length / 2)].getGraphics(); g.drawImage(imSliders, 0, 0, 13, 63, k * 15, 65, k * 15 + 13, 65 + 63, null); } // Setup sliders for (int i = 0; i < acSlider.length; i++) { sliderLocation[i][0] = sliderBarLocation[i][0] + 1; sliderLocation[i][1] = sliderBarLocation[i][1] + 1;// + deltaSlider * gainEqValue[i] / maxEqGain; acSlider[i] = new ActiveJSlider(); acSlider[i].setMinimum(0); acSlider[i].setMaximum(100); acSlider[i].setValue(50); acSlider[i].setOrientation(JSlider.VERTICAL); ActiveSliderUI sUI = new ActiveSliderUI(acSlider[i]); sUI.setThumbImage(releasedSliderImage[0]); sUI.setThumbPressedImage(pressedSliderImage[0]); sUI.setBackgroundImages(sliderImage); sUI.setThumbXOffset(1); sUI.setThumbYOffset(-1); acSlider[i].setUI(sUI); acSlider[i].setConstraints(new AbsoluteConstraints(sliderLocation[i][0], sliderLocation[i][1], releasedSliderImage[0].getWidth(null), sliderImage[0].getHeight(null))); } acSlider[0].setEnabled(false); }
From source file:userInterface.EnergySourceBoardSupervisor.ManageEnergyConsumptionsJPanel.java
private void saveBtnActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_saveBtnActionPerformed JTableHeader tableHeaderComp = applianceTable.getTableHeader(); int totalWidth = tableHeaderComp.getWidth() + applianceTable.getWidth(); int totalHeight = tableHeaderComp.getHeight() + applianceTable.getHeight(); BufferedImage tableImage = new BufferedImage(totalWidth, totalHeight, BufferedImage.TYPE_INT_RGB); Graphics2D g2D = (Graphics2D) tableImage.getGraphics(); tableHeaderComp.paint(g2D);//from www. ja v a 2 s . c om g2D.translate(0, tableHeaderComp.getHeight()); applianceTable.paint(g2D); String name = fileNameTxt.getText(); try { if (!name.equals("")) { ImageIO.write(tableImage, "png", new File("C:\\Users\\Reshmi\\Documents\\NetBeansProjects\\FinalProject\\Saved Files\\" + name + ".png")); JOptionPane.showMessageDialog(null, "image saved as " + name + ".png", "Saved", JOptionPane.INFORMATION_MESSAGE); } else { JOptionPane.showMessageDialog(null, "enter name to be saved", "No image name", JOptionPane.ERROR_MESSAGE); } } catch (Exception e) { System.out.println(e.getMessage()); } }