【ADOBE COUNSULT】Flex 和 ScaleMode

本文介绍了Flex应用程序中不同伸缩模式的作用及实现方法。默认情况下,Flex应用采用NO-SCALE模式,当窗口尺寸变化时会出现滚动条。若需实现放大或缩小效果,则需通过调整应用程序的默认尺寸和定制HTML模板来实现。

导读:
  Flex’s underlying Flash Player has various ScaleModes that dictate how the screen should respond when the Flash ‘window’ is resized. By default, Flex apps use the NO_SCALE, which means that the screen area gets larger or smaller and can clip off the right and bottom of the screen. Flex will put up scrollbars in that case. It is the most common way applications respond to changes in screen size.


Flex的目标flash播放器有各种各样的伸缩模式,这些伸缩模式告知播放器应该如何重绘flash窗口的大小。缺省情况下flex应用程序使用NO-SCALE无伸缩模式。这意味着flex应用程序可以通过右边和底部的伸缩栏来调整大小,如果flash窗口超出了屏幕,那么flex通过装置滚动栏响应窗口大小的变化。
  Every once in a while, someone wants to use one of the other ScaleModes which essentially magnify or reduce what you see in the Flash ‘window’. There is a trick to getting this to work correctly in Flex.


总会有一些时候,有人想要使用其他的模式来从本质上改变用户所见的的窗口,这里有个很巧妙的方法在FLEX来实现
  The problem is that the magnification is based on the ‘default’ size of the application. For Flex, the default size is based on the width and height attributes of the application tag. If none are specified, or percentages are used, the default is 500375. If your applications visuals are different from that size, the magnification will look funny as the Flash Player will be trying to resize the upper 500376 of your application into the current window size.


问题在于在应用程序标准大小下来实现放大,对于FLEX,应用程序的标准大小基于application标签的宽和高属性,如果没有规定宽和高,或者使用的是百分数,那么应用程序的大小对设置为500375,如果你的应用程序和那大小不一样,那么magnification对象和flash播放器一样方式将应用程序的目前窗口大小重新设置为500376
  However, if you specify a width/height that just bounds your visuals, the HTML template generated by FlexBuilder will not allow resizing. What you have to do is choose the correct size for your application, and customize the HTML template. Here’s the recipe:
  1) Create your app with the default scale mode.
  2) Figure out how big the app is. In the example, I placed a label at 600,600, but it extends beyond that. One way is to just guess at numbers and see when there isn’t scrollbars or too much excess space. Otherwise, use the debugger or trace out positions and sizes on creationComplete.


3) Set the application’s width/height tags to those exact dimensions
  4) Open the html-templates folder. Right-click the index.template Choose: Open with -> text editor


但是,如果你将应用程序的宽高设置为目标视觉效果,flexbuilder产生的html模板将不允许重置大小。要做的就是为应用程序设置合适大小,然后重新定制HTML模板,下面是具体步骤:


1.使用标准模式创建应用程序


2.想象一下应用程序有多大,在这个例子里面我们设置一个600*600的标签,实际超过这个值.可以简单地猜测一个值,然后将其约束在不出现滚动条的情况下,或者使用调试G追踪creationComplete事件


3.将应用程序的宽的和高设置为精确值


4.打开应用程序的html模板,你将看到下面的部分
  You’ll see this:
  } else if (hasRequestedVersion) { // if we’ve detected an acceptable version
  // embed the Flash Content SWF when all tests are passed
  AC_FL_RunContent(
  “src”, “${swf}”,
  “width”, “${width}”,
  “height”, “${height}”,
  Change the width/height tags back to use %:
  } else if (hasRequestedVersion) { // if we’ve detected an acceptable version
  // embed the Flash Content SWF when all tests are passed
  AC_FL_RunContent(
  “src”, “${swf}”,
  “width”, “100%”,
  “height”, “100%”,There are also other ${width} and ${height| tags for non-scripting browser that you can change as well.
  5) Clean re-build


按照上面的提示修改模板,然后清除并进行重新编译
  That should do it. As long as the application fully covers the size you specified, you should see the correct scale effect as you resize the window.

本文转自
http://blogs.adobe.com/aharui/2008/01/flex_and_scalemodes.html

无界云图(开源在线图片编辑器源码)是由四川爱趣五科技推出的一款类似可画、创客贴、图怪兽的在线图片编辑器。该项目采用了React Hooks、Typescript、Vite、Leaferjs等主流技术进行开发,旨在提供一个开箱即用的图片编辑解决方案。项目采用 MIT 协议,可免费商用。 无界云图提供了一系列强大的图片编辑功能,包括但不限于: 素材管理:支持用户上传、删除批量管理素材。 操作便捷:提供右键菜单,支持撤销、重做、导出图层、删除、复制、剪切、锁定、上移一层、下移一层、置顶、置底等操作。 保存机制:支持定时保存,确保用户的工作不会丢失。 主题切换:提供黑白主题切换功能,满足不同用户的视觉偏好。 多语言支持:支持多种语言,方便全球用户使用。 快捷键操作:支持快捷键操作,提高工作效率。 产品特色 开箱即用:无界云图采用了先进的前端技术,用户无需进行复杂的配置即可直接使用。 免费商用:项目采用MIT协议,用户可以免费使用商用,降低了使用成本。 技术文档齐全:提供了详细的技术文档,包括技术文档、插件开发文档SDK使用文档,方便开发者进行二次开发集成。 社区支持:提供了微信技术交流群,用户可以在群里进行技术交流问题讨论。 环境要求 Node.js:需要安装Node.js环境,用于运行打包项目。 Yarn:建议使用Yarn作为包管理工具,用于安装项目依赖。 安装使用 // 安装依赖 yarn install // 启动项目 yarn dev // 打包项目 yarn build 总结 无界云图是一款功能强大且易于使用的开源在线图片编辑器。它不仅提供了丰富的图片编辑功能,还支持免费商用,极大地降低了用户的使用成本。同时,详细的文档活跃的社区支持也为开发者提供了便利的二次开发集成条件。无论是个人用户还是企业用户,都可以通过无界云图轻
【无功优化】基于改进遗传算法的电力系统无功优化研究【IEEE30节点】(Matlab代码实现)内容概要:本文围绕“基于改进遗传算法的电力系统无功优化研究”,以IEEE30节点系统为仿真案例,利用Matlab代码实现改进遗传算法在电力系统无功优化中的应用。研究旨在通过优化发电机端电压、变压器变比无功补偿装置等控制变量,降低系统网损、改善电压质量并提升运行稳定性。文中详细阐述了无功优化的数学模型构建、改进遗传算法的设计策略(如编码方式、适应度函数、交叉与变异操作的改进),并通过仿真结果验证了所提方法相较于传统遗传算法在收敛速度优化效果上的优越性。; 适合人群:具备电力系统基础理论知识一定Matlab编程能力的电气工程专业研究生、科研人员及从事电网优化运行的工程技术人员。; 使用场景及目标:①掌握电力系统无功优化的基本原理与数学建模方法;②学习遗传算法在电力系统优化问题中的具体应用与改进技巧;③通过复现Matlab代码,深入理解算法实现过程并用于学术研究或实际工程问题求解。; 阅读建议:建议读者结合电力系统分析基础知识,仔细研读优化模型的建立过程,并动手运行调试所提供的Matlab代码,通过调整算法参数观察其对优化结果的影响,以加深对改进遗传算法性能的理解掌握。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值