`
chly1010
  • 浏览: 17520 次
  • 来自: ...
社区版块
存档分类
最新评论

从#FFFFFF格式的颜色转换为 java.awt.Color和 jxl.format.Colour

阅读更多

在以项目中遇到需要把HTML中“#FFFFFF”格式的颜色,转化成jxl.format.Colour,方便把字体的颜色导出到Excel中。

 

从“#FFFFFF” 到java.awt.Color,使用 Color color = Color.decode(cStr);

从java.awt.Color 到 jxl.format.Colour 代码如下:

 

protected static Colour getNearestColour(Color awtColor) {
  Colour color = null;

  Colour[] colors = Colour.getAllColours();
  if ((colors != null) && (colors.length > 0)) {
   Colour crtColor = null;
   int[] rgb = null;
   int diff = 0;
   int minDiff = 999;

   for (int i = 0; i < colors.length; i++) {
    crtColor = colors[i];
    rgb = new int[3];
    rgb[0] = crtColor.getDefaultRGB().getRed();
    rgb[1] = crtColor.getDefaultRGB().getGreen();
    rgb[2] = crtColor.getDefaultRGB().getBlue();

    diff = Math.abs(rgb[0] - awtColor.getRed())
      + Math.abs(rgb[1] - awtColor.getGreen())
      + Math.abs(rgb[2] - awtColor.getBlue());

    if (diff < minDiff) {
     minDiff = diff;
     color = crtColor;
    }
   }
  }
  if (color == null)
   color = Colour.BLACK;
  return color;
 }

 

 

 

上面代码来自 jasperreports 中的一段代码,正好借用。

原理,由于在Excel只支持256色,需要把HTML中的颜色转化为近似值,处理如上。

分享到:
评论
2 楼 javaspringon 2012-08-28  
very good
1 楼 lzy5710303 2011-03-14  
太棒了

相关推荐

    JAVA 程序 源代码 import java.applet.*;import java.awt.*

    import java.awt.*"表明这段源代码涉及了Java编程语言,特别是与Applet和图形用户界面(GUI)相关的部分。`import`语句是Java中用于引入库或包的机制,以便能够使用其中的类和方法。在给定的描述中,没有更多的具体...

    Java核心API

    Java.awt.color包支持颜色空间和配置文件的管理,使开发者能够精确地控制GUI的颜色表现。 #### Java.awt.datatransfer Java.awt.datatransfer包提供了与系统剪贴板交互的功能,允许数据的复制和粘贴操作。 #### ...

    java的.awt包和java.util包的区别

    ### Java的.awt包和.java.util包的区别 #### Java.util包详解 Java.util包是一个非常重要的标准库之一,其中包含了大量有用的类和接口,为开发者提供了丰富的功能。此包中的类和接口可以分为以下几大类别: 1. **...

    java 帮助文档 chm格式 java中文帮助文档chm格式.docx

    ##### 3.3 `java.awt.color` - **用途**:提供用于颜色空间管理的类。 - **关键类**:`ColorSpace`, `ICC_ColorSpace` ##### 3.4 `java.awt.datatransfer` - **用途**:提供在应用程序之间或应用程序内部传输数据的...

    Java的AWT包.pdf

    Java的Abstract Window Toolkit(AWT)包是Java标准版(Java SE)的一部分,它提供了一组基本的组件和接口,用于创建图形用户界面(GUI)。在Java编程中,如果你需要开发带有窗口、按钮、文本框等元素的应用程序,AWT就是...

    用Java.awt包中类写的记事本

    整合了java.awt.*;java.awt.event.*;javax.swing.*包中的类,结合布局与事件处理....这是本人自己写的哦

    import java.awt.docx

    在我们的代码中,我们可以看到 import 语句中包含了 java.awt 和 javax.swing.*,这说明了我们使用的是 Java 的 AWT 和 Swing 工具包。 2. JFrame 和 JDialog 的使用 在我们的代码中,我们可以看到 MainWindow 类...

    JAVA_CH.rar_java awt chm_java.awt.geom chm

    Java AWT(Abstract Window ...总的来说,这个压缩包为Java AWT和`java.awt.geom`的学习提供了丰富的资源,无论是初学者还是经验丰富的开发者,都能从中受益,通过查阅这些文档,可以更深入地理解和应用Java的GUI编程。

    JAVA API官方中文版手册chm文件文档

    java.awt.color java.awt.datatransfer java.awt.dnd java.awt.event java.awt.font java.awt.geom java.awt.im java.awt.im.spi java.awt.image java.awt.image.renderable java.awt.print java.beans ...

    awt包java Android

    awt包java Android awt包java Android awt包java Android awt包java Android awt包java Android awt包java Android awt包java Android awt包java Android awt包java Android awt包java Android awt包java Android ...

    api的文档

    **java.awt.color** - **用途**: 提供了用于色彩空间管理和色彩转换的类。 - **关键类**: - `ColorSpace`: 表示一种色彩模型的空间。 - `ICC_ColorSpace`: 表示基于ICC规范的颜色空间。 - `ColorConvertOp`: ...

    java(日本語)用語の総括

    ### java.awt.color 专门处理颜色空间的类,允许开发者在不同的颜色模型之间转换,这对于处理彩色图像和创建色彩丰富的GUI至关重要。 ### java.awt.datatransfer 此包提供了在应用程序之间以及应用程序内部进行数据...

    这是一个使用 Java 语言 ( java.awt + java.swing ) 实现的 2048 游戏程序.zip

    在这个项目中,开发者采用Java编程语言,结合java.awt和java.swing库,构建了一个可运行的2048游戏程序。下面我们将深入探讨这个项目的实现细节。 首先,java.awt和java.swing是Java GUI(图形用户界面)设计的主要...

    JAVA的屏幕截图

    通过阅读本文,您将了解到如何在Java中利用`java.awt`包中的类来获取屏幕尺寸、捕获屏幕图像以及如何利用`javax.imageio.ImageIO`来保存图像到文件系统。 #### 二、关键类与方法介绍 ##### 2.1 `java.awt`包 这个...

    Java.awt实现的符合面向对象思想的贪吃蛇游戏.zip

    本项目以Java.awt库为基础,充分体现了面向对象的设计思想,是Java后端开发的学习者进行毕业设计或课程设计的理想案例。以下将对该项目进行详细解析。 首先,Java.awt库是Java提供的标准图形用户界面(GUI)工具包...

    jsb.zip_awt_event_import java.awt._java 记事本

    简单的记事本的JAVA程序,//导入awt包,event包 import java.awt.*

    项目源码-java进销存管理系统

    import java.awt.Color; import java.awt.Image; import java.awt.Insets; import java.awt.Toolkit; import java.awt.event.ActionEvent; import java.awt.event.ComponentAdapter; import java.awt.event....

Global site tag (gtag.js) - Google Analytics