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

  • oppo蓝牙耳机丢了怎么定位(oppo蓝牙耳机丢了一只怎么找另外一只)

    oppo蓝牙耳机丢了怎么定位(oppo蓝牙耳机丢了一只怎么找另外一只)

  • OPPO手机两张截图如何并列放在一起(oppo手机两张截屏如何合并)

    OPPO手机两张截图如何并列放在一起(oppo手机两张截屏如何合并)

  • 苹果手机怎么把旧手机的app转到新手机上(苹果手机怎么把旧手机的东西导入新手机)

    苹果手机怎么把旧手机的app转到新手机上(苹果手机怎么把旧手机的东西导入新手机)

  • airpodspro安卓切换三种模式(airpodspro安卓切换降噪)

    airpodspro安卓切换三种模式(airpodspro安卓切换降噪)

  • 剪映导不出视频的原因(剪映导不出视频找不到使用的VIP)

    剪映导不出视频的原因(剪映导不出视频找不到使用的VIP)

  • 微信如何取消横屏模式(微信如何取消横屏设置)

    微信如何取消横屏模式(微信如何取消横屏设置)

  • 苹果手机如何关闭所有短信接收(苹果手机如何关机)

    苹果手机如何关闭所有短信接收(苹果手机如何关机)

  • 淘宝揽件多长时间超时(淘宝揽件多久算虚假发货)

    淘宝揽件多长时间超时(淘宝揽件多久算虚假发货)

  • 恢复出厂家设置后微信记录还有吗(恢复出厂家设置怎么变回来)

    恢复出厂家设置后微信记录还有吗(恢复出厂家设置怎么变回来)

  • iPhone录屏红色栏消除(iphone录屏红色栏消除app)

    iPhone录屏红色栏消除(iphone录屏红色栏消除app)

  • 苹果6怎么录屏

    苹果6怎么录屏

  • 数据卡是什么意思(数据卡怎么办有什么办法解决)

    数据卡是什么意思(数据卡怎么办有什么办法解决)

  • 华为nava7与nava7se有什么区别

    华为nava7与nava7se有什么区别

  • 在计算机中,媒体是指什么(在计算机中媒体指的是什么)

    在计算机中,媒体是指什么(在计算机中媒体指的是什么)

  • 华为荣耀30s尺寸(华为荣耀30s尺寸厘米)

    华为荣耀30s尺寸(华为荣耀30s尺寸厘米)

  • 天正t20v4.0支持什么版本cad(天正t20支持cad2018吗)

    天正t20v4.0支持什么版本cad(天正t20支持cad2018吗)

  • 数据文件可以删除吗(数据文件删除了影响软件应用吗)

    数据文件可以删除吗(数据文件删除了影响软件应用吗)

  • vivox20上面hd怎么关(vivox20怎么设置hd)

    vivox20上面hd怎么关(vivox20怎么设置hd)

  • 手机怎么投电视(苹果手机怎么投电视)

    手机怎么投电视(苹果手机怎么投电视)

  • realmex2pro怎么更换锁屏壁纸(realmex2怎么升级realme ui2.0)

    realmex2pro怎么更换锁屏壁纸(realmex2怎么升级realme ui2.0)

  • 金博会是什么(金博会是什么意思lay是什)

    金博会是什么(金博会是什么意思lay是什)

  • 如何清除拼多多购买记录(如何清除拼多多浏览的商品痕迹)

    如何清除拼多多购买记录(如何清除拼多多浏览的商品痕迹)

  • 退apple care要什么条件(退applecare多久到账)

    退apple care要什么条件(退applecare多久到账)

  • anglar和vue的区别(vue和angular的区别)

    anglar和vue的区别(vue和angular的区别)

  • pafmoo是什么手机(pafm00是什么手机)

    pafmoo是什么手机(pafm00是什么手机)

  • 苹果8通话录音在哪里(苹果8通话录音功能在哪里找)

    苹果8通话录音在哪里(苹果8通话录音功能在哪里找)

  • 增值税和城建税怎么算
  • 财产租赁所得怎么计算个人所得税
  • 关税减免形式主要包括
  • 向保险公司缴纳的保险费可以税前扣除吗
  • 科技公司的作用
  • 银行承兑汇票到期日期怎么算
  • 销售支付产品是什么意思
  • 调解书和判决书执行力度一样吗
  • 图书发票没有明细能报销吗?
  • 免税品销售有增值税吗
  • 其他业务收入和其他业务成本
  • 如何查发票真伪发票查询
  • 安装调试费计入什么科目
  • 实收资本是否可以更改
  • 企业开办费摊销期限的税法规定
  • 新租赁准则承租人计提折旧吗
  • 民办学校的财务制度
  • 电脑老是弹出广告怎么处理
  • ajax无刷新更新数据
  • 其他应收款年末怎么处理
  • 汽车报废残值收入怎么做账
  • php对象缓存
  • 政府搬迁补偿款怎么算
  • php用mysql连接数据库并查询
  • php 自动加载
  • coco2017数据集介绍
  • php文件打包下载
  • 支付的招标代理费计入成本还是费用
  • php管理员和用户登录
  • idea2020.2.3创建web
  • rsync连接
  • 固定资产的特征有哪些
  • discuz 首页设置
  • 为什么要扩展
  • 增值税是在年末怎么处理
  • 织梦面包屑导航最后的分隔符大于号去掉方法
  • SQL server 2008安装程序遇到以下错误 sku
  • curl抓包
  • 房地产企业买地
  • sql server的go
  • 临时用工费用计入什么会计科目
  • 企业之间无偿使用资金涉税
  • 工业企业销售分录
  • 债务重组损失如何做会计分录
  • 跨境电商怎么交流
  • 怎么去银行买承兑
  • 实际收到货款分录
  • 以前年度损益调整是什么意思
  • 物流代收货款怎么收费
  • 有留抵税额的会计处理
  • 待摊费用科目分录
  • 准予抵扣销项税额
  • 财产租赁合同印花税计税依据
  • 补计提上一年度工资
  • 计提时的会计分录
  • 软件公司购买软件用于研发
  • 会计基本前提包括会计主体货币计量资料完整和经济效益
  • 新会计准则捐赠收入
  • linux系统中cron命令
  • 苹果手机价格
  • freebsd常用命令
  • pe系统找不到系统
  • 怎么删除swapfile
  • linux 常见
  • css中的单位主要有哪些
  • Node.js中的包管理工具是什么
  • Linux删除大量文件
  • Apache服务器的安全缺陷
  • jquery回车触发事件
  • jquery中的eq是什么
  • JavaScript入门教程
  • js创建对象的方法有哪些
  • 怎么查其他公司的财务报表
  • 江苏电子税务局登录入口
  • 福建省农业厅副厅长梁
  • 长春市征收中心
  • 个税专项扣除填报错误怎么办
  • 税务设备有什么特点
  • 17%增值税什么时候开始
  • 一般纳税人税务事项告知书在哪里打
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设