「java图片等比缩小」java压缩图片大小不改变图片分辨率

博主:adminadmin 2022-12-16 10:00:09 73

今天给各位分享java图片等比缩小的知识,其中也会对java压缩图片大小不改变图片分辨率进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

java怎么实现通过鼠标滚轮对图片进行等比例缩放功能?

给你个实例吧

public class Anniu extends JFrame implements MouseWheelListener {

private static final long serialVersionUID = 1L;

JLabel jl = null;

ImageIcon image = new ImageIcon("F://12.jpg");

public Anniu() {

}

public void init() {

setLayout(null);

jl = new JLabel(image);

setSize(800, 600);

jl.setBounds(300, 200, 200, 200);

add(jl);

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

this.addMouseWheelListener(this);

setVisible(true);

}

@Override

public void mouseWheelMoved(MouseWheelEvent e) {

// TODO Auto-generated method stub

int num = e.getWheelRotation();

int x = (this.getWidth() - jl.getWidth()) / 2;

int y = (this.getHeight() - jl.getHeight()) / 2;

int width=jl.getWidth()+ 2 * num;

int height=jl.getHeight()+ 2 * num;

jl.setIcon(new ImageIcon( image.getImage().getScaledInstance(width, height, Image.SCALE_SMOOTH))); //重点1:按所给的大小来设置图片,不管图片有多大,总是全图显示,可能导致失真!你可以加一个大小限制,超过图片大小了则不再放大。

jl.setBounds(x + num, y + num, width, height);

this.repaint(); //刷新屏幕

}

java将图片按比例缩小

Image srcImg = ImageIO.read(new FileInputStream(fnSrc) );//取源图

int width = 600; //假设要缩小到600点像素

int height = srcImg.getHeight(null)*600/srcImg.getWidth(null);//按比例,将高度缩减

System.out.println("Width: "+srcImg.getWidth(null));// 这几行是调试用

System.out.println("Height: "+srcImg.getHeight(null));

System.out.println("Width2: "+width);

System.out.println("Height2: "+height);

Image smallImg =srcImg.getScaledInstance(width, height, Image.SCALE_SMOOTH);//缩小

java是怎么实现等比例缩小图片而不失真的啊?

按照等比例的长宽进行缩放就可以了呀,就好像你打开一个图片,一般都有缩放功能,原理是一样的,等比例的缩放,关键像素还是存在的。

java实现 图片等比缩放的原理

这在算缩放率啊.是用的这个吧?

getWidth(ImageObserver) - Method in class java.awt.Image

可能ImageObserver没有所以用Null

0.1好像是怕rate是0出问题,或是java的float运算要求的.

java的数值运算好像不是强项.

java怎样等比缩放截图

Image srcImg = ImageIO.read(new FileInputStream(fnSrc) );//取源图

int width = 600; //假设要缩小到600点像素

int height = srcImg.getHeight(null)*600/srcImg.getWidth(null);//按比例,将高度缩减

System.out.println("Width: "+srcImg.getWidth(null));// 这几行是调试用

System.out.println("Height: "+srcImg.getHeight(null));

System.out.println("Width2: "+width);

System.out.println("Height2: "+height);

Image smallImg =srcImg.getScaledInstance(width, height, Image.SCALE_SMOOTH);//缩小

关于java图片等比缩小和java压缩图片大小不改变图片分辨率的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

The End

发布于:2022-12-16,除非注明,否则均为首码项目网原创文章,转载请注明出处。