# imagemask **Repository Path**: wang0221/imagemask ## Basic Information - **Project Name**: imagemask - **Description**: 将文本内容或将文件隐藏于图片中,解密后可查看加密信息.index.html中可查看全部功能.进行了加密和解密的分离,以便于应用于实际生产环境当中;以及php版本的移植,方便后台查看; - **Primary Language**: PHP - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2019-03-21 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ### 图片隐写的分离,encode为加密页面,decode为解密页面,分离后便于应用于实际生产环境中 php版本的解密在decode_php中方便用于PHP后台的直接解密 新增支持utf-8的php加解密,可以和js加解密的文件互通,文件在php_utf8中,(原php版本仅支持ascii,解析js加密的的文本中文会乱码) 以下为原作者说明: # imagemask 图片隐写工具,可用于隐写文本或者文件数据。最多隐写文本字符数或者文件大小由图片的长与高来决定。 * 在线演示 https://ipfs.io/ipfs/QmUG1TKotQYsp6bSw6pX4crFWfhJRNTnJre7buEaYYBV72 * 使用示例 ```html ``` * 隐写文本 ```javascript //脚本里传入页面的canvas对象和要隐写的文本 var output = document.getElementById('output'); var canvas = document.getElementById('canvas'); mask.hideText(canvas, '要隐写的文本'); output.src = canvas.toDataURL(); ``` * 隐写文件 ```javascript //脚本里传入页面的canvas对象和要隐写的文本 var output = document.getElementById('output'); var canvas = document.getElementById('canvas'); var file = document.getElementById('file'); mask.hideFile(canvas, file.files[0], , function(result){ if(result.success){ output.src = canvas.toDataURL(); }else{ alert(result.message); } }); ``` * 读出图片里隐写的文本 ```javascript var canvas = document.getElementById('canvas'); var message = mask.revealText(canvas); ``` * 读出图片里隐写的文件 ```javascript var canvas = document.getElementById('canvas'); var file = mask.revealFile(canvas);       //file.name = 文件名称, file.data = 文件数据 ``` >* 示例图片 >>* 包含一章小说的风景图片 ![](https://ipfs.io/ipfs/QmQnHuGoKP3ZTyixygndWa4hXfhRKZ18ZgkipeqbUeQpWg) >>* 包含一张美女图片的风景图片 ![](https://ipfs.io/ipfs/QmNUiD81fU7ypgqkrrUrJVasmACmEQ3wbfEQte9Js78ou1) * 参考代码 PixelJihad https://github.com/oakes/PixelJihad