用什么建设网站ps网页设计从零开始教程

news/2025/9/24 8:52:18/文章来源:
用什么建设网站,ps网页设计从零开始教程,网络哪家公司最好,wordpress被百度搜到要实现的内容#xff1a;手写签名#xff0c;协议内容。点击提交后#xff1a;生成1张图片#xff0c;有协议内容和签署日期和签署人。 实现的效果图如下#xff1a; 1、签名页面 templateview classindexu-navbar title电子协议…要实现的内容手写签名协议内容。点击提交后生成1张图片有协议内容和签署日期和签署人。 实现的效果图如下 1、签名页面 templateview classindexu-navbar title电子协议 :is-backfalse :border-bottomfalse title-color#333 :background{background:}view classpage_navbar_warpimage src../../static/icon/0.png mode classpage_navbar_commonImg click$go(1,1)/image/view/u-navbarimage srchttps://www.*****/xieyi.png mode classbanner/imageview classsignBoxview classtitle签名区/viewview stylewidth: 700rpx;height: 450rpx;l-signature disableScroll backgroundColorrgba(255, 249, 238, .0) refsignatureRef penColor#333 :penSize5 :openSmoothtrue /l-signature/view/viewview classfooterview classbtn1 t-c clickonClick(undo)撤消/viewu-button classbtn2 t-c clickonClick(save) :loadingloading提交/u-button/view/view /templatescriptexport default {data() {return {loading:false,}},methods:{onClick(type) {if(type openSmooth) {this.openSmooth !this.openSmoothreturn}if (type save) {this.$refs.signatureRef.canvasToTempFilePath({success: (res) {// 是否为空画板 无签名// 生成图片的临时路径// H5 生成的是base64let url res.tempFilePath;console.log(res);if(res.isEmpty){this.$toast(请签名)}else{this.loading true;this.$uploadImage(common/upload, url).then(res {this.loading false;if(res.code 1){this.$go(2,/pages/mine/canvas?signImgres.data.fullurl)}})}}})return}if (this.$refs.signatureRef) this.$refs.signatureRef[type]()}}} /scriptstyle scoped langscss.index{min-height: 100vh;position: relative;.banner{display: block;width: 585rpx;height: 416rpx;margin: auto;}.signBox{border: 1rpx dashed #BF9350;width: 700rpx;height: 500rpx;margin: 32rpx auto;.title{padding-top: 32rpx;font-size: 40rpx;color: #BF9350;padding-left: 32rpx;}}.footer{position: fixed;left: 0;bottom: 0;width: 750rpx;height: 98rpx;background: #fff;box-shadow: 0rpx 3rpx 6rpx 1rpx rgba(0,0,0,0.32);padding: 0 50rpx;display: flex;align-items: center;justify-content: space-between;.btn1{width: 300rpx;height: 81rpx;border-radius: 41rpx 41rpx 41rpx 41rpx;border: 1rpx solid #BF9350;font-size: 32rpx;color: #BF9350;}.btn2{width: 300rpx;height: 81rpx;background: #BF9350;border-radius: 41rpx 41rpx 41rpx 41rpx;font-size: 32rpx;color: #fff;}}} /style2、canvas页面用来合成1张图 templateview classdemou-navbar title电子协议 :is-backfalse :border-bottomfalse title-color#333 :background{background:#FFFAF3}view classpage_navbar_warpimage src../../static/icon/0.png mode classpage_navbar_commonImg click$go(1,1)/image/view/u-navbarcanvas :style{ width: canvasW px, height: canvasH px } canvas-idmyCanvas idmyCanvas/canvasview classfooterview classbtn1 t-c click$go(1,1)取消/viewu-button classbtn2 t-c clicksubmit :loadingloading shapecircle :rippletrue提交/u-button/view/view /template scriptexport default {components: {},data() {return {loading:false,canvasW:0, // 画布宽canvasH:0, // 画布高SystemInfo:{}, // 设备信息goodsImg: {}, // 协议图片signImg:{}, // 签名图片signW:120, // 签名图片大小bgImg:{},year:,mon:,date:,tempFilePath:,}},async onLoad(option) {var start new Date();this.year start.getFullYear();this.mon start.getMonth() 1;this.date start.getDate();// 获取设备信息主要获取宽度赋值给canvasW 也就是宽度100%this.SystemInfo await this.getSystemInfo();// 获取协议图片签名二维码图片信息APP端会返回图片的本地路径H5端只能返回原路径this.bgImg await this.getImageInfo(https://www.*******/xieyi.png);this.goodsImg await this.getImageInfo(https://www.*******/bg.png);this.signImg await this.getImageInfo(option.signImg);this.canvasW this.SystemInfo.windowWidth; // 画布宽度// #ifdef APP-PLUSthis.canvasH this.SystemInfo.windowHeight-94-uni.getSystemInfoSync().statusBarHeight; // 画布高度 页面高度-(导航栏固定44pxfooter的50pxAPP内手机双跳栏的高度)// #endif// #ifdef H5this.canvasH this.SystemInfo.windowHeight-94; // #endif// 如果主图二维码图片设备信息都获取成功开始绘制海报这里需要用setTimeout延时绘制否则可能会出现图片不显示。if(this.goodsImg.errMsg getImageInfo:ok this.signImg.errMsg getImageInfo:ok this.SystemInfo.errMsg getSystemInfo:ok){uni.showToast({icon:loading,mask:true,duration:10000,title: 加载中,请稍后,});setTimeout((){var ctx uni.createCanvasContext(myCanvas, this);// 填充背景ctx.drawImage(this.bgImg.path, 0, 0, this.canvasW, this.canvasH) // drawImage(图片路径,x,y,绘制图像的宽度绘制图像的高度)// 绘制协议主图ctx.drawImage(this.goodsImg.path, 50, 60, this.canvasW-100, this.canvasW-180) // drawImage(图片路径,x,y,绘制图像的宽度绘制图像的高度)// 签署日期ctx.setFontSize(16)ctx.setFillStyle(#333)ctx.fillText(签署日期${this.year}年${this.mon}月${this.date}日, 50, this.canvasH -this.signW-80);// 签署人ctx.setFontSize(14)ctx.setFillStyle(#333)ctx.fillText(签署人, 50, this.canvasH -this.signW-40);// 签署人ctx.drawImage(this.signImg.path, 90, this.canvasH-this.signW-80, this.signW, this.signW) // drawImage(图片路径,x,y,绘制图像的宽度绘制图像的高度,二维码的宽,高)ctx.draw(true,(ret){ // draw方法 把以上内容画到 canvas 中。console.log(ret) uni.showToast({icon:success,mask:true,title: 绘制完成,});uni.canvasToTempFilePath({ // 保存canvas为图片canvasId: myCanvas,quality: 1,complete: (res) {console.log(res)// 在H5平台下tempFilePath 为 base64, // 图片提示跨域 H5保存base64失败APP端正常输出临时路径if(res.tempFilePath){this.tempFilePath res.tempFilePath;}},})});},1500)}else{console.log(err)}},methods: {submit(){this.loading true;console.log(需要提交给后台的图片this.tempFilePath)},// 获取图片信息getImageInfo(image) {return new Promise((req, rej) {uni.getImageInfo({src: image,success: function(res) {req(res)},});})},// 获取设备信息getSystemInfo(){return new Promise((req, rej) {uni.getSystemInfo({success: function (res) {req(res)}});})},},} /scriptstyle scoped langscss.footer{position: fixed;left: 0;bottom: 0;width: 750rpx;height: 50px;box-shadow: 0rpx 3rpx 6rpx 1rpx rgba(0,0,0,0.32);padding: 0 50rpx;display: flex;align-items: center;justify-content: space-between;background: #fff;.btn1{width: 300rpx;height: 40px;border-radius: 41rpx 41rpx 41rpx 41rpx;border: 1rpx solid #BF9350;font-size: 32rpx;color: #BF9350;}.btn2{width: 300rpx;height: 40px;background: #BF9350;border-radius: 41rpx 41rpx 41rpx 41rpx;font-size: 32rpx;color: #fff;}} /style备注 1、协议页面内用的l-signature来自于uniapp插件市场 2、canvas页面灵感来自于之前写过的一篇绘制海报文章 3、页面中用到的 xieyi.png协议内容、bg.png底图)、以及签名后的option.signImg签名图都需要后台设置允许跨域。否则H5就会报错画布污染无法生成base64。 这个问题在APP内不存在只有H5会出现。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/915406.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

设计网站推荐html简述建设网站的一般过程

文章目录 题目描述题解思路题解代码题目链接 题目描述 题解思路 我们遍历长度为k的窗口,用一个哈希表记录窗口内的所有元素(用来对窗口内元素去重),我们取哈希表中元素数量大于等于m的窗口总和的最大值 题解代码 use std::coll…

网站建设信息平台为企业做贡献的句子

1.uImage zImage Image bzImage的区别 \qquaduImage既包括内核数据,又包括和uboot的衔接数据;zImage Image bzImage本质是一样的,但是数据压缩的格式不同,只包含内核内容。 2.uboot内核启动条件 \qquad启动参数;文件系…

网站开发的相关技能有哪些积分网站运营建设投标书

告别2023,迎接2024。大模型技术已成为业界关注焦点,你是否也渴望掌握这一领域却又不知从何学起? 本篇文章将特别针对入门新手,以浅显易懂的方式梳理大模型的发展历程、核心网络结构以及数据微调等关键技术。 如果你在阅读中收获…

如何用 ftp上传网站网页制作模板登录

学生公寓管理系统目录 目录 基于Springboot的学生公寓管理系统设计与实现 一、前言 二、系统功能设计 三、系统实现 1、宿舍列表 2、宿舍公告信息管理 3、宿舍公告类型管理 四、数据库设计 1、实体ER图 五、核心代码 六、论文参考 七、最新计算机毕设选题推荐 八…

企业门户网站的意义杨凌开发建设局网站

本文转载自公众号:AI科技大本营。 分享嘉宾 | 刘升平(云知声 AI Labs 资深技术专家)来源 | AI 科技大本营在线公开课人机对话系统,或者会话交互,有望成为物联…

网站服务器备案查询网站备案棋牌源码论坛

一、行业背景 二、行业特点 1.供电可靠性要求高:医院配电系统复杂,门诊、急救、手术室、ICU/CCU、血液透析等场合特一级和一级负荷比较多,一旦发生故障会造成严重影响,对配电可靠性要求极高。 2.能耗水平高:医院能耗…

网站开发的费用景德镇建站公司

注意:这种写法,是有问题的。注册事件是在页面加载完毕以后就完成了,但此时并没有触发事件。事件触发是由用户在页面上点击时才会触发,所以说当用户点击时,才会执行事件处理函数,那么此时的i已经变成了4&…

做企业网站有什么好处访问紧急升级中通知问升级

近日博主 ruanyf 在网上发布了一条关于套接字“socket”的解释,引发了网友对于那些 IT 界的神翻译的讨论: 突然想到,socket就是插座。服务器的socket,就是服务器提供插座,等着客户端的插头插进来。一旦插入完成&#x…

AT_arc172_d [ARC172D] Distance Ranking

比较牛的构造题,AT 出题人还是太有水平了。 首先我们想如果两两距离相同该怎么构造。 这一步比较简单,直接每一维都分配给一个坐标一个 \(1\) 即可。 然后我们改成小于号,考虑一些微小的扰动,将上述 \(1\) 改成 \(…

网站建设方向课程苏州网站建设选苏州梦易行

文章目录 前言一、SpringMvc1、简介2、核心组件和调用流程2.1 涉及组件的理解 3、小案例快速体验3.1场景需求3.1.1 导入依赖3.1.2 controller声明3.1.3 核心配置类3.1.4 环境搭建3.1.6 配置tomcat3.1.7 测试 二、SpringMvc 接收参数1.路径设置注解2、param接收参数四种类型2.1 …

江苏省建设工程质量监督站网站优设网专利

1.概述 本文将重点介绍通过Spring设置Hibernate 3 –我们将研究如何同时使用XML和Java配置通过Hibernate 3和MySQL设置Spring 3。 2. Hibernate 3的Java Spring配置 使用Spring和Java配置来设置Hibernate 3很简单: import java.util.Properties; import javax.sql…

教做世界美食的网站wordpress 新建页面 超链接

一、介绍 相同点: eglCreatePbufferSurface 和 eglCreateWindowSurface 都是 OpenGL ES 中用于创建不同类型的EGL表面的函数,以便在OpenGL ES中进行渲染。 不同点: 选择使用哪种表面类型取决于你的需求。如果你只是需要在内存中进行离屏渲…

服务器在国外未备案网站asp网页制作教程

1.验证(Authentication) 确认通信对方身份的过程。 2.证书(Certificate) 一份数字签名声明,用于证明某个实体(个人、公司等)的身份和公钥。证书可以是自签名的,也可以是由证书颁发…

网站开发 实训 报告门户网站开发注意事项

来源:电子产品世界CPU(Centralprocessingunit)是现代计算机的核心部件,又称为“微处理器”。对于PC而言,CPU的规格与频率常常被用来作为衡量一台电脑性能强弱重要指标。Intelx86架构已经经历了二十多个年头,而x86架构的CPU对我们大…

微信公众号模板素材网站wordpress扫码付费可见插件

在业务项目的开发中,我们经常需要将 Java 对象进行转换,比如从将外部微服务得到的对象转换为本域的业务对象 domainobject,将 domainobject 转为数据持久层的 dataobject,将 domainobject 转换为 DTO 以便返回给外部调用方等。在转…

企业建网站方案怎么制作网站镜像

串口(RS - 232) 串行接口是将FPGA连接到PC的一种简单方法。我们只需要一个收发模块。 异步发射器 它通过序列化要传输的数据来创建一个信号“TxD”。 异步接收器 它从FPGA外部接收信号“RxD”,并对其进行“反序列化”,以便在FPGA内部轻松使用。 RS-232串行接口是如何工作…

Python爬虫实现大乐透历史数据抓取

前言 公司楼下恰好毗邻中国体育彩票中心,午间饭后,与同事们总会相约前往,各自投下两注希望,既是为中国的公益事业贡献一份力量,也怀揣着对瞬间改变命运的微妙幻想。对于中奖概率的理性认知,我们并不缺乏,但内心…

【读书笔记】《深入理解计算机系统(原书第三版)》第一章 计算机系统漫游

引言 计算机系统是由硬件和系统软件组成的,它们共同工作来运行应用程序。 1.1 信息就是 位 + 上下文 ASCII标准:用一个唯一的单字节大小的整数值来表示每个字符。大部分的现代计算机系统都使用 ASCII 标准来表示文本…

如何将PPT每一页批量导出为高清JPG图片?一文讲清处理流程

如何将PPT每一页批量导出为高清JPG图片?一文讲清处理流程pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consola…

实用指南:计算机视觉:基于YOLOv11 实例分割与OpenCV 在 Java 中的实现图像实例分割

实用指南:计算机视觉:基于YOLOv11 实例分割与OpenCV 在 Java 中的实现图像实例分割pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; f…