当前位置: 首页 > 知识库问答 >
问题:

我可以在Java中更改jpg图像的分辨率吗?

黄彬
2023-03-14

我有一些. jpg,我正在面板中显示。不幸的是,它们都是大约1500x1125像素,这对我来说太大了。有没有一种编程方法来改变这些. jpg的分辨率?

共有3个答案

宓英哲
2023-03-14

你可以试试:

private BufferedImage getScaledImage(Image srcImg, int w, int h) {
    BufferedImage resizedImg = new BufferedImage(w, h, Transparency.TRANSLUCENT);
    Graphics2D g2 = resizedImg.createGraphics();
    g2.setRenderingHint(RenderingHints.KEY_INTERPOLATION, RenderingHints.VALUE_INTERPOLATION_BILINEAR);
    g2.drawImage(srcImg, 0, 0, w, h, null);
    g2.dispose();
    return resizedImg;
}                         
程天佑
2023-03-14

将其加载为ImageIcon,这将实现以下功能:

import java.awt.Graphics2D;
import java.awt.image.BufferedImage;
import javax.swing.ImageIcon;

public static ImageIcon resizeImageIcon( ImageIcon imageIcon , Integer width , Integer height )
{
    BufferedImage bufferedImage = new BufferedImage( width , height , BufferedImage.TRANSLUCENT );

    Graphics2D graphics2D = bufferedImage.createGraphics();
    graphics2D.drawImage( imageIcon.getImage() , 0 , 0 , width , height , null );
    graphics2D.dispose();

    return new ImageIcon( bufferedImage , imageIcon.getDescription() );
}
左丘元徽
2023-03-14

您可以使用Graphics2D方法(从java.awt)缩放图像。本教程在mkyong提供。com对此进行了深入的解释。

 类似资料:
  • 问题内容: 我需要使用Java程序减小图像的大小(而不是宽度和高度)。他们为此提供了任何好的API吗? 我需要将大小从1MB减少到大约50kb-100 kb。当然,分辨率会降低,但这并不重要。 问题答案: 这是工作代码 这段代码对我来说很棒。如果需要调整图像大小,则可以在此处更改x和y比例J;

  • 我正在用Java Swing和AWT(Java 8)设计一个GUI,我正在努力使用我使用的图标。 我加载一个大的PNG图像并将其缩放到18x18px,然后在按钮或标签中使用它。当操作系统不放大时,它在所有分辨率下都能很好地工作。 然而,随着大屏幕分辨率(hidpi)的出现,使用操作系统设置放大用户交互界面控件是一种常见的做法,包括Java应用程序中的按钮等。例如,在Windows上,我使用具有4K

  • 我已经开发了一个2D侧滚动平台一段时间了。这是我的第一场正式比赛,快结束了。到目前为止,我还没有过多考虑过决议。 我的游戏是基于瓷砖的,大多数瓷砖和玩家精灵都是。尺寸为40x40像素的PNG文件。默认屏幕高度和宽度为1280x720。据我所知,现在的大多数游戏都有很多不同的分辨率选择和不同的纵横比。 我想给玩家几个分辨率的选择,比如800x600、1024x768和1280x720。这需要这样做,

  • 在Java 9中,已经推出了一种新的多分辨率图像API,支持具有不同分辨率变体的多个图像。 该API允许将具有不同分辨率的一组图像用作单个多分辨率图像。 以下是多分辨率图像的主要操作。 - 获取一个特定的图像,这是最好的变体,以指定的尺寸表示这个逻辑图像。 - 获取所有分辨率变体的可读列表。 示例 执行上面示例代码,得到以下结果 -

  • 如何通过编程创建一个图像/图标/位图,仅使用SE即无库,在Java中显示n个分辨率。 e、 g.一系列解决方案,如 到 分辨率的位置无关紧要,但最好如图所示。 使用自定义颜色/字体?甚至可能只是一行,而不是固体填充?

  • 我看过使用PDFBox基于图像DPI提取图像的代码,如下所示 在上面的代码中,我可以指定图像分辨率(150),同时从pdf中提取图像。更高的分辨率,我得到更大的图像作为回报。 现在,我想反转它的意思是在将图像写入PDF时指定图像的分辨率/dpi,但下面的代码没有提供指定dpi的选项吗?有谁能指引我在哪里失踪 在将图像写入pdf时,请告诉我在哪里可以传递分辨率/DPI参数(因为图像大于pdf页面大小