相关疑难解决方法(0)

图像上的Java文本

我在bufferedimage中加载一个图像,然后在其上写一些文字.我添加文本后,它会使图像模糊,文本失真.我有文本ANTIALIASING ON.可以看作附件.

在此输入图像描述

java graphics image image-processing antialiasing

5
推荐指数
2
解决办法
7072
查看次数

线程会降低PC的速度并导致java.lang.OutOfMemoryError

我正在做的是制作一个程序,不断截取用户桌面的截图,并在用户需要时保存它们.我最初调用了一个方法来捕获一个while方法,但是这个方法太慢了,我需要尽可能多的图像.我决定做的是使用线程.

当程序运行时,我的PC变慢(即鼠标闪烁,移动缓慢等),当我停止程序时,我得到以下错误.

Exception in thread "Thread-294" java.lang.OutOfMemoryError: Java heap space
at sun.awt.windows.WRobotPeer.getRGBPixels(Unknown Source)
at java.awt.Robot.createScreenCapture(Unknown Source)
at maple.Record.run(Record.java:29)
Run Code Online (Sandbox Code Playgroud)

这是产生错误的行.

img = r.createScreenCapture(new Rectangle (0, 0, width, height));
Run Code Online (Sandbox Code Playgroud)

这是包含线程的我的类.

import java.awt.AWTException;
import java.awt.Rectangle;
import java.awt.Robot;
import java.awt.Toolkit;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import java.net.MalformedURLException;
import java.util.Vector;
import javax.imageio.ImageIO;
import javax.media.MediaLocator;

public class Record implements Runnable {

    Robot r;
    static int width = (int) Toolkit.getDefaultToolkit().getScreenSize().getWidth();
    static int height = (int) Toolkit.getDefaultToolkit().getScreenSize().getHeight();
    BufferedImage img;
    public static boolean stop = false;

    public void …
Run Code Online (Sandbox Code Playgroud)

java multithreading

0
推荐指数
1
解决办法
424
查看次数