Javascript客户端-从网页上的现有图像创建新图像
Javascript clientside - create new images from existing image on web page
有没有一种方法可以在web浏览器中使用Javascript将图像剪切成瓷砖?
我想让用户从网页上的图库中挑选一张图片,然后将该图片剪切成4或6个新的瓦片,然后将这些瓦片放在表中,让用户为每个瓦片添加一些描述。
正如我现在看到的,我可以在用户选择图像和瓦片数量后从服务器重新加载瓦片,但如果可能的话,我想跳过重新加载。
编辑:
关于KP对浏览器级支持的评论,如果可能的话,我希望有一个不需要HTML5支持的解决方案。
如果您使用的是现代浏览器,可以使用canvas。请参阅本教程并查看"切片"部分。基本上你可以使用
drawImage(image, sx, sy, sWidth, sHeight, dx, dy, dWidth, dHeight)
按照您喜欢的任何方式(基于s
的参数)剪切原始图像,并将该部分放在画布中您想要的任何位置(基于d
的参数)。如果要保存切片,可以使用toDataUrl
方法获取切片的base64。看看这个。
请记住,image-src-url需要位于javascript加载的域上,否则会污染画布。您可以通过让服务器返回图像的base64表示来绕过这个问题。
最后,大图像上的toDataUrl
可能会"慢",所以要做好准备。
EDIT——由于您不能依赖于画布,因此需要使用SVG,因为更老的SVG受到更多浏览器的支持。有像Raphael.js这样的库可以帮助你。
相关文章:
- 为在外部单击时关闭的库图像创建预览效果
- 如何为图像创建“另存为”按钮
- 如何为图像创建具有随机大小的磁贴照片库
- 从网页中的 2 张图像创建新图像
- Javascript/Canvas - 从预先存在的图像创建新图像
- 从 1 个图像创建多个过渡按钮
- 使用 JavaScript 和 CSS 使用 2 张图像创建进度条
- 建议为选择图像创建代码
- 如何从 mysql 数据库中的图像创建图像幻灯片
- 已经为单个图像创建了点击效果,但希望其他图像具有相同的效果
- 如何限制xml文件中显示的12个图像,并自动为其他图像创建页面
- 通过数据库为图像创建上传/下载功能
- Javascript客户端-从网页上的现有图像创建新图像
- Jquery动态图像创建和动画
- 为容器中的非全宽图像创建视差效果
- 为滑块上显示的每个图像创建一个id(Basic jQuery slider)
- 简单的JSZip -从现有的图像创建Zip文件
- 在javascript上从图像创建画布
- 如何从图像创建缩略图
- 在复制时,TinyMCE PowerPaste插件并不总是为图像创建base64字符串