调色板的十六进制数字字符串



我有一个由十六进制数字组成的庞大字符串。我想用这个字符串制作一个图像,其中每个像素的颜色值由这个巨大字符串中的(第一个、第二个、第三个…)6个字母的字符串定义。我希望这张照片看起来像这样:https://i.stack.imgur.com/8jKGx.jpg.尽管会有更多的像素。

当涉及到编码时,我是一个傻瓜,所以任何帮助/指针都将不胜感激!我已经通过手动将十六进制值输入到illustrator中进行了一些测试,但这需要太长时间。

您应该循环遍历字符串,按6计数,以提取出每个单独的颜色。我建议使用python,因为一旦获得所有值,您也可以使用库来创建图像。

看看这个问题,了解循环技巧:在Python 中一次遍历字符串2(或n)个字符

这应该可以工作。这将从字符串hexString创建一个具有定义的高度和宽度的BufferedImage。然后,您可以将其绘制到JPanel或保存到文件中。

BufferedImage bi = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);
Graphics2D g = (Graphics2D) bi.getGraphics();
for(int i = 0; i < hexString.length(); i += 6){
    int x = i % width;
    int y = (int) Math.floor(i / width);
    Color hexColor = new Color(Integer.parseInt(hexString.substring(i, i + 6), 16);
    g.drawRect(x, y, 1, 1);
}

相关内容

最新更新