当前位置: 首页 > news >正文

网站代码语法外贸企业网站推广公司

网站代码语法,外贸企业网站推广公司,北京营销推广网站建设,网站logo怎么修改如果要实现一个类似人脸识别的界面#xff0c;要求使用 canvas 进行绘制#xff0c;中间镂空透明区域#xff0c;背景是白色的画布。 技术方案#xff1a; 首先#xff0c;使用 canvas 绘制一个白色画布其次#xff0c;使用 context.globalCompositeOperation 合成属性进… 如果要实现一个类似人脸识别的界面要求使用 canvas 进行绘制中间镂空透明区域背景是白色的画布。 技术方案 首先使用 canvas 绘制一个白色画布其次使用 context.globalCompositeOperation 合成属性进行多图层处理 UI 绘制 sectionvideo idvideo-preview width0% height0% autoPlay /divcanvas idvideo-canvas width300 height300 //divbutton idstart-recordingstart/buttonbutton idstop-recording disabledstop/button /section逻辑实现纯js实现 // 获取 DOM 元素 const video: any document.getElementById(video-preview);const canvas: any document.getElementById(video-canvas); const ctx canvas.getContext(2d);// 设定遮罩区域的尺寸 const centerX canvas.width / 2; const centerY canvas.height / 2; const outerRadius Math.min(centerX, centerY) * 0.9;// 绘制视频帧 function drawFrame() {// 绘制 Video 流ctx.drawImage(video, 0, 0, canvas.width, canvas.height);ctx.beginPath();ctx.arc(centerX, centerY, outerRadius, 0, 2 * Math.PI);ctx.globalCompositeOperation destination-in; // 使用复合操作使颜色变为透明ctx.fill();// 恢复默认的混合模式ctx.globalCompositeOperation source-over;// 循环绘制requestAnimationFrame(drawFrame); }const startRecordingButton: any document.getElementById(start-recording); const stopRecordingButton: any document.getElementById(stop-recording);// 录制状态标志 let isRecording: any false; let recordedBlobs: any []; let mediaRecorder: any null; let stream: any null;// 请求访问媒体设备 navigator.mediaDevices.getUserMedia({ video: true, audio: true }).then((_stream) {stream _stream;video.srcObject stream; // 设置视频源}).catch((err) console.error(Error:, err));// 等待视频流就绪 video.addEventListener(canplay, () {drawFrame(); }); // 开始录制按钮点击事件处理函数 startRecordingButton.addEventListener(click, () {if (!isRecording) {isRecording true;startRecordingButton.disabled true;stopRecordingButton.disabled false;recordedBlobs [];mediaRecorder new MediaRecorder(stream);mediaRecorder.ondataavailable (event) {if (event.data event.data.size 0) {recordedBlobs.push(event.data);}};mediaRecorder.onstop () {// 录制结束后合并 Blobconst blob new Blob(recordedBlobs, { type: video/mp4 });const url URL.createObjectURL(blob);const a document.createElement(a);document.body.appendChild(a);a.style.display none;a.href url;a.download recorded-video.mp4;a.click();window.URL.revokeObjectURL(url);};mediaRecorder.start();} });// 停止录制按钮点击事件处理函数 stopRecordingButton.addEventListener(click, () {if (isRecording) {mediaRecorder.stop();isRecording false;startRecordingButton.disabled false;stopRecordingButton.disabled true;} }); 在线查看 点击查看
http://www.eeditor.cn/news/123160/

相关文章:

  • 网站内容的编辑和更新怎么做做销售网站的公司哪家最好
  • 宜宾网站建设费用中山网站建设企业
  • dede网站仿站经典工具宝安做棋牌网站建设哪家公司收费合理
  • 东莞外贸网站网站的ns记录
  • 公司建设网站需求分析郑州哪有做网站的汉狮
  • 网站管理与建设查询网站空间的服务商
  • 做网站代下深圳龙华区是哪个区
  • 查看网站流量天津网站建设icp备
  • 网站建设会计网站开发的费用属于什么科目
  • 做综合医院网站洛阳网站建设seo
  • 公司网站建设与维护方案国外知名设计网站
  • 辽宁省住房建设厅网站寿县移动公司网站建设
  • 成都红酒网站建设wordpress博客搬家
  • 工信部网站备案系统登录wordpress配置京东云
  • 网站建设技术合同模板下载河北网站推广
  • 房地产项目网站建设方案花店网站开发设计的项目结构
  • 17网站一起做网店登录网站标题的作用
  • 菏泽北京网站建设wordpress错误怎么解决方法
  • 永嘉营销网站建设网站建设步骤电脑
  • 电商建设网站哪家好大良营销网站建设服务
  • 昆明网站关键字优化ghost vs wordpress
  • 慈利县建设局网站微信商城系统哪找
  • 网站建设的公司工作室抚顺外贸网站建设
  • 开发一套电商网站多少钱photoshop做网站设计
  • 无锡企业网站制作价格培训网站项目ppt怎么做
  • 新网站制作怎么样百度怎么优化排名
  • 牡丹江0453免费信息网站国家信用信息公示系统官网
  • 可以用自己的电脑做网站主机做网站都需要什么资料
  • 美术馆网站的建设流程淘宝网站建设模板免费下载
  • 承德网站制作的流程个人网页设计需求分析怎么写