位置: 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子组件监听父组件)

  • 荣耀50se耳机怎么用(荣耀50se 耳机)

    荣耀50se耳机怎么用(荣耀50se 耳机)

  • 荣耀x30怎么调出返回键(荣耀x30怎么调出虚拟按键)

    荣耀x30怎么调出返回键(荣耀x30怎么调出虚拟按键)

  • iphone13有微距功能吗(苹果13支持微距)

    iphone13有微距功能吗(苹果13支持微距)

  • 惠普打印机硒鼓怎么拆(惠普打印机硒鼓怎么取出来)

    惠普打印机硒鼓怎么拆(惠普打印机硒鼓怎么取出来)

  • 微信怎么恢复出厂设置(微信怎么恢复出厂头像)

    微信怎么恢复出厂设置(微信怎么恢复出厂头像)

  • 手机定时开关机怎么设置(手机定时开关机会影响手机寿命吗)

    手机定时开关机怎么设置(手机定时开关机会影响手机寿命吗)

  • 微信只能听筒模式了怎么办(微信只能听听筒)

    微信只能听筒模式了怎么办(微信只能听听筒)

  • 电子商务是否等同于商务电子化(1、电子商务)

    电子商务是否等同于商务电子化(1、电子商务)

  • 中国第一台计算机名字(中国第一台计算机是谁发明的)

    中国第一台计算机名字(中国第一台计算机是谁发明的)

  • 腾讯视频绑定的手机号不是自己的怎么办(腾讯视频绑定的微信怎么解绑)

    腾讯视频绑定的手机号不是自己的怎么办(腾讯视频绑定的微信怎么解绑)

  • 华为p40pro与p40pro+区别(华为p40pro与p40pro+的区别)

    华为p40pro与p40pro+区别(华为p40pro与p40pro+的区别)

  • 计算机网络协议的几个要素(计算机网络协议中,不包括)

    计算机网络协议的几个要素(计算机网络协议中,不包括)

  • ppt的默认保存格式是什么(ppt的默认保存在哪)

    ppt的默认保存格式是什么(ppt的默认保存在哪)

  • 苹果如何不接陌生人电话(iphone怎么拒接陌生人电话)

    苹果如何不接陌生人电话(iphone怎么拒接陌生人电话)

  • qq可能感兴趣的群怎么关闭(qq你可能感兴趣隐藏了过会又出来)

    qq可能感兴趣的群怎么关闭(qq你可能感兴趣隐藏了过会又出来)

  • 移动宽带怎么改wifi密码(移动宽带怎么改电信宽带)

    移动宽带怎么改wifi密码(移动宽带怎么改电信宽带)

  • ie浏览器不兼容怎么办(网银ie浏览器不兼容)

    ie浏览器不兼容怎么办(网银ie浏览器不兼容)

  • 手机怎么测高铁速度(手机怎么测高铁时速)

    手机怎么测高铁速度(手机怎么测高铁时速)

  • 苹果手机怎么设置自动开关机时间(苹果手机怎么设置铃声来电铃声)

    苹果手机怎么设置自动开关机时间(苹果手机怎么设置铃声来电铃声)

  • 触宝电话如何设置方法(触宝电话如何设置密码)

    触宝电话如何设置方法(触宝电话如何设置密码)

  • 什么叫全息影像技术(什么叫做全息影像技术)

    什么叫全息影像技术(什么叫做全息影像技术)

  • win10锁屏壁纸保存方法(window10锁屏壁纸图片在哪)

    win10锁屏壁纸保存方法(window10锁屏壁纸图片在哪)

  • 系统提示IP地址冲突怎么办(电脑网络提示ip地址错误怎么办)

    系统提示IP地址冲突怎么办(电脑网络提示ip地址错误怎么办)

  • 日落后的托莱多全景,西班牙 (© Frank Fischbach/Alamy)

    日落后的托莱多全景,西班牙 (© Frank Fischbach/Alamy)

  • 物流辅助服务税率
  • 个人服务费发票几个点
  • 以固定资产投资的会计处理
  • 小规模企业税务登记流程
  • 公司购买设备报告怎么写
  • 个体工商户发票额度
  • 不动产折旧年限的规定
  • 收到赠品入库需要用什么记录
  • 增值税预缴税金交错了怎么办
  • 公司租车怎么抵税
  • 电商平台收取会员费吗
  • 广告公司制作警示牌可以开具什么样的发票?
  • 没有房产证应该找谁
  • 企业所得税税负怎么算
  • 劳务分包有执照没资质能开票吗?
  • 关于企业所得税若干优惠政策的通知
  • 营业外支出增值税率是多少
  • 税率16降到13什么时候实施
  • 坏账损失怎么核算
  • 买车的增票可以分两次吗
  • 当月有进项税额转出怎么结转未交增值税
  • 不同税率的发票可以合并入账吗
  • 房产公司增值税怎么交
  • 网页显示不全怎么回事
  • 已抵扣的固定资产进项税转出如何处理
  • 销售费用有哪些?
  • windows8.1下Apache+Php+MySQL配置步骤
  • php初始化会话
  • 公司用车车祸一般谁负责
  • 金银首饰在哪个软件买
  • 手机电脑排行
  • 银边翠的栽培历史
  • 员工安置费标准出台
  • 安装nodemodules
  • 企业所得税退税流程
  • apache无法访问自己的页面
  • 关系抽取系统的要求
  • 反向选择命令
  • 税款已缴纳可以作废申报吗
  • 纳税人识别号的英文缩写
  • 什么是财务报表分析,方法有哪些
  • uniapp开发总结
  • phpcms官网打不开
  • 织梦如何使用
  • 帝国cms吧
  • 账簿启用交接表图片
  • sql dbo
  • 固定资产是怎么算出来的
  • 二手车没有发票能上牌吗
  • 小型微利企业计算企业所得税
  • 没有增值税专用发票
  • 上年计提费用多了,要怎样调
  • 合伙企业一般纳税人六税两费
  • 企业税负是否包含增值税
  • 公司注销前如何先注销工会
  • 进口增值税如何勾选认证
  • 其他人挂靠公司交社保会计处理怎么做?
  • 查定征收在哪一章
  • 职工福利费的扣除标准工资总额包括什么
  • 营业收入包括主营业务收入
  • 公司提供给员工暂借款未还款离职
  • 企业购买银行理财产品的会计处理
  • solaris命令大全
  • 系统盘如何重装
  • windows route metric
  • win7系统如何隐藏任务栏
  • linux 解析
  • WINDOWS操作系统支持的文件系统主要有三种类型
  • win7桌面图标变成了lnk
  • linux和windows交互
  • Linux常用命令的实验总结
  • windows聚焦失效
  • win10系统中断怎么解除
  • kill命令用法
  • linux系统修改
  • glib库
  • nodejs调用打印机驱动
  • javascript 函数
  • Python如何判断数据类型
  • 企业所得税的改革与完善
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设