小编use*_*648的帖子

如何获取和比较libcurl版本?

我正在使用libcurl设置OAuth 2.0访问令牌。从libcurl 7.33 CURLcode curl_easy_setopt(CURL *handle, CURLOPT_XOAUTH2_BEARER, char *token);选项开始。现在,我需要获取libcurl版本并将其与7.33进行比较。如果版本为7.33或更高版本,我将使用CURLOPT_XOAUTH2_BEARER,否则我将做其他事情。我知道我应该以某种方式使用,curl_version_info_data *curl_version_info( CURLversion type );但我不知道struct中的数据是什么样子以及如何将它们与7.33版本进行比较。有人能帮我吗?

c version libcurl

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

如何将缓冲图像中的 IndexColorModel 设置为具有某些颜色和一种透明?

我正在尝试绘制一个显示某物质量的条形图。

我创建了一个这样的缓冲图像:

 private static BufferedImage createBufferedImage(int width, int height) {
        int[] palette = {0x00ff00ff, 0xffff00ff, 0xff0000ff , 0xffff0000};
        IndexColorModel colorModel = new IndexColorModel(2, 4,
            palette, 0, true, 0, DataBuffer.TYPE_BYTE);
        return new BufferedImage(width,height,BufferedImage.TYPE_BYTE_INDEXED, colorModel);
    }  
Run Code Online (Sandbox Code Playgroud)

colorModel 应该有颜色:绿色、黄色、红色和一种透明的。条的颜色取决于质量,如下所示:

 private static Color getBarColor(double quality) {
        if (quality >= 0.70) {
            return Color.GREEN;
        } else if (quality >= 0.40) {
            return Color.YELLOW;
        } else {
            return Color.RED;
        }
    }
Run Code Online (Sandbox Code Playgroud)

我正在创建图形来绘制条形并设置颜色:

Graphics2D g = image.createGraphics();
g.setColor(getBarColor(quality));
Run Code Online (Sandbox Code Playgroud)

但是,当我将质量的颜色设置为大于 0.7 时,它会绘制蓝色条,而对于低于 0.7 的质量,id 会绘制红色。

我认为问题出在我的调色板上,我没有正确设置颜色,当我试图获得绿色并且它不在那里时,设置的可能最接近。我认为格式 RRGGBBAA 应该用于 …

java graphics bufferedimage

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

标签 统计

bufferedimage ×1

c ×1

graphics ×1

java ×1

libcurl ×1

version ×1