首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Openpyxl:将“auto”颜色解码为rgb值

Openpyxl:将“auto”颜色解码为rgb值
EN

Stack Overflow用户
提问于 2022-04-26 10:16:03
回答 1查看 80关注 0票数 1

我正在尝试确定Excel文档中设置的边框的颜色。我使用'openpyxl‘库(最新版本3.0.9),当用户通过默认的'auto’颜色设置边框时,遇到了提取rgb颜色代码的问题。

当我提取单元格颜色属性时,我会看到(在我的调试器中,请参见屏幕快照)。没有一个单元格字段是用RGB代码设置的,这些字段表示在提取颜色信息时存在一些问题。我想这是由于‘汽车’的颜色。

索引颜色可能是在文档中引用的:

默认颜色指数,如ECMA第4部分18.8.27所示

代码语言:javascript
运行
复制
COLOR_INDEX = (
    '00000000', '00FFFFFF', '00FF0000', '0000FF00', '000000FF', #0-4
    '00FFFF00', '00FF00FF', '0000FFFF', '00000000', '00FFFFFF', #5-9
    '00FF0000', '0000FF00', '000000FF', '00FFFF00', '00FF00FF', #10-14
    '0000FFFF', '00800000', '00008000', '00000080', '00808000', #15-19
    '00800080', '00008080', '00C0C0C0', '00808080', '009999FF', #20-24
    '00993366', '00FFFFCC', '00CCFFFF', '00660066', '00FF8080', #25-29
    '000066CC', '00CCCCFF', '00000080', '00FF00FF', '00FFFF00', #30-34
    '0000FFFF', '00800080', '00800000', '00008080', '000000FF', #35-39
    '0000CCFF', '00CCFFFF', '00CCFFCC', '00FFFF99', '0099CCFF', #40-44
    '00FF99CC', '00CC99FF', '00FFCC99', '003366FF', '0033CCCC', #45-49
    '0099CC00', '00FFCC00', '00FF9900', '00FF6600', '00666699', #50-54
    '00969696', '00003366', '00339966', '00003300', '00333300', #55-59
    '00993300', '00993366', '00333399', '00333333',  #60-63
)
# indices 64 and 65 are reserved for the system foreground and background colours respectively

文档称索引64是保留的,因此没有必要尝试访问颜色数组(最大索引为63)。

来源:https://openpyxl.readthedocs.io/en/stable/_modules/openpyxl/styles/colors.html

我可以勇敢地处理索引64为黑色,这似乎是永恒的自动颜色无论如何,但我想知道是否有一个正确的方式解码‘自动’颜色从Excel?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-05-09 12:51:35

系统颜色由应用程序设置。默认窗口将是白色背景和黑色前景。您可以检查styles.xml的styles.xml部分,以确定这些部分是否已经过时,但真正需要客户端应用程序来决定。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72012199

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档