當前位置:首頁 » 編程語言 » javaimage

javaimage

發布時間: 2022-09-11 19:41:22

『壹』 java如何為image類型賦值

image數據類型是sqlserver中用來存貯變長的二進制數據,取值范圍在跟int數據類型一樣,所以在java中對應的數據類型可以是int,因為是二進制,也可以試試byte[],具體是int還是byte[]好,我沒用過,你可以試試。

『貳』 關於java里image的用法

先要設置圖片路徑,我們將一將背景圖片back.jpg放到C盤的img目錄下,調用語句如下:
ImageIcon icon=new ImageIcon("C:\\img\\back.jpg),一定要是雙反斜杠
然後分別在JComponent里添加圖片
JFrame
利用JFrame的一個方法setIconImage(Image image);
由於要用到Image類,所以還得把上面定義的ImageIcon對象轉換成Image對象:
Image image=icon.getImage();
然後就可以調用JFrame的setIconImage(image)方法了。

還要注意一點的是,由於有些圖片的格式JVM不能識別,所以要轉格式,一般為jpg,gif.如把.bmp格式的轉換為.jpg,不能簡單的把後綴名改了就行,這樣照樣不能顯示。方法很簡單,直接用WINDOWS自帶的畫圖工具打開圖片,然後另存為時改為.jpg或.gif格式就可以了。
附源代碼
import java.awt.Image;
import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JMenu;
import javax.swing.tree.DefaultTreeCellRenderer;
import javax.swing.tree.DefaultMutableTreeNode;
import javax.swing.JTree;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import java.awt.FlowLayout;

public class ImageTest extends JFrame{
ImageIcon icon=new ImageIcon("c:\\img\\system.jpg");
Image image=icon.getImage();
public ImageTest()
{
JMenuBar mb=new JMenuBar();
this.setJMenuBar(mb);
JMenu menu=new JMenu("system");
menu.setIcon(icon);
//JMenuItem item=new JMenuItem("exit",icon);
JMenuItem item=new JMenuItem(icon);
item.setIcon(icon);
JLabel label=new JLabel(icon);
//label.setIcon(icon);
menu.add(item);
mb.add(menu);

DefaultMutableTreeNode root=new DefaultMutableTreeNode();
DefaultMutableTreeNode node1=new DefaultMutableTreeNode();
DefaultMutableTreeNode node11=new DefaultMutableTreeNode();
DefaultMutableTreeNode node12=new DefaultMutableTreeNode();
DefaultMutableTreeNode node2=new DefaultMutableTreeNode();
DefaultMutableTreeNode node21=new DefaultMutableTreeNode();
root.add(node1);
root.add(node2);
node1.add(node11);
node1.add(node12);
node2.add(node21);

JTree jTree1 = new javax.swing.JTree(root);
DefaultTreeCellRenderer renderer = new DefaultTreeCellRenderer();
renderer.setOpenIcon(new ImageIcon("C:\\img\\down.jpg")); //展開時節點圖標
renderer.setClosedIcon(new ImageIcon("C:\\img\\file.jpg")); //折疊時節點圖標
renderer.setLeafIcon(new ImageIcon("C:\\img\\man_small.jpg")); //葉子節點圖標
jTree1.setCellRenderer(renderer);
this.add(label);
this.setIconImage(image);

this.add(jTree1);
this.setDefaultCloseOperation(3);
this.setLocation(300,400);
this.pack();
this.setVisible(true);
}
public static void main(String[] args)
{
new ImageTest();
}
}

『叄』 Java:Image和BufferedImage的區別是什麼

Image是一個抽象類,BufferedImage是Image的實現類。
Image和BufferedImage的主要作用就是將一副圖片載入到內存中。
BufferedImage 子類描述具有可訪問圖像數據緩沖區的 Image。BufferedImage 由圖像數據的 ColorModel 和 Raster 組成。Raster 的 SampleModel 中 band 的數量和類型必須與 ColorModel 所要求的數量和類型相匹配,以表示其顏色和 alpha 分量。所有 BufferedImage 對象的左上角坐標都為 (0, 0)。因此,用來構造 BufferedImage 的任何 Raster 都必須滿足:minX=0 且 minY=0。

Java將一副圖片載入到內存中的方法是:

String imgPath = "D://demo.bmp";
BufferedImage image = ImageIO.read(new FileInputStream(imgPath));

該方法BufferedImage 可以獲得圖片的詳細信息,例如:獲得圖片的寬度:image.getWidth(null);圖片只有載入內存中才能對圖片進行進一步的處理。

『肆』 怎樣使用java讀取image

這是一個圖片壓縮代碼,以前入職的時候照片必須得20k一下,所以我把100多k的照片壓縮成了16k,你可以看一下

package com.atee.test;

import java.awt.image.BufferedImage;
import java.awt.image.ColorModel;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;

import javax.imageio.IIOImage;
import javax.imageio.ImageIO;
import javax.imageio.ImageWriteParam;
import javax.imageio.ImageWriter;

public class ImageShrink {

public static boolean compressPic(String srcFilePath, String descFilePath) throws IOException {
File file = null;
BufferedImage src = null;
FileOutputStream out = null;
ImageWriter imgWrier;
ImageWriteParam imgWriteParams;

// 指定寫圖片的方式為 jpg
imgWrier = ImageIO.getImageWritersByFormatName("jpg").next();
imgWriteParams = new javax.imageio.plugins.jpeg.JPEGImageWriteParam(
null);
// 要使用壓縮,必須指定壓縮方式為MODE_EXPLICIT
imgWriteParams.setCompressionMode(imgWriteParams.MODE_EXPLICIT);
// 這里指定壓縮的程度,參數qality是取值0~1范圍內,
imgWriteParams.setCompressionQuality((float) 0.7);
imgWriteParams.setProgressiveMode(imgWriteParams.MODE_DISABLED);
ColorModel colorModel =ImageIO.read(new File(srcFilePath)).getColorModel();// ColorModel.getRGBdefault();
// 指定壓縮時使用的色彩模式
// imgWriteParams.setDestinationType(new javax.imageio.ImageTypeSpecifier(
// colorModel, colorModel.createCompatibleSampleModel(16, 16)));
imgWriteParams.setDestinationType(new javax.imageio.ImageTypeSpecifier(
colorModel, colorModel.createCompatibleSampleModel(16, 16)));

try {
if (isBlank(srcFilePath)) {
return false;
} else {
file = new File(srcFilePath);System.out.println(file.length());
src = ImageIO.read(file);
out = new FileOutputStream(descFilePath);

imgWrier.reset();
// 必須先指定 out值,才能調用write方法, ImageOutputStream可以通過任何
// OutputStream構造
imgWrier.setOutput(ImageIO.createImageOutputStream(out));
// 調用write方法,就可以向輸入流寫圖片
imgWrier.write(null, new IIOImage(src, null, null),
imgWriteParams);
out.flush();
out.close();
}
} catch (Exception e) {
e.printStackTrace();
return false;
}
return true;
}
public static boolean isBlank(String string) {
if (string == null || string.length() == 0 || string.trim().equals("")) {
return true;
}
return false;
}
public static void main(String[] args) throws IOException {
compressPic("C:\\358x441 - 111.jpg", "C:\\358x441 - 333.jpg");
}
}

『伍』 java中ImageIcon和Image的區別是什麼

ImageIcon和Image的區別:

ImageIcon:

ImageIcon位於javax.swing包中。可以根據Image繪制Icon(這句話很關鍵),可以使用MediaTracker預載圖像(Image也可以)

構造方法不少,舉幾個常用的:

ImageIcon(Image image);

ImageIcon(String name);

ImageIcon(URL url);

Image:

來自於java.awt包中,抽象類Image是表示圖形圖像的所有類的超類,必須以特定於平台的方式獲取圖像。

它的主要方法是:

Image getScaledInstance(int width,int height,int hints)

『陸』 java中,image是一個圖形對象,從image得到畫筆g,用g畫出的圖形都在image上嗎

對的。 此時的image對象將所有的繪制的圖形的數據都保存在了內存中。

『柒』 怎麼把java中的Image對象保存到硬碟上

javax.imageio.ImageIO

public static boolean write(RenderedImage im,
String formatName,
File output)
throws IOException

使用支持給定格式的任意 ImageWriter 將一個圖像寫入 File。如果已經有一個 File 存在,則丟棄其內容。

參數:
im - 要寫入的 RenderedImage。
formatName - 包含格式的非正式名稱的 String。
output - 將在其中寫入數據的 File。
返回:
如果沒有找到合適的 writer,則返回 false。
拋出:
IllegalArgumentException - 如果任何參數為 null。
IOException - 如果在寫入過程中發生錯誤。

即可

『捌』 Java Image 獲得相對路徑資源方法。

用System.getProperty("user.dir")+"相對的路徑" 即可。
或者直接用
getInstance("images/image-left.jpg");試試。

『玖』 java Image怎麼獲取圖片的長寬

通過getHeight和getwidth方法獲取長和寬

比如:

System.out.println("圖片長度:"+image.getHeight());
System.out.println("圖片寬度:"+image.getWidth());

補充:

Image是一個抽象列,BufferedImage是Image的實現。
Image和BufferedImage的主要作用就是將一副圖片載入到內存中,在內存中能對圖片的信息進行獲取。

熱點內容
網路登錄伺服器需要獲取什麼信息 發布:2025-01-12 12:17:32 瀏覽:890
mac終端打開文件夾 發布:2025-01-12 12:17:31 瀏覽:295
第一次安裝如何設置mysql密碼 發布:2025-01-12 12:09:02 瀏覽:280
如何刪除微信伺服器上收藏 發布:2025-01-12 12:08:20 瀏覽:102
吃雞游戲安卓區轉蘋果區怎麼轉 發布:2025-01-12 11:34:00 瀏覽:880
網頁版c語言 發布:2025-01-12 11:21:01 瀏覽:864
安卓怎麼更改排位常用英雄 發布:2025-01-12 11:10:33 瀏覽:561
拆遷的100萬如何配置 發布:2025-01-12 11:08:52 瀏覽:575
如何配置ph值為次氯酸鈉的ph值 發布:2025-01-12 11:08:52 瀏覽:437
pythonarraynumpy 發布:2025-01-12 11:01:47 瀏覽:293