【问题标题】:Is there a standard XML or JSON schema for color palettes? [closed]调色板有标准的 XML 或 JSON 模式吗? [关闭]
【发布时间】:2011-06-08 15:32:43
【问题描述】:

我想通过 Web 服务提供调色板,并且想知道是否有任何用于调色板的标准模式(XML、JSON 等)。

谷歌搜索没有结果。是否存在,或者我应该自己推出?

谢谢!

编辑:像这样简单的事情:

[ 'FFFFFF', '000000', ... ]

但如果有传输调色板的标准,我愿意采用它,即使它的功能比我需要的多。

【问题讨论】:

    标签: xml json colors


    【解决方案1】:

    将近一年后更新:

    我从未找到 XML 或 JSON 调色板格式。相反,我发现了 Photoshop .ACO 文件和 GIMP 的 .gpl 文件。

    GPL 是一种非常简单的 ASCII 调色板文件格式,根本不需要解释。它看起来像这样:

    GIMP Palette
    Name: Power Palette
    Columns: 0
    #
    255   0   0 Red
    255 255 255 White
      0   0   0 Black
    

    ACO 是一种更复杂的二进制格式。有关如何读取/写入此格式的更多信息here

    从 GPL 转换为 XML 或 JSON 非常简单。

    其他可能的文件格式包括:

    • cpt
    • c3g
    • ggr
    • gpf
    • 公司
    • psp
    • svg

    详情请参阅Archive of Colour gradients

    【讨论】:

    • 几年前我编写了一个 Windows 应用程序,它处理颜色和调色板,还推出了我自己的文件格式(基于 XML)。我还发现了 Adob​​e 色板交换 (ASE) 文件(另一种二进制格式,Adobe 喜欢这些)和 ColorSchemer Studio 2 Mac 应用程序的文件格式。早在 2012 年,当我查看它时,没有人记录后者,所以我 investigated and documented it on my website。所以列表还有更多内容:-)
    【解决方案2】:

    Swatches and free software - Color swatch file formats 对此主题进行了分析,包括对专有和开源供应商使用的不同 XML 格式的概述。它包含每种格式的示例,包括二进制标头的视图。

    对于 XML,它命名了这些专有格式:

    • ACBL(Adobe Color Book Legacy)

      • PANTONE opaque couché.acbl (Adobe Illustrator CS3)
    • ACB(AutoCAD 彩色书)

      • Pantone A & I-cotton.acb (AutoCAD 2008)
    • QCL(QuarkXPress 颜色库)

      • PANTONE(R) solidinhex.qcl (QuarkXPress 7.31)
      • Solid Hex UI Spec.cui (QuarkXPress 7.31)

    对于开源格式,它将这些应用程序列为具有基于 XML 的格式:

    • Scribus
    • sK1
    • SOC(StarOffice 颜色)(OpenOffice.org、LibreOffice 等)

    在这种情况下,当您找不到标准格式时,我通常建议采用最接近标准(因为它很流行)或其他标准但有据可查的格式。在这种情况下,我会选择 SOC(StarOffice Colors),因为它似乎被 OpenOffice 和 LibreOffice 使用,或者 SVG 可能有颜色定义的概念。

    前面提到的网站还托管了一个针对不同调色板格式的转换实用程序,引入了自己的基于 XML 的格式,SwatchBooker file format (.sbz)

    【讨论】:

      【解决方案3】:

      如果您正在寻找命名颜色,请考虑使用 google 闭包库。 或者您想以微格式描述调色板的视觉布局?

      goog.provide('goog.color.names');
      
      
      /**
       * A map that contains a lot of colors that are recognised by various browsers.
       * This list is way larger than the minimal one dictated by W3C.
       */
      goog.color.names = {
        'aliceblue': '#f0f8ff',
        'antiquewhite': '#faebd7',
        'aqua': '#00ffff',
        ...
      

      【讨论】:

      • 我正在处理的颜色可以在 RGB 颜色空间中的任何位置,因此不会有每个颜色的名称。对于确实有名字的颜色,我不介意包括名字,所以 goog.color.names 可能有用。
      【解决方案4】:

      我最近也在谷歌上搜索了这个,但找不到任何东西,所以我使用 JSON 自行推出,它们被用于我个人主页的 site themes 部分。我有一个 index page 列出了文件,这些文件指定用于主题的 JSON 文件,例如 here

      我的实现肯定有改进的余地,但我想我会做出回应,因为我最近经历了同样的谷歌搜索练习并最终滚动了我自己的练习,结果证明这真的很简单。

      【讨论】:

      • 谢谢,这很接近。我想提供一个调色板作为一组颜色,“这是一个调色板”,但没有将每种颜色与特定用途联系起来,例如背景/前景/等。
      • 是的,我只是让键值更通用的名称,也许是基于明度/暗度?诚然,我的实现非常具体到我想在我的网站上实现的目标。我认为像 json 这样的字典格式很好,但完全取决于你。
      • 我最终使用了结构化 my 以便它包含一个项目列表,其中一个键是十六进制代码。它允许我将元数据附加到调色板和颜色。
      猜你喜欢
      • 2011-09-22
      • 2013-05-04
      • 2018-03-26
      • 1970-01-01
      • 2017-07-25
      • 2011-04-24
      • 2010-10-21
      • 2013-11-06
      • 1970-01-01
      相关资源
      最近更新 更多