社区
Flex
帖子详情
使用Zoom缩放,子元素Text出现换行,如何避免
keanu196492
2010-12-27 10:50:26
在一个Canvas里面放一个Text,Text.width = 100%,文字较多,基本撑满一行,现在对Canvas做zoom操作(从小变大)
在zoom的过程中,由于Canvas变小了,所以text就出现先换行后恢复的情况
如: aaaaaabbbb -> aaaaa -> aaaaaabbbb
bbbb
效果上即使速度很快也会闪一下,请问如何解决,让字也跟着变大变小,从而不出现换行的情况。
...全文
340
4
打赏
收藏
使用Zoom缩放,子元素Text出现换行,如何避免
在一个Canvas里面放一个Text,Text.width = 100%,文字较多,基本撑满一行,现在对Canvas做zoom操作(从小变大) 在zoom的过程中,由于Canvas变小了,所以text就出现先换行后恢复的情况 如: aaaaaabbbb -> aaaaa -> aaaaaabbbb bbbb 效果上即使速度很快也会闪一下,请问如何解决,让字也跟着变大变小,从而不出现换行的情况。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
leemiki
2010-12-27
打赏
举报
回复
[Quote=引用楼主 keanu196492 的回复:]
......现在对Canvas做zoom操作(
从小变大
)
在zoom的过程中,
由于Canvas变小了
,所以text就出现先换行后恢复的情况
......
[/Quote]
这两者不相矛盾??到底是变大还变小??
我试了下变小情况并未出现你说的情况~~~
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml">
<mx:Script>
<![CDATA[
import flash.events.MouseEvent;
public function doZoom(event:MouseEvent):void {
if (zoomAll.isPlaying) {
zoomAll.reverse();
}
else {
zoomAll.play([event.target], event.type == MouseEvent.ROLL_OUT ? true : false);
}
}
]]>
</mx:Script>
<mx:Zoom id="zoomAll" zoomWidthTo=".8" zoomHeightTo=".8" zoomWidthFrom="1" zoomHeightFrom="1"/>
<mx:Panel width="100%" height="100%">
<mx:Canvas rollOut="doZoom(event)" rollOver="doZoom(event)" width="175" borderStyle="inset">
<mx:Text id="img" text="O(∩_∩)O哈哈~哈哈哈哈" fontSize="14" width="100%"/>
</mx:Canvas>
</mx:Panel>
</mx:Application>
还有问题把测试代码贴出来~~~·
leemiki
2010-12-27
打赏
举报
回复
那是Text或Canvas的width没设置好导致~~~
变大变小上面例子都有,你自己看吧!!
keanu196492
2010-12-27
打赏
举报
回复
原来是原始大小,zoom操作是从0.8 -> 1,在0。8的时候里面text就出现了换行的现象,到1的时候又好了。整个过程就会闪一下。
leemiki
2010-12-27
打赏
举报
回复
变大效果也给你贴上
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml">
<mx:Script>
<![CDATA[
import mx.controls.Alert;
import mx.events.ResizeEvent;
import flash.events.MouseEvent;
[Bindable]
private var cavWidth:Number;
public function doZoom(event:MouseEvent):void {
if (zoomAll.isPlaying) {
zoomAll.reverse();
}
else {
zoomAll.play([event.target], event.type == MouseEvent.ROLL_OUT ? true : false);
cav.width = cavWidth;
}
}
private function getSizeHnadler(event:ResizeEvent):void{
cavWidth = event.currentTarget.width;
}
]]>
</mx:Script>
<mx:Zoom id="zoomAll" zoomWidthTo="2" zoomHeightTo="2" zoomWidthFrom="1" zoomHeightFrom="1"/>
<mx:Panel width="100%" height="100%">
<mx:Canvas id="cav" rollOut="doZoom(event)" rollOver="doZoom(event)" width="250" resize="getSizeHnadler(event)" borderStyle="inset">
<mx:Text id="img" text="O(∩_∩)O哈哈~哈哈哈哈哈哈哈哈哈" fontSize="14" width="100%"/>
</mx:Canvas>
</mx:Panel>
</mx:Application>
PyQt5 UI自适应与
缩放
:从布局管理到高DPI支持的完整实现方案
在桌面应用开发中,用户界面(UI)的自适应与动态
缩放
是提升跨平台兼容性和用户体验的核心技术。其原理在于通过布局管理器(如QHBoxLayout、QVBoxLayout)替代绝对定位,结合控件的大小策略(Size Policy)和伸缩因子,构建弹性界面结构。技术价值在于确保应用在不同分辨率、高DPI屏幕下都能保持视觉一致性和操作可用性,
避免
元素错位或模糊。应用场景广泛覆盖科学计算工具、企业客户端等需要适配多显示环境的软件。本文聚焦PyQt5框架,深入探讨如何整合高DPI支持(AA_EnableHighDpiS
低版IE常见兼容问题与css hack
低版IE常见兼容问题与css hack
使用
QT制作一个(基于PaddleOCR识别)图像文本识别的软件应用
本文介绍了一个支持手写体、印刷体及中英文识别的智能OCR应用开发方案。系统采用PaddleOCR作为核心引擎,通过PyQt5构建GUI界面,主要功能包括:多张图片批量识别、识别结果导出(TXT/Word/PDF/带标注图片)、HTML报告生成等。文章详细说明了开发环境搭建、界面设计、OCR线程实现、打包部署等完整流程,并提供了PDF/Word编辑器等扩展功能。与现有单张识别应用相比,该系统显著提升了批量处理能力,具有轻量化、跨平台等特点,适合需要高效处理多文档的用户群体。
22、让Chrome支持小于12px 的文字方式有哪些?区别?
视觉缩小,但不改变布局空间,需要额外处理偏移 →首选
zoom
:视觉缩小,同时改变布局空间,更自然,但非标准 →备选:已废弃,现代 Chrome 不生效→不推荐。
display: flow-root:告别clearfix的现代CSS布局方案
BFC(块级格式化上下文)是CSS布局的核心机制,用于隔离浮动、控制高度塌陷与margin合并等基础渲染行为。传统上需依赖overflow:hidden、position或伪元素等副作用触发,语义模糊且易引发裁剪、阴影丢失、性能损耗等问题。display: flow-root作为原生、声明式创建BFC的CSS属性,以零副作用、高可读性与精准意图,成为解决父容器包裹浮动
子元素
问题的标准方案。它广泛适用于两栏布局、表单对齐、响应式网格等场景,并天然兼容Flex/Grid及CSS容器查询,是现代前端工程中提升可维
Flex
4,328
社区成员
9,103
社区内容
发帖
与我相关
我的任务
Flex
多媒体/设计 Flex
复制链接
扫一扫
分享
社区描述
多媒体/设计 Flex
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章