# 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 = 文件数据
```
>* 示例图片
>>* 包含一章小说的风景图片

>>* 包含一张美女图片的风景图片

* 参考代码
PixelJihad https://github.com/oakes/PixelJihad