A. java截取图片
呵呵,很明确的告诉你:可以!
代码半小时后出来!!!
……
终于出来了(呵呵,好像超过了半小时哈)且看代码:
importjava.awt.Color;
importjava.awt.Graphics;
importjava.awt.image.BufferedImage;
importjava.io.File;
importjava.io.IOException;
importjavax.imageio.ImageIO;
importjavax.swing.JApplet;
publicclassTestextendsJApplet{
Stringaddrs="F:\images\mm.bmp";//改成自己的图片路径
BufferedImagemm,child;
CutImageci;
publicTest(){
try{
mm=ImageIO.read(newFile(addrs));
}catch(IOExceptione){
System.out.println("图片读取失败!");
e.printStackTrace();
}
ci=newCutImage(mm);
child=ci.getChildImage(50,0,150,220);
}
publicvoidinit(){
}
publicvoidpaint(Graphicsg){
g.setColor(Color.red);
g.drawString("原图:",0,10);
g.drawImage(mm,20,10,this);
g.drawString("ci.getChildImage(50,0,150,220)截取后的图片",mm.getWidth()+30,10);
g.drawImage(child,mm.getWidth()+50,20,this);
}
}
importjava.awt.Image;
importjava.awt.image.BufferedImage;
publicclassCutImage{
privateBufferedImageimg;
privateBufferedImagechild;
publicCutImage(){
}
publicCutImage(BufferedImageim){
img=im;
}
publicCutImage(Imageim){
img=(BufferedImage)im;
}
publicvoidsetImg(BufferedImageimg){
this.img=img;
}
(intx,inty,intwidth,intheight){
intcw=width;
intch=height;
intpw=img.getWidth();
intph=img.getHeight();
if(pw<x+width){
System.out.println("给出的参数超出原图片的范围!程序会自动减小宽度或高度");
cw=pw-x;
}
if(ph<y+height){
System.out.println("给出的参数超出原图片的范围!程序会自动减小宽度或高度");
ch=ph-y;
}
child=newBufferedImage(cw,ch,BufferedImage.TYPE_INT_ARGB);
for(inti=0;i<ch;i++){
for(intj=0;j<cw;j++){
child.setRGB(j,i,img.getRGB(x+j,y+i));
}
}
returnchild;
}
}
呵呵,希望楼主能够满意哦,如果你愿意的话,稍微改一下代码就可以把截取的图片child报春到你的电脑上了。下面程序的运行效果吧!
B. 用java怎么读取图片
思路:使用 java.awt.Image包下的Image可以接收图片。读取则使用ImageIO对象。
代码如下:
/**
* 读取图片,首先导入以下的包
*/
import java.awt.Image;
import javax.imageio.ImageIO;
import java.io.*;
/**
* 用Image对象来接收图片
* 路径根据实际情况修改
*/
Image image = ImageIO.read(new File("c:\\1.png"));
System.out.println(image.getSource());
C. Java爬虫爬取图片
httpclient +jsoup解决问题
D. 如何用java代码获取 这个网页上的图片
你也没说是要把图片下载下来还是什么的
这里我实现的是将图片下载到电脑
importjava.io.File;
importjava.io.FileNotFoundException;
importjava.io.FileOutputStream;
importjava.io.IOException;
importjava.io.InputStream;
importjava.net.HttpURLConnection;
importjava.net.MalformedURLException;
importjava.net.URL;
publicclassDownLoad{
publicstaticvoidmain(String[]args){
FiledstFile=newFile("E:/test/test/test.jpg");
try{
URLurl=newURL("http://mmbiz.qpic.cn/mmbiz/18oibvzQ4h2PROnwgdEIg/0");
HttpURLConnectionconn=(HttpURLConnection)url.openConnection();
InputStreamis=conn.getInputStream();
saveFile(is,dstFile);
}catch(MalformedURLExceptione){
e.printStackTrace();
}catch(IOExceptione){
e.printStackTrace();
}
}
publicstaticvoidsaveFile(InputStreamis,FiledstFile){
FileOutputStreamfos=null;
FileparentFile=dstFile.getParentFile();
if(!parentFile.exists()){
parentFile.mkdirs();
}
try{
fos=newFileOutputStream(dstFile);
byte[]buff=newbyte[1024*4];
intlen;
while((len=is.read(buff))!=-1){
fos.write(buff,0,len);
}
}catch(FileNotFoundExceptione){
e.printStackTrace();
}catch(IOExceptione){
e.printStackTrace();
}finally{
try{
if(is!=null){
is.close();
}
if(fos!=null){
fos.close();
}
}catch(IOExceptione){
e.printStackTrace();
}
}
}
}
E. java 编写客户端 获取图片
packagecom;
importjava.io.File;
importjava.util.Iterator;
importcom.drew.imaging.jpeg.JpegMetadataReader;
importcom.drew.imaging.jpeg.JpegProcessingException;
importcom.drew.metadata.Directory;
importcom.drew.metadata.Metadata;
importcom.drew.metadata.Tag;
importcom.drew.metadata.exif.ExifDirectory;
importcom.drew.metadata.exif.GpsDirectory;
importcom.drew.metadata.jpeg.JpegDirectory;
publicclassTest{
publicstaticvoidmain(String[]args){
FilejpegFile=newFile("F:/图片定位/DCIM/P20130116_125539.jpg");
Metadatametadata;
try{
metadata=JpegMetadataReader.readMetadata(jpegFile);
Directoryexif=metadata.getDirectory(ExifDirectory.class);
Iteratortags1=exif.getTagIterator();
while(tags1.hasNext()){
Tagtag=(Tag)tags1.next();
System.out.println(tag);
}
Directoryjpeg=metadata.getDirectory(JpegDirectory.class);
Iteratortags2=jpeg.getTagIterator();
while(tags2.hasNext()){
Tagtag=(Tag)tags2.next();
System.out.println(tag);
}
Directorygps=metadata.getDirectory(GpsDirectory.class);
Iteratortags3=gps.getTagIterator();
while(tags3.hasNext()){
Tagtag=(Tag)tags3.next();
System.out.println(tag);
}
}catch(JpegProcessingExceptione){
e.printStackTrace();
}
}
}
F. 网络爬虫 抓取图片问题 Java
大部分网络抓图都是网页上带的有图片url的那种。高级的网络抓图支持部分Javascript
,其实原理和抓取html页面的一样,解析并拼接javascript中的图片地址,然后批量抓取。
G. 如何用java实现从显示器上指定坐标抓取a*b像素的图片
Java里面有个ToolKit的现成的截屏的东西,截出来放在BufferImage里想咋处理都行哇,不过这取到的可能是全屏,在缓冲区里可以以字节指定位置么,不过算法要自己写,应该也不会太难的,就是从一个大的字节缓冲区中,一小段一小段的根据偏移点和结束点取一行一行的字节,一个矩形区域可以由左上角一点到右下角一点决定,把这些字节拼成一个小的图像。要是不想自己写算法的话,网上一大堆呢,不过都是C代码,自己照猫画虎地写呗!
H. Java中怎么抓取网页中的图片
通过httpclient来爬取网站内容,分析当前内容页中的图片‘规则’
抓取一般都是模拟浏览器访问目标网页,通过返回的页面html代码进行分析自己需要的数据
查找规则,例如你爬取的网页 ,看到当前页面显示的图片格式如下<img src="http://www..com/img/20101025_user.png">
通过解析爬取的网页源代码(html)进行字符串的操作即可,现在有相应的第三方jar包可以帮你更快的完成这部分工作,例如htmlpaser,获取到对应的地址,然后进行保存或下载。
你可以搜索,java爬虫(httpclient)和htmlpaser做更多的了解。
I. java中如何获取特定目录下的图片
ClassLoader/Class的getResource/getResourceAsStream 是从CLASSPATH中获取资源。
可以在eclipse的项目下新建一个resources目录,把images文件夹放到这个目录下,然后把resources加到Build Path里。
J. 使用Java的IO读取图片
package test;
import java.io.BufferedInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
public class DownloadFile {
public static void getSong(String _path, String _savePath) {
String savePath = _savePath;
String path = _path;
int BYTE_SIZE = 1;
int SAVE_SIZE = 1024;
byte[] buff = new byte[BYTE_SIZE]; // 每次读的缓存
byte[] save = new byte[SAVE_SIZE]; // 保存前缓存
BufferedInputStream bf = null;
FileOutputStream file;
URL url = null;
HttpURLConnection httpUrl;
try {
url = new URL(path);
httpUrl = (HttpURLConnection) url.openConnection();
System.out.println("已经打开连接....");
bf = new BufferedInputStream(httpUrl.getInputStream());
System.out.println("已经获取资源......");
file = new FileOutputStream(savePath);
System.out.println("准备保存到:" + savePath);
System.out.println("开始读入......");
int i = 0;
while (bf.read(buff) != -1) { // 一个字节一个字节读
save[i] = buff[0];
if (i == SAVE_SIZE - 1) { // 达到保存长度时开始保存
file.write(save, 0, SAVE_SIZE);
save = new byte[SAVE_SIZE];
i = 0;
} else {
i++;
}
}
// 最后这段如果没达到保存长度,需要把前面的保存下来
if (i > 0) {
file.write(save, 0, i - 1);
}
System.out.println("下载成功!!!");
httpUrl.disconnect();
file.close();
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally {
try {
bf.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
public static void main(String[] args) {
try {
DownloadFile.getSong(
"http://wap.sonyericsson.com/UAprof/K700cR201.xml",
"D://1.xml");
DownloadFile.getSong(
"http://nds1.nds.nokia.com/uaprof/NN78-1r100.xml",
"D://2.xml");
DownloadFile.getSong("http://www.sohu.com", "D://3.xml");
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}