【问题标题】:How to color some parts of the image programmatically?如何以编程方式为图像的某些部分着色?
【发布时间】:2013-06-10 16:10:04
【问题描述】:

我有一张意大利地图,我需要以编程方式为某些区域着色。

这是图片:

如您所见,有几个区域具有不同的颜色(橙色)。

我有一个页面需要突出显示用户区域,因此我需要对这些区域进行不同的着色。底座是灰色的,选择的必须是橙色的。

现在,我该如何以编程方式进行?

我想避免为每个用户创建一个图像。

有什么想法吗?

【问题讨论】:

  • PHP 有大量的图像库,选择一个。
  • @GrantThomas 你能说得更具体点吗?你的意思是图书馆作为GD?问题是,我如何为这些区域着色(阅读:我如何计算我需要不同颜色的区域)
  • 大家不要再只是粘贴颜色相关功能的链接了,这不是那么容易实现的,他可以使用imagefilltoborders,尽管由于抗锯齿边框结果会很丑,但问题是,如何他检测到要着色的区域?和坐标?他至少需要引用一个区域的所有形状坐标。此外,与准备图像(例如 1 个灰色和 1 个橙色)并使用前端方法相比,这确实会花费更多的资源。

标签: php image image-processing


【解决方案1】:

我仍然更喜欢创建“每个用户一个图像”。它实际上不是每个用户。使您已经创建的图像变体,并通过您的服务器端逻辑加载它们。我的意思是,像精灵之类的东西。让每个部分都上色和不上色。

【讨论】:

    【解决方案2】:

    您是否考虑过像这样由 jQuery 驱动的交互式地图:

    Link 1

    或者,如果你真的被卡住了,你可以看看这样的东西(付费插件!)

    Link 2

    【讨论】:

      【解决方案3】:

      我不认为 php 的 GD 或 imagick 库有那么强大,如果是这样的话,也不是那么容易做到的,而且生成的图像可能会损失很多质量,因为地图的边界是甚至抗锯齿。

      我建议您使用 Google 搜索“交互式地图”,通常您拥有矢量化图像并使用 Javascript 和 CSS 来实现您想要做的事情。也许意大利已经有了一些东西。

      【讨论】:

        猜你喜欢
        • 2016-12-18
        • 2015-12-01
        • 1970-01-01
        • 2014-04-01
        • 1970-01-01
        • 2016-12-07
        • 2014-01-07
        • 2013-01-08
        相关资源
        最近更新 更多