Tag: 图像

将Java游戏转换为Applet; 不要加载图片

所以我用Java做了一个相当大的游戏,我打算把它放在我的网站上,所以我搞砸了它并把它变成了一个小程序。 它启动并运行完美,唯一的问题是它不会加载任何图片。 这是我目前正在做的方式:(请记住,这是一个JPanel扩展类,我在applet类中创建了一个对象并添加到applet中) 在Screen(JPanel)类中: for (int i = 0; i < tileset_ground.length; i++) { tileset_ground[i] = frame.loadImage("res/tileset_ground.png"); tileset_ground[i] = createImage(new FilteredImageSource(tileset_ground[i].getSource(), new CropImageFilter(0, 26 * i, 26, 26))); } 在框架(applet)类中: public Image loadImage(String url){ return getImage(getCodeBase(), url); }

Java扫描程序问题(JFrame)

我正在尝试使用扫描仪编辑塔防游戏的等级。 但是它不会将级别(平铺图像)更新为自定义文件的级别(0是草1是石头-1是什么,等等)。 我找到了错误,但我如何解决它,我需要添加/更改什么来摆脱这个? java.lang.NullPointerException at Levels.loadLevels(Levels.java:11) at Window.define(Window.java:28) at Window.paintComponent(Window.java:44) 第11行: for(int y=0;y<Window.room.block.length;y++) {第28行: levels.loadLevels(new File(“levels/level1.level”)); 第44行: define(); 这是扫描仪文件: import java.io.*; import java.util.*; public class Levels { public void loadLevels(File loadPath) { try { Scanner loadLevelsScanner = new Scanner(loadPath); while(loadLevelsScanner.hasNext()) { for(int y=0;y<Window.room.block.length;y++) { for(int x=0;x<Window.room.block[0].length;x++) { Window.room.block[y][x].groundID = loadLevelsScanner.nextInt(); } } for(int y=0;y<Window.room.block.length;y++) { […]

如何在java中通过套接字发送图像数据类型

我真的很困惑如何通过套接字发送图像数据类型。 请帮帮我。 我已经了解了如何将Image数据类型转换为char [],但结果为0。

JFrame无法全屏显示所有图像

所以,我正在开展一个需要在图像之间切换的项目。 图像需要处于全屏模式。 我似乎面临着两个问题。 首先是图像切换。 当我在图像之间切换时,切换时某些图像显示正常。 其他人似乎根本不会出现在屏幕上。 我似乎只是得到一个空框架。 其次是正确的键似乎每次都有效,但仅仅为了我的理智,我已经放了系统打印。 系统似乎没有显示在控制台上,但它在框架中切换图像(尽管我有时会得到一个空框架)。 任何建议/解决方案将受到高度赞赏。 关于代码的注意事项:我所拥有的绘制字符串用于测试坐标。 我正在使用Eyetribe,所以只是为了显示我正在寻找的位置。 束带似乎完美无缺。 此外,我正在快速调用switchImage,几乎每秒22次。 这可能是个问题吗? 虽然它让我想知道为什么它适用于某些图像而不适用于其他图像。 更新:问题似乎在g.drawImage中。 它似乎没有绘制一些图像,但我似乎无法弄清楚为什么会发生这种情况。 目前这是我的全屏图像代码。 public void showFrame(){ //jL -> JLabel //jF -> JFrame //jP -> Panel jF.setTitle(“Test”); jF.setUndecorated(true); jF.setResizable(false); jF.setVisible(true); Toolkit tk = Toolkit.getDefaultToolkit(); int xsize = (int)tk.getScreenSize().getWidth(); int ysize = (int)tk.getScreenSize().getHeight(); jF.setSize(xsize, ysize); jF.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); if(testImagesList != null){ img = […]

捕获的图像始终显示横向和setRotate无法解析

这里有很多类似的主题和问题,我遵循这个 。 但我得到错误。 我的代码 @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); if (resultCode == RESULT_OK) { if (requestCode == 1) { //h=0; File f = new File(Environment.getExternalStorageDirectory().toString()); for (File temp : f.listFiles()) { if (temp.getName().equals(“temp.jpg”)) { f = temp; File photo = new File(Environment.getExternalStorageDirectory(), “temp.jpg”); //pic = photo; break; […]

沿着java google-endpoint api提供静态图像

在Python中托管app-engine上的基本网站,我可以将所有图像文件放在静态目录中,比如说img,然后在yaml文件中 – url: /img static_dir: img 然后访问我的图像,我只需要myid.appspot.com/img/pic.jpeg 我需要为Java google-endpoint后端做同样的事情。 那会怎么样? 我正在使用Google-eclipse-plugin。 我想我需要编辑web.xml文件。 但我不确定我会把它放在那里。 我的/img目录的结构是这样的,它依次包含许多目录,每个目录中都有图像。 例如: /img/famousActors/willSmith.jpeg 。 参考在blobstore中存储静态图像

选择,复制和粘贴图像

我想要我的应用程序做什么: 1 – 选择图像区域并获取坐标。 下面的代码应该这样做: import java.awt.*; import java.awt.event.*; import java.awt.image.*; import javax.swing.*; public class ScreenCaptureRectangle { Rectangle captureRect; ScreenCaptureRectangle(final BufferedImage screen) { final BufferedImage screenCopy = new BufferedImage( screen.getWidth(), screen.getHeight(), screen.getType()); final JLabel screenLabel = new JLabel(new ImageIcon(screenCopy)); JScrollPane screenScroll = new JScrollPane(screenLabel); screenScroll.setPreferredSize(new Dimension( (int)(screen.getWidth()/3), (int)(screen.getHeight()/3))); JPanel panel = new JPanel(new BorderLayout()); panel.add(screenScroll, […]

在浏览器中运行时,不会显示Java Applet图像

我终于设法让我的java applet在我的浏览器中运行,但是我现在面临的问题是我的图像都不会显示。 显示的唯一内容是在applet的屏幕中绘制的黑色文本。 为了让applet工作,我不得不导出为jar并自己签名。 现在,我想知道为什么图像不会显示。 我检查过,jar文件确实包含了所有的图像文件。 同样,applet在Eclipse中运行得非常好。 这可能是什么问题? mainscreen = new ImageIcon(“main.png”).getImage(); 是第一个应该访问的图像。 此外,我的所有类,包括applet类都在包中。 图像都在这些包之外。

通过删除java中的透明像素将图像裁剪为最小尺寸

我有一个精灵表,每个图像都以32×32单元为中心。 实际图像不是32×32,而是略小。 我想做的是拍摄一个单元格并裁剪透明像素,使图像尽可能小。 我将如何用Java(JDK 6)做到这一点? 这是我目前如何将瓷砖表拆分为单元格的示例: BufferedImage tilesheet = ImageIO.read(getClass().getResourceAsStream(“/sheet.png”); for (int i = 0; i < 15; i++) { Image img = tilesheet.getSubimage(i * 32, 0, 32, 32); // crop here.. } 我目前的想法是测试中心的每个像素,看看它是否透明,但我想知道是否会有更快/更清洁的方法。

背景图像隐藏所有GUI设计组件

我正在使用GUI应用程序,我使用swing组件来设计GUI。 我想为我的表单设置背景图像,但是当我设置图像时,它会重叠用于设计GUI的所有组件。 首先我没有背景图片的表格如下所示, 我的代码是, Login.java public class Login extends JFrame{ public static JFrame myFrame; public LoginPanel loginPanel; public Login() throws IOException { initilize(); } public void initilize()throws IOException { myFrame = new JFrame(“Message”){ private Image backgroundImage = ImageIO.read(new File(“D:/Sky.jpg”)); public void paint( Graphics g ) { super.paint(g); g.drawImage(backgroundImage, 0, 0, null); } }; myFrame.setLayout(new BorderLayout()); […]