canvas 绘制的头像黑边如何去掉啊? 怎么会有黑边线呢?[图片]
关于微信小程序canvas的各种坑?[自力更生自给自足的解决了这些问题,遇到同样问题的朋友可以参考参考] 1.用drawImage画线上图片在真机上显示不出来,模拟器上却可以显示(需要说明的是:drawImage画显示图片是需要获取到图片后才能开始画,并且获取的线上图片地址需要是https。)但是这些我都照做了可是真机上还是无法显示,为什么?我也试过下载到本地后画也没有用。 解决方法: 首先 ,我发现用canvas绘制线上图片时,必须先下载到本地,而且线上图片的地址必须是在配置的安全域名下,我遇到绘制不出的原因在于:没有等待图片完全下载好就绘制了,所以这里要考虑绘图顺序,可以用image的bindload事件或者downloadTask.onProgressUpdate来监听图片加载过程。 2.小程序的canvas没有裁剪的api,请问如何用canvas将图片画成圆形? 解决方法: 这个问题我是通过制作一张和头像图片一样大的中间有个圆形镂空(中间透明)的正方形图片绘制在头像上,在视觉上给头像做出圆形的效果。 3.`ctx.drawImage`绘制的画布,使用`ctx.clearRect`清除不了。 解决方法: 这个问题我没有解决。 4.模拟器上有个bug就是在画了图片后再画文字,文字会被覆盖,但是去真机上查看是没有问题的,文字可以正常显示。 解决方法: 这个问题是模拟器的bug。 5.为了让canvas不在页面显示,将canvas用view标签包起来后,给view设置了overflow=hidden和opacity=0的属性,是可以成功将canvas隐藏,但是在真机上测试时,一旦在这个隐藏的canvas上绘制图片,canvas又显示在屏幕上了。模拟器上是不会显示的。 解决方法: 由于canvas是原生的组件所以在模拟器上可以被隐藏,但是在真机上一直置于最上层,所以在真机上canvas一旦被绘制就一定会显示。我想了一个奇怪的方法,我在canvas的外层套了一个宽高正好一屏的view标签,然后将view的背景设置为黑色,再让canvas定位到屏幕的中间。这样看起来像是进入了图片预览。然后短暂延迟后通过 wx.canvasToTempFilePath生成图片后再调wx.previewImage。同时再用wx:if把canvas给销毁,用hidden把view给隐藏,页面每次进入的时候再还原初始值。以上是我根据我自己的需求想的折中办法,有相同情况的同学可以参考。(其实我想实现的最最效果是腾讯投票生成朋友圈二维码的那种,他们的canvas就没有显示在页面上,所以我猜想他们可能是在服务器端进行渲染后再传图给前端的) 6.canvas文字不能换行的问题 解决方法: 这个问题我是通过字符串截取的思路做的,固定每行的字数,为了美观用了ctx.setTextAlign('center')让每行字都水平居中对其。 ps:希望小程序官方能统一回答下这些问题,这几个问题中有些问题一直都有很多人问,可是没有一个好的回答,希望官方能有个好的解答谢谢啦!
2019-03-20可以的,通过数据驱动,用wx:for 循环遍历,动态添加和删除数据。
微信小程序可以在js中动态添加view等组件吗比如H5中可以用document.createElement()为页面添加HTML标签, 那么,在小程序中是否有类似的api,可以为wxml动态添加组件呢?
2019-03-04请问现在这个功能实现了吗?
小程序云开发数据库API的where方法目前有类似sql语句的like查询吗?- 需求的场景描述(希望解决的问题) 希望实现常见的模糊搜索功能 - 希望提供的能力 希望小程序云开发数据库API的where方法支持类似sql语句的like查询,
2019-01-21不大,顶多两三个页面,没多少东西,就是项目可能比较多吧,四个小程序可能来回打开修改。
Mac与微信开发编辑器不兼容老是卡死- 当前 Bug 的表现(可附上截图)总是卡死,只能全部退出重启,Mac本事最新的MacBook Pro 2018最新款 - 预期表现 能够正常使用 - 复现路径 - 提供一个最简复现 Demo [图片]
2019-01-02我也是有这个问题额。[图片]
微信7.0 小程序中使用webview 显示一片空白- 当前 Bug 的表现(可附上截图) 微信7.0 小程序中使用webview 显示一片空白 - 预期表现 期望显示web页面 - 复现路径 ??? - 提供一个最简复现 Demo <block> <web-view src="{{url}}"></web-view> </block> 打开的地址是 https://scenic.csblmtdp.com/static/scenic_helper/#/map_webview?lat=31.18826&lng=121.43687
2018-12-22