【问题标题】:Can anyone suggest heuristics to take a web page and identify the dominant colors used?任何人都可以建议启发式方法来获取网页并识别使用的主要颜色吗?
【发布时间】:2011-08-10 13:56:28
【问题描述】:

我想编写在 Google App Engine 上运行的服务器端软件(所以它必须是纯 Java),它可以识别网页中使用的主要颜色,尤其是前景(文本)、标题和背景颜色。

问题在于所使用的颜色可能在 CSS、HTML 中指定,或者可能在链接到 CSS 或 HTML 的图像文件中指定。

一种可能的方法是将网页呈现为图像,然后执行this 之类的操作,但是我需要一个纯 Java 库,它可以合理地将网页呈现为图片。

另一种可能性是以某种方式分析 HTML、CSS 和任何链接的图像以提取此信息。

【问题讨论】:

    标签: java google-app-engine image-processing html-parsing


    【解决方案1】:

    由于无论如何您都必须进行一些图像处理才能从图片中获取颜色,所以我会尝试采用渲染页面然后确定主色的路线。

    至于渲染,似乎至少 webkit 在 Java 上是可用的,所以它的 API 可能有你需要的吗?

    【讨论】:

    • +1 用于将页面呈现为图像。如果你沿着解析 HTML+CSS+Images 的路线走,当你完成时,你会成功地重新发明一个网络浏览器。您可能需要考虑使用external service to fetch the screenshot via HTTP
    • Webkit 是用 C 编写的 - 所以即使它有 Java 接口,它也不是纯 Java。
    • 是的。可能还有其他选择。除非“纯 Java”部分非常重要,否则我可能会尝试使用尽可能主流的渲染器。
    • 纯 Java 是一项要求,因为它必须在 Google App Engine 上运行:-/ 可以使用外部服务...
    猜你喜欢
    • 2012-01-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多