位置: IT常识 - 正文

微信小程序项目实例——我有一支画笔(画画)(微信小程序项目中app.js文件是全局样式文件)

编辑:rootadmin
微信小程序项目实例——我有一支画笔(画画) 微信小程序项目实例——我有一支画笔(画画)文章目录微信小程序项目实例——我有一支画笔(画画)一、项目展示二、首页三、自由绘图四、照片绘图文末

推荐整理分享微信小程序项目实例——我有一支画笔(画画)(微信小程序项目中app.js文件是全局样式文件),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:微信小程序项目开发实战,微信小程序项目方案,微信小程序项目代码,微信小程序项目代码,微信小程序项目中的 ______ 文件是全局配置文件,微信小程序项目中的 ______ 文件是全局配置文件,微信小程序项目方案,微信小程序项目方案,内容如对您有帮助,希望把文章链接给更多的朋友!

项目代码见文字底部,点赞关注有惊喜


一、项目展示

我有一支画笔是一款绘图小程序 用户可以在白板上自由画画,也可以选择一张本地的照片,在照片上画画 用户可以自由修改画笔宽度、颜色,同时绘画可以保存到本地

二、首页

首页由两张图片构成 代表自由绘图和照片绘图两个功能 用户点击选择不同功能

<!--index.wxml--><view class="painting" bindtap="toPainting"> <image src="../../images/paint3.png" mode="aspectFit"/></view><view class="painting2" bindtap="toPainting2"> <image src="../../images/paint2.png" mode="aspectFit"/></view>/**index.wxss**/page{ width: 100%; height: auto; display: flex; flex-direction: column; align-items: center;}.painting{ display: flex; flex-direction: column; align-items: center; justify-content: center; margin-top: 100px; width: 260rpx; height: 260rpx; /* background-color: red; */}.painting2{ display: flex; flex-direction: column; align-items: center; justify-content: center; margin-top: 100px; width: 260rpx; height: 260rpx; /* background-color: red; */}

首页效果如下:

三、自由绘图微信小程序项目实例——我有一支画笔(画画)(微信小程序项目中app.js文件是全局样式文件)

用户可以在空白页面上进行绘图 用户可以调整画笔粗细,画笔颜色 也可以使用橡皮擦来擦除 最后可以将画好的图保存到本地

下面仅展示UI界面代码

<!--painting.wxml--><canvas canvas-id="myCanvas" style="height: calc(100vh - {{canvasHeight}}px)" disable-scroll="true" bindtouchend="toucheEnd" bindtouchstart="touchStart" bindtouchmove="touchMove"/><view class="bottom"> <block wx:for="{{btnInfo}}" wx:key="{{index}}"> <view class="list-item" data-type="{{item.type}}" style="background: {{item.background}}" bindtap="tapBtn"></view> </block></view><view class="choose-box" wx:if="{{width}}"><view class="color-box" style="background: {{'rgb(' + r + ', ' + g + ', ' + b + ')'}}; height: {{w}}px; border-radius: {{w/2}}px"></view> <slider min="1" max="50" step="1" show-value="true" value="{{w}}" bindchange="changeWidth"/></view><view class="choose-box" wx:if="{{color}}"> <view class="color-box" style="background: {{'rgb(' + r + ', ' + g + ', ' + b + ')'}}; height: {{w}}px; border-radius: {{w/2}}px"></view> <slider min="0" max="255" step="1" show-value="true" activeColor="red" value="{{r}}" data-color="r" bindchange="changeColor"/> <slider min="0" max="255" step="1" show-value="true" activeColor="green" value="{{g}}" data-color="g" bindchange="changeColor"/> <slider min="0" max="255" step="1" show-value="true" activeColor="blue" value="{{b}}" data-color="b" bindchange="changeColor"/></view><view class="choose-box-flex" wx:if="{{clear}}"> <view class="choose-item" bindtap="chooseEraser"> <view class="choose-img" style='background: url("https://www.yuucn.com/wp-content/uploads/2023/04/1682815302-9c519718bc0e8e5.png") white no-repeat; background-size: 26px 26px;background-position: 2px 2px; border: {{eraser ? "2px solid red" : "2px solid transparent"}}'></view> <view>橡皮擦</view> </view> <view class="choose-item" bindtap="clearCanvas"> <view class="choose-img" style='background: url("https://www.yuucn.com/wp-content/uploads/2023/04/1682815310-9c519718bc0e8e5.png") white no-repeat; background-size: 26px 26px;background-position: 2px 2px;'></view> <view>清空</view> </view></view>/* painting.wxss */page { background: rgba(153, 204, 255, 0.1);}canvas { width: 100vw;}.bottom { width: 100vw; height: 50px; position: absolute; bottom: 0; display: flex; justify-content: space-around;}.list-item { width: 30px; height: 30px; margin: 10px 0; border-radius: 50%;}.choose-box { width: 100vw; position: absolute; bottom: 50px;}.color-box { width: 50vw; margin: 20px auto;}slider { margin: 20px 30px;}.choose-box-flex { display: flex; justify-content: space-around; width: 100vw; position: absolute; bottom: 50px; font-size: 16px; color: #666; text-align: center;}.choose-img { width: 30px; height: 30px; margin: 10px; border-radius: 50%; background: white;}

下面我将给大家演示一下我的室友!!! (喜欢我室友的可以私信我,送微信号!!!)

四、照片绘图

用户可以选择一张照片 在照片的基础上进行绘画 其余功能和自由绘画一致

下面仅展示UI界面代码

<!--painting-2.wxml--><canvas canvas-id="myCanvas" disable-scroll="true" bindtouchstart="touchStart" bindtouchmove="touchMove" bindtouchend="touchEnd" wx:if="{{hasChoosedImg}}" style="height: {{(canvasHeightLen == 0) ? canvasHeight : canvasHeightLen}}px; width: {{canvasWidth}}px;" /><view class="failText" wx:if="{{!hasChoosedImg}}" click="">没有选择照片,点击重新选择</view><view class="bottom"> <block wx:for="{{btnInfo}}" wx:key="{{index}}"> <view class="list-item" data-type="{{item.type}}" style="background: {{item.background}}" bindtap="tapBtn"></view> </block></view><view class="choose-box" wx:if="{{width}}"><view class="color-box" style="background: {{'rgb(' + r + ', ' + g + ', ' + b + ')'}}; height: {{w}}px; border-radius: {{w/2}}px"></view> <slider min="1" max="50" step="1" show-value="true" value="{{w}}" bindchange="changeWidth"/></view><view class="choose-box" wx:if="{{color}}"> <view class="color-box" style="background: {{'rgb(' + r + ', ' + g + ', ' + b + ')'}}; height: {{w}}px; border-radius: {{w/2}}px"></view> <slider min="0" max="255" step="1" show-value="true" activeColor="red" value="{{r}}" data-color="r" bindchange="changeColor"/> <slider min="0" max="255" step="1" show-value="true" activeColor="green" value="{{g}}" data-color="g" bindchange="changeColor"/> <slider min="0" max="255" step="1" show-value="true" activeColor="blue" value="{{b}}" data-color="b" bindchange="changeColor"/></view>/* painting-2.wxss */page { background: rgba(153, 204, 255, 0.1);}.failText { margin-top: 100px; text-align: center; color: #888;}.bottom { width: 100vw; height: 50px; position: absolute; bottom: 0; display: flex; justify-content: space-around;}.list-item { width: 30px; height: 30px; margin: 10px 0; border-radius: 50%;}.choose-box { width: 100vw; position: absolute; bottom: 50px;}.color-box { width: 50vw; margin: 20px auto;}slider { margin: 20px 30px;}.choose-box-flex { display: flex; justify-content: space-around; width: 100vw; position: absolute; bottom: 50px; font-size: 16px; color: #666; text-align: center;}.choose-img { width: 30px; height: 30px; margin: 10px; border-radius: 50%; background: white;}

下面我将画我的室友2号!! 我的室友2号是校草!!! 中意的请私信我发他微信号!

文末

具体的介绍就到这里了 小程序有时候会卡顿一下但是不多 有兴趣的同学可以继续研究 代码放到下面链接里了

点击下载 小程序

本文链接地址:https://www.jiuchutong.com/zhishi/298444.html 转载请保留说明!

上一篇:ChatGPT解开了我一直以来对自动化测试的疑惑

下一篇:vue子组件监听父组件数据变化并作出改变(亲测有效)(vue子组件监听父组件)

  • 红米note9和红米note9pro区别(红米note9和红米note11哪个好)

    红米note9和红米note9pro区别(红米note9和红米note11哪个好)

  • 手机后盖原装和非原装的区别(手机后盖原装和原装区别)

    手机后盖原装和非原装的区别(手机后盖原装和原装区别)

  • 小米手环3划痕处理方法(小米手环划痕处理方法)

    小米手环3划痕处理方法(小米手环划痕处理方法)

  • 电子邮件中@后面的部分是(电子邮件后面是啥)

    电子邮件中@后面的部分是(电子邮件后面是啥)

  • 钉钉视频会议怎样两个群同时进行(钉钉视频会议怎么共享屏幕)

    钉钉视频会议怎样两个群同时进行(钉钉视频会议怎么共享屏幕)

  • 微信朋友圈在哪里打开(微信朋友圈在哪里关闭)

    微信朋友圈在哪里打开(微信朋友圈在哪里关闭)

  • ps保存和另存都没反应(ps另存为只有三种格式)

    ps保存和另存都没反应(ps另存为只有三种格式)

  • 视频聊天软件平台都有哪些(视频聊聊软件)

    视频聊天软件平台都有哪些(视频聊聊软件)

  • 抖音该视频搬运是什么意思(抖音视频搬运被原作者举报)

    抖音该视频搬运是什么意思(抖音视频搬运被原作者举报)

  • 剪映怎么把照片做成视频(剪映怎么把照片做成动态视频)

    剪映怎么把照片做成视频(剪映怎么把照片做成动态视频)

  • 批量解除关系是什么意思(如何批量解除合并单元格)

    批量解除关系是什么意思(如何批量解除合并单元格)

  • 钉钉老师能看到学生私聊吗(钉钉老师能看到学生在干嘛吗)

    钉钉老师能看到学生私聊吗(钉钉老师能看到学生在干嘛吗)

  • 一个ip地址由多少位二进制组成(一个IP地址由多少位)

    一个ip地址由多少位二进制组成(一个IP地址由多少位)

  • b站33卡不激活没事吗(哔哩哔哩33卡不激活)

    b站33卡不激活没事吗(哔哩哔哩33卡不激活)

  • 腾讯会议为什么没有声音(腾讯会议为什么不能用蓝牙耳机)

    腾讯会议为什么没有声音(腾讯会议为什么不能用蓝牙耳机)

  • office一定要安装在c盘吗(office安装必须要联网吗)

    office一定要安装在c盘吗(office安装必须要联网吗)

  • 喜马拉雅会员下载后非会员能听吗(喜马拉雅会员2020)

    喜马拉雅会员下载后非会员能听吗(喜马拉雅会员2020)

  • MIUI11推送第二批有哪些机型(miui11第二批什么时候推送)

    MIUI11推送第二批有哪些机型(miui11第二批什么时候推送)

  • 抖音恢复删除的视频方法(抖音恢复删除的私信)

    抖音恢复删除的视频方法(抖音恢复删除的私信)

  • iphone11是双卡双待怎么插卡(iphone11是双卡双待怎么设置主副号)

    iphone11是双卡双待怎么插卡(iphone11是双卡双待怎么设置主副号)

  • 三星s6 sm-g9208可不可以使用应用分身

    三星s6 sm-g9208可不可以使用应用分身

  • 抖音如何卖自己商品(抖音如何卖自己的货和挂车)

    抖音如何卖自己商品(抖音如何卖自己的货和挂车)

  • m1822是什么手机(m12是啥手机)

    m1822是什么手机(m12是啥手机)

  • oppo手机电话录音在哪里找出来(oppo手机电话录音存在哪个文件夹)

    oppo手机电话录音在哪里找出来(oppo手机电话录音存在哪个文件夹)

  • 手机怎么去除视频文字(手机怎么去除视频中多余的人)

    手机怎么去除视频文字(手机怎么去除视频中多余的人)

  • Windows更新下载慢怎么办(windows更新下载的文件在哪)

    Windows更新下载慢怎么办(windows更新下载的文件在哪)

  • 红冲以后怎么做账
  • 资产计提折旧的科目
  • 税控盘当月不抵扣怎么申报
  • 普通发票不能抵扣进项税额怎么做账
  • 本年利润期末一般有余额吗
  • 融资租赁会计核算的一般原则是什么
  • 财产保险合同的被保险人自其知道
  • 低值易耗品费用包括哪些
  • 转让房地产未完工项目增值税发票如何处理?
  • 计税依据的三种类型
  • 长期待摊费用进项税可以一次性抵扣吗?
  • 有限公司跟股份有限公司的区别
  • 初期厂房监理费怎么做账?
  • 冲减成本怎么做会计分录
  • 企业收不回款项计入什么科目?
  • 购入办公楼的入账价值
  • 发票已开款项未入账有什么影响?
  • 营改增后机械设备租赁需缴纳什么税?
  • 私募基金管理人a向投资者推介私募产品,不合规
  • 代收水电费如何开票商品分类编码
  • 文化事业建设费减免政策
  • 小规模纳税人代账多少钱一个月
  • 展会门票入什么科目
  • 高新企业最新政策2020
  • 公司开13个点增值税交多少钱
  • 自产原材料
  • 专柜公司货什么意思
  • flash是什么文件
  • cpqa1000.exe是安全进程吗 cpqa1000进程有什么作用
  • rnbrcache.exe是什么意思
  • 公司登记注册费每年都要交吗
  • 计提房产税会计分录怎么做账
  • 酒店购买天然气流程
  • html转化成图片
  • 建信融通e信通贴现几天到账
  • vue2.0安装
  • win11 退回
  • 使用vue要安装什么软件
  • redis incr 高并发
  • 财政拨付资金什么意思
  • 缴纳的印花税怎么入账
  • 复核人和收款人一样了怎么办
  • 单位代扣公积金是什么意思
  • 一个残疾证一年单位免多少税2023
  • 企业付给个人工资怎么算
  • 股东借款怎么转为利润分配
  • 增值税发票认证勾选平台
  • 计提固定资产折旧借方科目包括
  • sqlserver存储过程加密
  • 定期定额征收和核定征收哪个好
  • 其他应收款借方表示增加吗
  • 暂估入库收到发票后摘要
  • 国际快递运输服务有哪些
  • 无形资产达到可使用状态前如何入账
  • 产房日常维修费用
  • 报废厂子出售
  • 永续债举例
  • 房屋租赁合同印花税谁交
  • 汇算清缴结束后发现有错账
  • 制造费用结转到哪个科目
  • 加班餐补需要发票嘛
  • 商贸公司库存表怎么做
  • 装修材料增值税发票明细表
  • windowsxp不能启动怎么修复
  • win7桌面和win10桌面
  • win10禁用系统uac
  • windows xp和windows 2000
  • fedoral
  • mac如何重装系统win10
  • centos安装scala
  • Win10 Mobile 10586.312提前体验
  • css实现弹窗
  • javascript基础编程
  • android点击事件onclick用法
  • 新疆税务局电子
  • 税务局怎么增加购票员
  • 电子税务局跨区域
  • 电子税务平台怎么开发票
  • 发货确认收入还是以开票确认收入
  • 税收优惠政策有哪些企业
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设