java

位置:IT落伍者 >> java >> 浏览文章

JAVA实现图片的任意方向反转


发布日期:2020年05月30日
 
JAVA实现图片的任意方向反转

package comjunittest;

import javaawtimageBufferedImage;

import javaioFile;

import URL;

import javaximageioImageIO;

import javautil*;

public class Test {

public static void main(String [] args)

{

try {

//本地地址或URL 的图片

//BufferedImage bi = ImageIOread(new URL());

BufferedImage bi = ImageIOread(new File(D:\\jpg));

//截取任意区域的图片

//BufferedImage subimg = bigetSubimage( );

int width = bigetWidth();

int height = bigetHeight();

Systemoutprintln(w:+width);

Systemoutprintln(h:+height);

int [][]datas = new int[width][height];

int [][]datastmp = new int[width][height];

for(int i = ;i< height;i++)

{

for(int j = ;j<width;j++)

{

datas[j][i]= bigetRGB(j i);

datastmp[j][i]= bigetRGB(j i);

Systemoutprint( bigetRGB(j i)+ );

}

Systemoutprintln();

}

int [][] xz = XZ(dataswidthheight);

for(int i = ;i< height;i++)

{

for(int j = ;j<width;j++)

{

bisetRGB(j i xz[j][i]);

}

}

ImageIOwrite(bi JPEG new File(D:\\jpg));

}

/***

* 图片旋转数据处理

* @param datas

* @param width

* @param height

* @param FX 为上下反转 为左右反转

* @return

*/

public static int [][] XZ(int [][] datasint widthint heightint FX)

{

try {

int[][] tmps= new int [width][height];

if(FX==)

{

for(int i = a=height;i< height;i++a)

{

for(int j = b=width;j<width;j++b)

{

tmps[a] = datas[j][i];

}

}

}

else if (FX==)

{

for(int i = ;i< height;i++)

{

for(int j = b=width;j<width;j++b)

{

tmps[i] = datas[j][i];

}

}

}

return tmps;

} catch (Exception e) {

// TODO: handle exception

Systemoutprintln(ex:+egetMessage());

return null;

}

}

               

上一篇:面向Java开发人员的Scala指南: Scala和servlet

下一篇:Java获取网络文件并插入数据库