位置: 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账号实名认证怎么强制解除)

  • ios13可以清空流量统计吗(ios清空流量数据)

    ios13可以清空流量统计吗(ios清空流量数据)

  • 笔记本像素一般是多少(笔记本像素密度一般是多少)

    笔记本像素一般是多少(笔记本像素密度一般是多少)

  • ipad下载爱奇艺怎么不是全屏(ipad下载爱奇艺hd版还是正常版)

    ipad下载爱奇艺怎么不是全屏(ipad下载爱奇艺hd版还是正常版)

  • 相册视频打不开怎么回事(ios16.5相册视频打不开)

    相册视频打不开怎么回事(ios16.5相册视频打不开)

  • 抖音直播怎么看(抖音直播怎么看历史记录)

    抖音直播怎么看(抖音直播怎么看历史记录)

  • 小米10充电要多久呀(小米10充电要多久)

    小米10充电要多久呀(小米10充电要多久)

  • iphonex要不要更新13.4

    iphonex要不要更新13.4

  • 微信清空聊天记录对方能看到吗(微信清空聊天记录是清理内存吗)

    微信清空聊天记录对方能看到吗(微信清空聊天记录是清理内存吗)

  • 苹果lla是哪个国家(ll/a是什么版本的苹果手机)

    苹果lla是哪个国家(ll/a是什么版本的苹果手机)

  • pc适配器保修多久(适配器在保修范围内吗)

    pc适配器保修多久(适配器在保修范围内吗)

  • 抖音本场音浪5万是什么意思(抖音本场音浪1万是多少钱)

    抖音本场音浪5万是什么意思(抖音本场音浪1万是多少钱)

  • ps路径转换为选区快捷键(ps路径转换为选区怎么弄)

    ps路径转换为选区快捷键(ps路径转换为选区怎么弄)

  • excel中输入当前时间可按组合键(excel选一列快捷键)

    excel中输入当前时间可按组合键(excel选一列快捷键)

  • 五类线能用200m宽带吗(五类线能用超五类水晶头吗)

    五类线能用200m宽带吗(五类线能用超五类水晶头吗)

  • win10系统扩大c盘容量(win10电脑如何扩大c盘空间)

    win10系统扩大c盘容量(win10电脑如何扩大c盘空间)

  • 手机怎么恢复浏览器历史记录(手机怎么恢复浏览器下载记录)

    手机怎么恢复浏览器历史记录(手机怎么恢复浏览器下载记录)

  • 芒果tv会员怎么注销(芒果tv会员怎么取消给别人用)

    芒果tv会员怎么注销(芒果tv会员怎么取消给别人用)

  • 什么是代理服务器(什么是代理服务类社会中介组织)

    什么是代理服务器(什么是代理服务类社会中介组织)

  • 电子保修卡要不要激活(电子保修卡是免费修吗)

    电子保修卡要不要激活(电子保修卡是免费修吗)

  • 键盘shift在哪里

    键盘shift在哪里

  • 魅族16如何强制关机(魅族16怎么强制重启)

    魅族16如何强制关机(魅族16怎么强制重启)

  • qq怎么开远程控制(如何用qq开远程控制)

    qq怎么开远程控制(如何用qq开远程控制)

  • win10动态锁设置找不到配对的设备怎么办(win 10动态锁是什么)

    win10动态锁设置找不到配对的设备怎么办(win 10动态锁是什么)

  • 冬天的水獭溪,佛蒙特州布兰登 (© Caleb Kenna/Offset)(水獭冬眠吗?)

    冬天的水獭溪,佛蒙特州布兰登 (© Caleb Kenna/Offset)(水獭冬眠吗?)

  • 做账报税简单吗
  • 应交税费和应交增值税
  • 房产公司结转收入条件
  • 赞助支出和广告支出的区别
  • 利润表年底净利润是正数吗
  • 残保金漏报的财务怎么办
  • 小规模纳税检查怎么做
  • 预收货款增值税纳税义务发生时间如何确定
  • 固定资产的维护费计入什么科目
  • 长期待摊费用可以转入费用或者成本吗
  • 销售的行为
  • 企业交城建税的分录
  • 免抵税额和免抵退税额有什么区别
  • 营改增后发票
  • 人身意外保险费可以扣除企业所得税吗
  • 企业研发过程中特殊收入的会计处理
  • excel中如何选择只能选择的项
  • 库存商品结转成本
  • 俄勒冈州邮编
  • 企业购进房产怎么抵扣
  • 待摊费用和预提费用改为什么科目了
  • 琥珀山庄位于我国哪个省
  • php与ajax交互
  • 资本公积属于谁
  • 前端高手
  • 自动驾驶讲解
  • php导出表格
  • 历史成本和重置成本的区别
  • 员工宿舍的物业费能否抵扣
  • 企业筹建期间
  • 织梦会员系统
  • 进程 python
  • python最小正整数
  • 无偿划转股权涉税
  • 支付宝支付凭证在哪里查
  • 航天金税服务费怎么交
  • 工程款增值税专用发票需要写工程名称吗
  • 开发票需要填银行吗?
  • 母子公司关联交易规定
  • 出纳与会计现金的区别
  • 行政机关现金管理办法
  • 购买税控盘的账务处理
  • 个体工商户员工如何报生育险
  • 进项税额已经抵扣会计分录
  • 收购企业如何做账务处理
  • 收到税务局邮件
  • 应收账款和预收账款都是企业的债权
  • 互联网企业资产评估
  • 如何理解会计中的借贷? 知乎
  • 应收账款转营业外支出
  • 自制半成品销售方案
  • 公允价值模式下出售投资性房地产
  • 财政登记证取消了吗
  • 主营业务收入包括哪些内容
  • SQL Transcation的一些总结分享
  • sql sever使用教程
  • mysql三种安装方式
  • linux系统vim编辑readonly option
  • xp怎么安装framework
  • window8系统更新
  • xp操作系统还能用吗
  • windowsxp怎么卸载
  • linux硬件设备分为
  • mac计算器快捷键
  • 苹果Mac OS X通知中心提示音怎么修改 OS X通知中心提示音更换方法图解
  • win8怎样恢复系统
  • win8休眠如何唤醒
  • nodejs制作网站
  • opengl 2
  • javascript编写
  • jquery 获取json的key
  • 安卓解析xml的几种方式
  • 怎么关闭android
  • jquery 菜单
  • jquery怎么给div赋值
  • 国税系统公务员政审父母超生合格吗
  • 单位车辆购置税怎么申报缴纳
  • 大修费属于什么费用
  • 会计建账时一般需要哪几本账
  • 薰衣草商业价值
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设