php - JQuery 图像叠加(并摆脱 imagecopymerge)

标签 php javascript jquery image merge

在我的项目站点中,我使用 php 函数 imagecopymerge 根据 MySQL 中的表将基本图像( map )与标记(始终相同但重复的标记)合并。

我想将其迁移到 jQuery,因为图像的刷新是轻弹的,这非常难看。

您能指导我找到最佳解决方案吗?

非常感谢。

最佳答案

我认为您有一个通过用户交互更新的静态图像,对吗?更新在服务器上处理,并将新的“合并”图像发送回客户端?

如果是这种情况,您也许可以用相当多的 jquery 来替换它。但还是会有差异。

我会使用以下策略:

  1. 将静态背景图交付给客户端。
  2. 更改当前回发到服务器的任何函数,以便它调用 jquery 函数。
  3. 此函数应创建一个新图像(您的标记)并将其放置在 map 上的适当位置上。您应该能够使用 css 来做到这一点。
  4. 该函数还应该跟踪这些标记的位置,以便在用户完成操作后将它们的位置发送回服务器。

如果您能准确地告诉我您需要做什么,我很乐意提供更详细的建议。

更新

好的,根据您的评论,我了解到有一个数据库表规定了 map 的内容。它不一定由当前用户更新,但您经常检查更改。

您已经使用 ajax 来完成大部分工作,因此更改为 jquery 不会做太多事情。我想也许你只需要想一个新的方法来处理新图像的显示。

您可以尝试双缓冲技术,将两个图像放在页面中的同一位置,但任何时候只有其中一个图像正确可见。

  1. 对服务器执行相同的调用以检查更改并检索图像。我假设您获得了更新图像的新网址,但如果没有,您可能必须执行类似的操作。
  2. 更新页面上未显示的图像的 src
  3. 仅在将不透明度设置为 0 后才显示隐藏图像。
  4. 使用 jquery,淡入新图像并淡出旧图像。

如果做得正确,效果可能更像是 map 的平滑更新而不是闪烁。

关于php - JQuery 图像叠加(并摆脱 imagecopymerge),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2386374/

相关文章:

php - 如何使用 CakePHP 哈希算法和 SALT 在 MySQL 中为 CakePHP 网站数据库编写 SQL 语句生成加密密码?

javascript - 如何检查单个 asp.net 按钮单击事件中的所有 asp.net 复选框?

javascript - selectBox 中的 jquery 移动选项未正确呈现

php - utf8_general_ci 数据应该如何存储?

php - 调用未定义的函数imagewebp(Dockerfile,php,gd,webp)

php - 从查询中获取数据

javascript - D3 点与曲线面积图不匹配

javascript - 如何从数组中取出每个元素并使每个元素成为对象中的键?

javascript - 使用书签将 html 插入网页

jquery - jQGrid 子网格,具有服务器生成的单个 JSON