Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Painter 项目点子征集贴 #23

Open
CPPAlien opened this issue Jul 20, 2018 · 114 comments
Open

Painter 项目点子征集贴 #23

CPPAlien opened this issue Jul 20, 2018 · 114 comments
Labels
help wanted Extra attention is needed

Comments

@CPPAlien
Copy link
Contributor

如果你有任何想到用 Painter 可以实现的点子,欢迎留言分享,我们一起让 Painter 更强大好用。

@CPPAlien CPPAlien added the help wanted Extra attention is needed label Jul 20, 2018
@heroFan
Copy link

heroFan commented Jul 21, 2018

可以出个wepy版的吗?

@wyh888
Copy link

wyh888 commented Jul 24, 2018

可以增加一个基于圆心点绘制图片的功能么,用户上传的图片具有不确定性,此时无法确定坐标,能确定的是圆心点和图片宽高

@CPPAlien
Copy link
Contributor Author

@wyh888 这个理论上可以,增加个 mode 属性

@jerryzhoujw
Copy link

背景可以来点儿纹理。

@CPPAlien
Copy link
Contributor Author

@jerryzhoujw 纹理,你可以通过设置背景为图片来实现

@GPPoseidon999
Copy link

GPPoseidon999 commented Jul 25, 2018

canvas用绘制图片的时候需要下载图片 加载网络图片如果很慢或者出现意外没下载下来 能不能提供loading 或者对外的回调 方便提供友好的等待交互 比如view里面url写网络图片地址 如果没加载到 我有个地方能执行wx.showloading

@CPPAlien
Copy link
Contributor Author

@GPPoseidon999 这个你在 setData 的时候进行 showloading,接收到 imgOk 或 imgErr 的时候停止就好了,目前 下载失败会打印错误日志,导致某个网络图片出无法绘制,但不影响整体绘制

@CPPAlien
Copy link
Contributor Author

@wyh888 目前已加入一个 mode 属性,默认为 aspectFill 形式,短边露出截取中间的规则

@jing-q-xu
Copy link

如果能支持简单的markdown语法就太棒了

@nongcundeshifu
Copy link

@CPPAlien image中的aspectFill 模式和微信小程序中的图片的aspectFill 模式他们的行为好像不一致。有时候不能在保持比例的情况下整个填满我设置的绘制区域。我想要微信小程序的image标签的aspectFill 模式的效果。

@houyanchao
Copy link

文字字数不确定,导致海报高度不固定。目前还没用这个框架,请问下可以用文字把框撑开吗? 目前我们在用的另一个框架实现不了,找不到您的联系方式,只能在这里给你留言了

@nciefeiniu
Copy link

nciefeiniu commented Nov 2, 2018

@houyanchao
我就是用这个来画海报,同样高度不确定。文字把画框撑开是不行的,只有自己写json,
自己计算这个画框的高度
let painterTemplate = { background: '#ffffff', width: '750rpx', height: '2200rpx', views: [] }
向这个views中Push要画的东西,自己手动计算好高度

最后再修改下高度painterTemplate.height = xxx

@csbym
Copy link

csbym commented Nov 3, 2018

啥时候文字也支持background呀,文字有background就可以支持更多样式了

@CPPAlien
Copy link
Contributor Author

CPPAlien commented Nov 5, 2018

@csbym 你可以在文字下放个图片呀

@hjyue1
Copy link

hjyue1 commented Nov 22, 2018

@CPPAlien 做了一个wepy版本,希望可以帮助到其他开发者 https://github.com/hjyue1/painter-wepy

@CPPAlien
Copy link
Contributor Author

@hjyue1

@lihuangshuaige
Copy link

canvas的高度可以自适应吗?

@976981496
Copy link

想问一下 通过接口获取的数据是json数据格式 ,怎么把其中的name age 属性绘制在图片上???

@tysb7
Copy link

tysb7 commented Dec 2, 2018

canvas的高度可以自适应吗?

自己去代码计算高度不就oK了么

@tysb7
Copy link

tysb7 commented Dec 2, 2018

是否可以不展示图片,直接获取生成的图片路径吗

@CPPAlien
Copy link
Contributor Author

CPPAlien commented Dec 3, 2018

@tysb7 可以啊,你把painter 放到屏幕外绘制就好

@sav7ng
Copy link
Contributor

sav7ng commented Dec 9, 2018

我就是用Painter来生成海报的,在在此感谢 @CPPAlien ,嘻嘻我的项目是WeHalo
https://github.com/aquanlerou/WeHalo

@sav7ng
Copy link
Contributor

sav7ng commented Dec 9, 2018

图片圆角还是有点问题,设置了圆角,生成的图片没有圆角

@CPPAlien
Copy link
Contributor Author

最外围的圆角在有些机型上确实有些问题

@CPPAlien
Copy link
Contributor Author

CPPAlien commented Jan 4, 2019

号外,Painter 的画布背景 和 rect 的 color 已可以设置 css3 的渐变色,欢迎试用

@donly
Copy link

donly commented Jan 15, 2019

写了一个小程序春联对联,使用Painter进行横批和上下联排版,暂未开源,感谢作者。
qrcode

@CPPAlien
Copy link
Contributor Author

@donly 看了下,挺不错的 👍

@sml920505
Copy link

@donly 这个小程序做的非常清晰,老哥什么时候开个源啊,现在一头雾水

@CPPAlien
Copy link
Contributor Author

号外,Painter 全面支持了 shadow 属性。具体用法请看 readme。

@MN-HuangJianHua
Copy link

怎么处理base64呢

可以通过wx的base64ToArrayBuffer转为二进制,然后写文件FileSystemManager.writeFile生成图片

@MN-HuangJianHua
Copy link

请问有考虑加上镜像功能吗,水平/垂直翻转

rotate应该能解决大部分问题

@CPPAlien CPPAlien pinned this issue Dec 23, 2020
@ShawnZeng
Copy link

如果同一个页面里面有两个painter,把第二个设置scaleRatio=0.2 ,第一个居然也变了。。

@sunchangmei123
Copy link

动态模板能不能再详细一些呢?因为在demo里面没有看到动态模板的效果,拜托感谢

@MixChen12
Copy link

能不能实现类似wxml-to-canvas的模版 + 类css的用法,感觉对前端来说理解起来会更方便一点。

@Misaenger
Copy link

动态模板怎么用啊?是还没完善吗

@0JARVIS0
Copy link
Contributor

@Misaenger
Copy link

动态模板怎么用啊?是还没完善吗

https://github.com/Kujiale-Mobile/Painter/wiki/%E5%8A%A8%E6%80%81%E6%A8%A1%E7%89%88%E7%AE%80%E4%BB%8B

就是没有动态模板的demo,不知道怎么传值,代码跑不通,没法移动view

@0JARVIS0
Copy link
Contributor

动态模板怎么用啊?是还没完善吗

https://github.com/Kujiale-Mobile/Painter/wiki/%E5%8A%A8%E6%80%81%E6%A8%A1%E7%89%88%E7%AE%80%E4%BB%8B

就是没有动态模板的demo,不知道怎么传值,代码跑不通,没法移动view

当前样例,把 pages/example/example.wxml 里 painter 组件的 palette 属性改成 dancePalette 就可以移动了。

@Misaenger
Copy link

动态模板怎么用啊?是还没完善吗

https://github.com/Kujiale-Mobile/Painter/wiki/%E5%8A%A8%E6%80%81%E6%A8%A1%E7%89%88%E7%AE%80%E4%BB%8B

就是没有动态模板的demo,不知道怎么传值,代码跑不通,没法移动view

当前样例,把 pages/example/example.wxml 里 painter 组件的 palette 属性改成 dancePalette 就可以移动了。

改完报错 :Cannot read property 'forceUpdate' of undefined,然后还是没法拖动,有没动态模板样例看看的,感觉好难用

@Misaenger
Copy link

动态模板怎么用啊?是还没完善吗

https://github.com/Kujiale-Mobile/Painter/wiki/%E5%8A%A8%E6%80%81%E6%A8%A1%E7%89%88%E7%AE%80%E4%BB%8B

就是没有动态模板的demo,不知道怎么传值,代码跑不通,没法移动view

当前样例,把 pages/example/example.wxml 里 painter 组件的 palette 属性改成 dancePalette 就可以移动了。

我错了,可以用了,哈哈,要点击一下后才能移动

@Misaenger
Copy link

动态模板怎么用啊?是还没完善吗

https://github.com/Kujiale-Mobile/Painter/wiki/%E5%8A%A8%E6%80%81%E6%A8%A1%E7%89%88%E7%AE%80%E4%BB%8B

就是没有动态模板的demo,不知道怎么传值,代码跑不通,没法移动view

当前样例,把 pages/example/example.wxml 里 painter 组件的 palette 属性改成 dancePalette 就可以移动了。

大佬,再问个问题,改为动态之后可以动了,但是 onImgOK 这个函数不执行了,怎么获取到画布图片的路径

@Misaenger
Copy link

如果你有任何想到用 Painter 可以实现的点子,欢迎留言分享,我们一起让 Painter 更强大好用。

大佬,问个问题, painter 组件的 palette 属性改成 dancePalette 就可以移动了,但是 onImgOK 这个函数不执行了,获取不到画布图片的路径

@0JARVIS0
Copy link
Contributor

如果你有任何想到用 Painter 可以实现的点子,欢迎留言分享,我们一起让 Painter 更强大好用。

大佬,问个问题, painter 组件的 palette 属性改成 dancePalette 就可以移动了,但是 onImgOK 这个函数不执行了,获取不到画布图片的路径

是的,动态模版因为是分层渲染的,所以没法合成一整张图片。目前的做法是通过动态的方法编辑模版,然后set到静态模版里出图

@Misaenger
Copy link

如果你有任何想到用 Painter 可以实现的点子,欢迎留言分享,我们一起让 Painter 更强大好用。

大佬,问个问题, painter 组件的 palette 属性改成 dancePalette 就可以移动了,但是 onImgOK 这个函数不执行了,获取不到画布图片的路径

是的,动态模版因为是分层渲染的,所以没法合成一整张图片。目前的做法是通过动态的方法编辑模版,然后set到静态模版里出图

怎么set的,有没具体参考的,给个提示啊大佬

@Misaenger
Copy link

如果你有任何想到用 Painter 可以实现的点子,欢迎留言分享,我们一起让 Painter 更强大好用。

大佬,问个问题, painter 组件的 palette 属性改成 dancePalette 就可以移动了,但是 onImgOK 这个函数不执行了,获取不到画布图片的路径

是的,动态模版因为是分层渲染的,所以没法合成一整张图片。目前的做法是通过动态的方法编辑模版,然后set到静态模版里出图

大佬快带带我啊,就差最后一步了

@0JARVIS0
Copy link
Contributor

如果你有任何想到用 Painter 可以实现的点子,欢迎留言分享,我们一起让 Painter 更强大好用。

大佬,问个问题, painter 组件的 palette 属性改成 dancePalette 就可以移动了,但是 onImgOK 这个函数不执行了,获取不到画布图片的路径

是的,动态模版因为是分层渲染的,所以没法合成一整张图片。目前的做法是通过动态的方法编辑模版,然后set到静态模版里出图

大佬快带带我啊,就差最后一步了

屏幕快照 2021-09-17 上午11 20 14
就是这个意思,分成两个属性,动态的调整好了,把调整好的模版写到静态的属性上,然后通过imgok获取文件路径

@Misaenger
Copy link

如果你有任何想到用 Painter 可以实现的点子,欢迎留言分享,我们一起让 Painter 更强大好用。

大佬,问个问题, painter 组件的 palette 属性改成 dancePalette 就可以移动了,但是 onImgOK 这个函数不执行了,获取不到画布图片的路径

是的,动态模版因为是分层渲染的,所以没法合成一整张图片。目前的做法是通过动态的方法编辑模版,然后set到静态模版里出图

大佬快带带我啊,就差最后一步了

屏幕快照 2021-09-17 上午11 20 14
就是这个意思,分成两个属性,动态的调整好了,把调整好的模版写到静态的属性上,然后通过imgok获取文件路

如果你有任何想到用 Painter 可以实现的点子,欢迎留言分享,我们一起让 Painter 更强大好用。

大佬,问个问题, painter 组件的 palette 属性改成 dancePalette 就可以移动了,但是 onImgOK 这个函数不执行了,获取不到画布图片的路径

是的,动态模版因为是分层渲染的,所以没法合成一整张图片。目前的做法是通过动态的方法编辑模版,然后set到静态模版里出图

大佬快带带我啊,就差最后一步了

屏幕快照 2021-09-17 上午11 20 14
就是这个意思,分成两个属性,动态的调整好了,把调整好的模版写到静态的属性上,然后通过imgok获取文件路径

在哪一步获取到动态属性模板的,大佬截个图我呗
QQ拼音截图20210917141845
是这里吗

@0JARVIS0
Copy link
Contributor

QQ拼音截图20210917141845
是这里吗

对,额外维持一套模版,在 touchend 里接收变化,用来更新这套模版,当需要保存的时候把这套模版 setData 到 paintPallette 上就行了,不需要其他方式额外获取属性

@Misaenger
Copy link

QQ拼音截图20210917141845
是这里吗

对,额外维持一套模版,在 touchend 里接收变化,用来更新这套模版,当需要保存的时候把这套模版 setData 到 paintPallette 上就行了,不需要其他方式额外获取属性

大佬,问一下有画布截取功能吗,就是我想截掉不要的部分再生成

@Misaenger
Copy link

QQ拼音截图20210917141845
是这里吗

对,额外维持一套模版,在 touchend 里接收变化,用来更新这套模版,当需要保存的时候把这套模版 setData 到 paintPallette 上就行了,不需要其他方式额外获取属性

有没现成的限制移动范围的

@Misaenger
Copy link

@wyh888 这个理论上可以,增加个 mode 属性

移动模板有没现成的限制移动范围的

@Misaenger
Copy link

如果你有任何想到用 Painter 可以实现的点子,欢迎留言分享,我们一起让 Painter 更强大好用。

大佬,问个问题, painter 组件的 palette 属性改成 dancePalette 就可以移动了,但是 onImgOK 这个函数不执行了,获取不到画布图片的路径

是的,动态模版因为是分层渲染的,所以没法合成一整张图片。目前的做法是通过动态的方法编辑模版,然后set到静态模版里出图

大佬快带带我啊,就差最后一步了

屏幕快照 2021-09-17 上午11 20 14
就是这个意思,分成两个属性,动态的调整好了,把调整好的模版写到静态的属性上,然后通过imgok获取文件路径

大佬,bindtouchmove是对应哪个函数?viewUpdate吗?

@jeffssss
Copy link

我目前的使用场景,需要渲染若干个不同长度的字符串,我会给定text的width,这样他们会自动换行,但是我不知道他们会渲染成多少行。 目前我能通过「相对布局」让这几个text按我期望的方式渲染出来,但是我没有办法计算出一个海报高度。
目前我办法是弄另外的canvas,用canvasContext的measureText来算text会渲染多少行,手动计算海报的高度。

我想提的需求是,希望Painter能够支持海报能够自己计算高度,比如我设置某个view的css属性bottom:offsetCanvasBottom(10px),代表海报的高度就是这个view的bottom+10px
这样就不需要显示指定画布高度了

@CPPAlien

@Atlan8
Copy link

Atlan8 commented Dec 9, 2021

不知道 borderRadius 支不支持单独设置某个方向的圆角呢?比如我只要设置元素上半部分的圆,下半部分的保持原样,或者单独某个角设置圆角,其他不变

@NSDgrr
Copy link

NSDgrr commented Jun 22, 2022

pc端在企业微信里打开小程序海报样式会错乱,感觉宽度变了,这个问题怎么解决呢
image

@hsuyangyi
Copy link

hsuyangyi commented Jul 2, 2022

小程序真机调试时,画布中放下面这张图片时,显示不出来,请帮忙看看问题。,http://image.kuke.com/images/audio/cata200/0/00-AA-0000000.jpg

@Wangshino
Copy link

请问,有计划 2d 支持动态模板吗?

@cjlhll
Copy link

cjlhll commented Jun 3, 2024

模板生成器,如何快速转换为rpx呢,px在不同的设备上会有问题吧?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests