小编joc*_*pa3的帖子

将动画GIF编码为Base64

我一直在寻找一种方法来将动画GIF从给定的URL编码到base64而不使用像jquery这样的外部库(如果绝对必要,我将使用它).我找到了将静态图像编码为base64的结果,但它们都使用了canvas,并且canvas.toDataURL()只编码动画GIF的单帧.有没有办法将动画GIF(或任何图像)编码到base64而不使用canvas

javascript base64 animated-gif

6
推荐指数
1
解决办法
2390
查看次数

能够将Java应用程序设置为默认文件打开器吗?

我一直在寻找一种方法让用户将我的程序设置为默认打开文件一段时间,什么也没找到.我有一个应该是Mac,Windows和Linux通用的程序,所以我不想使用只适用于一个操作系统的方法.那么如何让用户能够将Java应用程序设置为默认的文件打开器?我会使用Desktop类吗?

java default file set file-association

5
推荐指数
1
解决办法
1382
查看次数

有没有更快的方法来获取屏幕截图中的颜色?

我有一段代码,它的作用是找到图像(或屏幕的一部分)的颜色,如果 RG 和 B 颜色大于 127,则将 1 放在 2D int 数组的相应位置。这是我现在拥有的部分,但显然非常慢。有一个更好的方法吗?

private void traceImage(){
    try{
        Robot r = new Robot();
        b = new int[470][338];
        for(int y = 597; y < 597+469; y++)
        {
            for(int x = 570; x < 570+337; x++)
            {
                if(r.getPixelColor(x,y).getRed() > 127 &&
                   r.getPixelColor(x,y).getGreen() > 127 && 
                   r.getPixelColor(x,y).getBlue() > 127)
                {
                    b[y-597][x-570] = 1;
                }
                else
                {
                    b[y-597][x-570] = 0;
                }
            }
        }
    }
    catch(Exception ex){System.out.println(ex.toString());}
}
Run Code Online (Sandbox Code Playgroud)

必须有一种更快的方法来使用上面的值来做到这一点。b是 int 数组,它在此段中初始化。r是一个机器人,我用它来查找屏幕上像素的颜色。x并且y …

java screenshot image image-processing awtrobot

5
推荐指数
1
解决办法
777
查看次数

table.sort使用什么算法?

我很好奇Lua默认table.sort使用什么算法,只是因为它比我遇到的其他一些排序算法慢.如果Lua table.sort是用C语言编写的,或者它是在Lua的库中,我也很好奇.

sorting lua lua-table

5
推荐指数
1
解决办法
1559
查看次数

如何在不使用while循环的情况下运行服务器?

我正在尝试使用DatagramSocket和DatagramPacket类创建一个服务器程序,但是我当前的代码使用了一个丑陋的while循环,它在服务器运行时也冻结了我的程序,但服务器运行良好而没有任何问题.无论如何,代码如下.无论如何我可以使用不同于while循环的东西或阻止while循环阻止程序中的任何其他代码执行?

protected void run() {
    try {
        socket = new DatagramSocket(port);
        socket.setBroadcast(true);
    } catch (Exception e) {
        e.printStackTrace();
        stopServer(); //stop the server
        return; 
    }
    while(isRunning()){ //hate this loop
        try {
            byte[] buf = new byte[256];
            DatagramPacket packet = new DatagramPacket(buf, 256);
            socket.receive(packet);
            DatagramPacket serverPacket;
            byte[] serverBuf;
            byte hb = 0;
            byte lb = packet.getData()[0];
            int e = ((int)hb<<8)|((int)lb&0xFF); //translate byte to int
            switch(e) {
                case 2:
                    //do something
                    break;
                case 5:
                   //do something
                   break;
                case 7:
                    //do something
                    break;
                default: …
Run Code Online (Sandbox Code Playgroud)

java multithreading datagram

3
推荐指数
1
解决办法
1113
查看次数

如何抛出ArrayIndexOutOfBoundsException?

我有一个检查2D数组中的斑点的方法,它还检查它们是否为空.我想扔掉ArrayIndexOutOfBoundsException因为我已经检查了null.

throws ArrayIndexOutOfBoundsException在声明方法后尝试添加,但它不起作用.我该怎么做呢?

java arrays throw indexoutofboundsexception

2
推荐指数
1
解决办法
1万
查看次数