可添加背景杂质和文字扭曲变形,效果如下:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Text Anti-OCR</title>
<style>
.anti-ocr-canvas {
background-color: #f0f0f0;
border: 1px solid #ccc;
}
</style>
</head>
<body>
<canvas id="anti-ocr-canvas" width="400" height="100"></canvas>
<script>
function drawTextToCanvas(text, canvasId) {
let canvas = document.getElementById(canvasId);
let ctx = canvas.getContext('2d');
// 添加背景杂质
for (let i = 0; i < 1000; i++) {
let x = Math.random() * canvas.width;
let y = Math.random() * canvas.height;
ctx.fillStyle = `rgba(14, 12, 123, ${Math.random() * 0.8})`;
ctx.fillRect(x, y, 1, 1);
}
// 设置文字样式
ctx.font = '20px Arial';
ctx.fillStyle = '#333';
// 扭曲文字
let chars = text.split('');
let x = 10;
let y = 50;
for (let i = 0; i < chars.length; i++) {
ctx.save();
ctx.translate(x, y);
ctx.rotate(Math.random() * 0.7 - 0.1);
ctx.fillText(chars[i], 0, 0);
ctx.restore();
x += ctx.measureText(chars[i]).width + Math.random() * 4 - 2;
}
}
drawTextToCanvas('这是一个防止OCR识别的文本。', 'anti-ocr-canvas');
</script>
</body>
</html> 网友回复
gpt-image2能直接将图片转成分层透明的psd设计文件?
claude code、codex、gemini cli如何切换国内大模型使用?
蒸馏最强ai大模型是中小ai模型低成本升级的最好通道?
arena.ai上为啥没有最新的claude4.7及gpt5.5呢?
ai大模型公司为啥开始大量招聘文科生了?
cloudflared如何在低版本centos6或7上安装?
bfwsoa框架如何开启异步缓存与异步任务模式?
selenium如何获取网页js加载渲染后的真实dom结构?
go编写的Eino与python编写的langchain如何选择?
LangChain如何编写多个agent协同工作的代码?


