Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
DCloud
unidocs-uni-app-x-zh
提交
490bb856
U
unidocs-uni-app-x-zh
项目概览
DCloud
/
unidocs-uni-app-x-zh
通知
144
Star
2
Fork
33
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
9
列表
看板
标记
里程碑
合并请求
11
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
U
unidocs-uni-app-x-zh
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
9
Issue
9
列表
看板
标记
里程碑
合并请求
11
合并请求
11
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
490bb856
编写于
11月 22, 2024
作者:
W
wanganxp
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
完善canvas和text文档
上级
1c0703f9
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
25 addition
and
18 deletion
+25
-18
docs/component/canvas.md
docs/component/canvas.md
+20
-12
docs/component/text.md
docs/component/text.md
+5
-6
未找到文件。
docs/component/canvas.md
浏览文件 @
490bb856
...
...
@@ -4,22 +4,18 @@
<!-- UTSCOMJSON.canvas.compatibility -->
App平台4.25之前没有完整的canvas组件,但提供了
`
drawablec
ontext`
。
App平台4.25之前没有完整的canvas组件,但提供了
`
DrawableC
ontext`
。
*
每个view,都可以通过
[
draw API
](
../dom/drawablecontext.md
)
,高性能的画各种形状、写字。这组API与web的canvas api接近但不同。
*
截图或海报需求,无需像webview那样通过canvas中转,app平台view直接提供截图API,
[
takesnapshot
](
../dom/unielement.html#takesnapshot
)
。
*
二维码展示需求:
[
见插件市场
](
https://ext.dcloud.net.cn/search?q=%E4%BA%8C%E7%BB%B4%E7%A0%81&uni-appx=1
)
*
图表需求:
[
插件市场搜echart
](
https://ext.dcloud.net.cn/search?q=chart&orderBy=Relevance&uni-appx=1
)
、
[
插件市场搜F2
](
https://ext.dcloud.net.cn/search?q=f2&orderBy=Relevance&uni-appx=1
)
*
手写签名:
[
见插件市场
](
https://ext.dcloud.net.cn/search?q=%E7%AD%BE%E5%90%8D&orderBy=Relevance&uni-appx=1
)
*
使用web-view中的canvas也是一种方案,uvue页面里的web-view组件可以和uvue页面里的uts代码双向通信。
*
截图或海报需求,无需像webview那样通过canvas中转,app平台view直接提供截图API,
[
takesnapshot
](
../dom/unielement.html#takesnapshot
)
。
从4.25起,App平台也补充了canvas组件。
canvas组件和drawablecontext
的区别是:
`canvas组件`
和
`DrawableContext`
的区别是:
1.
canvas组件的语法是W3C标准语法
2.
canvas组件全平台支持,而
drawablec
ontext仅app支持
3.
canvas组件是一个独立组件,而
drawablec
ontext是对现有的view组件进行绘制
4.
drawablecontext在iOS上绘制文字的性能不佳
,其原生系统如此
5.
对于复杂绘制场景,比如游戏,canvas组件的性能优于
drawablec
ontext
2.
canvas组件全平台支持,而
DrawableC
ontext仅app支持
3.
canvas组件是一个独立组件,而
DrawableC
ontext是对现有的view组件进行绘制
4.
DrawableContext在iOS上绘制文字的性能略低
,其原生系统如此
5.
对于复杂绘制场景,比如游戏,canvas组件的性能优于
DrawableC
ontext
6.
canvas是一个独立模块,占用几百K体积,不使用时会被摇树摇掉
<!-- UTSCOMJSON.canvas.attribute -->
...
...
@@ -144,5 +140,17 @@ context.scale(dpr, dpr); // 仅需调用一次,当调用 reset 方法后需要
```
<!-- UTSCOMJSON.canvas.example -->
## 场景
canvas有很多应用场景,插件市场有很多封装好的插件:
*
图表需求:
[
xCharts 基于原生canvas的图表方案
](
https://ext.dcloud.net.cn/plugin?id=21099
)
。插件市场还有基于webview的图表插件:
[
echart
](
https://ext.dcloud.net.cn/search?q=chart&orderBy=Relevance&uni-appx=1
)
、
[
F2
](
https://ext.dcloud.net.cn/search?q=f2&orderBy=Relevance&uni-appx=1
)
*
二维码展示:
[
见插件市场
](
https://ext.dcloud.net.cn/search?q=%E4%BA%8C%E7%BB%B4%E7%A0%81&uni-appx=1
)
*
手写签名:
[
见插件市场
](
https://ext.dcloud.net.cn/search?q=%E7%AD%BE%E5%90%8D&orderBy=Relevance&uni-appx=1
)
*
抽奖转盘:
[
见插件市场
](
https://ext.dcloud.net.cn/search?q=%E8%BD%AC%E7%9B%98&orderBy=Relevance&uni-appx=1
)
*
刮刮卡:
[
见插件市场
](
https://ext.dcloud.net.cn/search?q=%E5%88%AE%E5%88%AE%E5%8D%A1&orderBy=Relevance&uni-appx=1
)
一些web平台的canvas插件,并没有适配uts。此时使用web-view中的canvas也是一种方案,uvue页面里的
[
web-view组件
](
./web-view.md
)
可以和uvue页面里的uts代码双向通信。
<!-- UTSCOMJSON.canvas.reference -->
docs/component/text.md
浏览文件 @
490bb856
...
...
@@ -16,15 +16,14 @@
-
App-Android平台文本换行规则(表现在文本断行位置等)可能和浏览器有差异。
## 子组件
<!-- UTSCOMJSON.text.children -->
text组件在web浏览器渲染(含浏览器、小程序webview渲染模式、app-vue)和uvue中,可以并只能嵌套text组件。
app-uvue中的 text 组件虽然支持嵌套,但子组件不继承父组件样式。这样使用会在编译到各平台时可能产生差异,所以尽量避免使用text嵌套。
app 平台子组件设置的排版相关样式(如position、display、width、height、margin、padding等)以及部分text独有样式(如text-align、lines、white-space、text-overflow)不生效,
<!-- UTSCOMJSON.text.children -->
app-uvue中的 text 组件虽然支持嵌套,但其实只是提供一个简单的样式变化方案,其实限制较多:
1.
子组件不继承父组件样式。这样使用会在编译到各平台时可能产生差异。
2.
子组件设置的排版相关样式(如position、display、width、height、margin、padding等)以及部分text独有样式(如text-align、lines、white-space、text-overflow)不生效
3.
子组件没有单独的事件响应。如有这方面需求,请改用
[
rich-text
](
./rich-text.md
)
<!-- UTSCOMJSON.text.example -->
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录