为图片添加文字canvas

liuhao-web liuhao-web     2022-12-25     636

关键词:

<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>

<body>
<canvas id=‘myCanvas‘ ></canvas>
<div id="imgCon" style="background: red"></div>
<script type="text/javascript">


getImg(‘济南店‘,8);
function getImg(text,fsz)
var img = new Image();
img.src = ‘./timg.png‘;
img.onload=function()//图片加载完成,才可处理
var c = document.getElementById("myCanvas");
c.width=img.width;
c.height=img.height;
var cxt = c.getContext("2d");
cxt.fillStyle = "rgba(255, 255, 255, 0)";
cxt.fillRect(0, 0, c.width, c.height);
cxt.drawImage(img,0,0);
cxt.save();
cxt.font = fsz+"px Arial";
cxt.textBaseline = ‘middle‘;//更改字号后,必须重置对齐方式,否则居中麻烦。设置文本的垂直对齐方式
cxt.textAlign = ‘center‘;
var tw = cxt.measureText(text).width;
var ftop = c.height/2-5;
var fleft = c.width/2;
//cxt.fillStyle="#ff0000";
//cxt.fillRect(fleft-tw/2,ftop-fsz/2,tw,fsz);//矩形在画布居中方式
//cxt.fillStyle="#ffffff";
cxt.fillText(text,fleft,ftop);//文本元素在画布居中方式
cxt.strokeStyle = ‘white‘;
cxt.strokeText(text,fleft,ftop);//文字边框

var ii=(new Image())
ii.src=c.toDataURL(‘image/jpeg‘)
document.getElementById("imgCon").appendChild(ii)


;

 

/*getBase64(‘./timg1.png‘)
function getBase64(url)
//通过构造函数来创建的 img 实例,在赋予 src 值后就会立刻下载图片,相比 createElement() 创建 <img> 省去了 append(),也就避免了文档冗余和污染
var Img = new Image(),
dataURL=‘‘;
Img.src=url;

Img.onload=function() //要先确保图片完整获取到,这是个异步事件
var canvas = document.createElement("canvas"), //创建canvas元素
width=Img.width, //确保canvas的尺寸和图片一样
height=Img.height;
canvas.width=width;
canvas.height=height;
canvas.getContext("2d").drawImage(Img,0,0,width,height); //将图片绘制到canvas中


dataURL=canvas.toDataURL(‘image/jpeg‘); //转换图片为dataURL
console.log(dataURL)
;
*/

</script></body></html>























































canvas图片、文字模糊问题

...末尾遗留问题部分有详细解释说明。之前做了一个在线给图片添加文本框的工具,大体思路是先把图片加载到一个DOM结构中,然后通过html2canvas导出到一个canvas,最后通过canvas自带的toDataURL方法导出成图片。这个思路并不复杂,... 查看详情

vue+canvas图片加水印(代码片段)

思路:将两张图片绘制为一张目标:输入的文字,绘制到图片上,简单实现图片水印效果:输入的文字1:‘你猜猜’+图片2=图片3(不要看清除水印的按钮,本人垃圾没实现)   选择图片html  <inputtype="file"id="... 查看详情

html5canvas为网页添加文字水印

<!DOCTYPEhtml><html><body><canvasid="myCanvas"width="3000"height="1500"style="border:1pxsolid#d3d3d3;">YourbrowserdoesnotsupporttheHTML5canvastag.</canvas><script>v 查看详情

[canvas,js,fileapi]图片转文字

语言:javascriptAPI及元素:canvas,fileAPI读取图片像素值,变化为灰度,根据画面设定,替换为文字显示---效果图【福字】:猜猜下面是什么:【金鸡】原图:继续猜猜:源码非常简单:1<html>2<head>3<title>pic2Str</title>4... 查看详情

android怎样实现在图片上任意位置添加文字要代码急求。。

android在图片上任意位置添加文字,可以使用canvas类进行操作,实例如下:@Override protected void onDraw(Canvas canvas)   super.onDraw(canvas);  canvas.drawBitmap(m_LogInBmp, null, m_LogIndst, m_txBackPaint);    float tleft = m_LogIndst.left + (m_LogIndst... 查看详情

android给图片添加文字和水印

参考技术A话不多说上图在Activity中获取到ImageView对象,并且获取Bitmap对象,对Bitmap进行canva绘图,添加水印添加一个布局,上面是原始图片,下面是添加水印后的图片 查看详情

说说在canvas中如何添加阴影

...数可以用于设置阴影相关属性。我们有一张500×500像素的图片。现在为其添加一个往左上偏移的阴影。运行结果:图片来源于网络。示例略作修改,就可以为图片设置右下阴影效果:运行结果:修改阴影颜色为深空灰:运行结果... 查看详情

canvas中的那些坑

年前做了一个合成图片的小工具,需求大体为:用户输入要在一整张大图片显示的文字、图片及它们所在大图的坐标,合成一张大图用来干啥干啥。做法当然是用canvas做的。canvas就不细说了,来说说他的坑吧。坑之一:输入的文... 查看详情

canvas转图片中的文字自动换行(代码片段)

概述最近项目用到了canvas转图片,但是由于canvas对文字排版的支持非常弱,一般我们在canvas上画不同排版的文字(比如竖排文字)都是利用js计算横纵坐标,然后一个字一个字地画出来,今天无意中看到一个使用svg的方法,记录... 查看详情

vb给图片添加文字水印

...sstring,xaslong,yaslong,SFileasstring,SaveTypeasinteger),其中Picture为图片框控件名称,strText为待添加上去的文字,xy分别为待添加上去的文字在图片中的左上角坐标,SFile为保存为的新图像文件名,SaveType为保存的图像类型,比如jgp或bmp等。2... 查看详情

canvas文字丢失

...anvas;2.检查文字是否被正确渲染;3.检查文字是否被正确添加到canvas中;4.检查文字是否被正确缩放;5.检查文字是否被正确旋转;6.检查文字是否被正确裁剪;7.检查文字是否被正确更新;8.检查文字是否被正确清除;9.检查文字... 查看详情

安卓自定义view进阶-canvas之图片文字

Canvas之图片文字作者微博:@GcsSloop【本系列相关文章】在上一篇文章Canvas之画布操作中我们了解了画布的一些基本操作方法,本次了解一些绘制图片文字相关的内容。如果你对前几篇文章讲述的内容熟练掌握的话,那么... 查看详情

canvas文字自动换行圆角矩形画法生成图片手机长按保存(代码片段)

canvas的文字自动换行函数封装//str:要绘制的字符串//canvas:canvas对象//initX:绘制字符串起始x坐标//initY:绘制字符串起始y坐标//lineHeight:字行高,自己定义个值即可functioncanvasTextAutoLine(str,canvas,initX,initY,lineHeight)varctx=canvas.getContext("2d") 查看详情

html5canvas画一个矩形,在矩形里添加文字。文字颜色与矩形背景颜色有关问题?(代码片段)

html5canvas画一个矩形,在矩形里添加文字。文字颜色与矩形背景颜色问题??html5canvas画一个矩形,在矩形里添加文字。文字颜色与矩形背景颜色问题。JScriptcodevarc=this.callout[0];varcxt=c.getContext("2d");cxt.beginPath();cxt.moveTo(x0,y0);cxt.lineT... 查看详情

canvas踩坑记录(代码片段)

一、绘制一个带有多张图片和文字的canvas。要求将一张矩形的图片,放置进去显示为圆角矩形的图片  解决方案,先把图片处理成圆角矩形的样子,再放进去就可以了  绘制圆角矩形图片的解决方案<imgsrc="http://pics.sc.chinaz... 查看详情

vue图片上绘制文字(js图片上动态生成文字)

newTestImage(text) varcanvas=document.createElement("canvas") varcxt=canvas.getContext("2d") varimg=newImage() img.src 查看详情

vue图片上绘制文字(js图片上动态生成文字)

newTestImage(text) varcanvas=document.createElement("canvas") varcxt=canvas.getContext("2d") varimg=newImage() img.src 查看详情

vue图片上绘制文字(js图片上动态生成文字)

newTestImage(text) varcanvas=document.createElement("canvas") varcxt=canvas.getContext("2d") varimg=newImage() img.src 查看详情