全屏flash的尺寸分析
作者:winniehoo 来源:Alibaba.com UED 发布时间:2009-02-11 13:22:00
随着现在宽屏显示器的流行,Flash的全屏模式下,越来越需要考虑到普屏显示器与宽屏显示器的差别。
Flash全屏模式有以下特点:
窗口最大化,且置顶显示;
在默认(flash内容自动缩放)状态下, swf文件保持长宽比进行缩放,直到宽、高有其一先达到屏幕尺寸。
当屏幕长宽比与swf文件长宽比不同时,将显示flash舞台区域外内容。
根据这些特性,我们制作的flash在全屏播放时有以下效果:由于生成的swf文件的长宽比固定,但客户端显示器分辨率多种多样,势必导致flash舞台区域外内容会显示在某些客户端显示器屏幕中。当swf文件是窄比例时,在宽屏显示器下,左右两边会出现舞台区域外内容;当swf文件是宽比例时,在窄屏显示器下,上下两端会出现舞台区域外内容。
这里就牵涉出两个概念区域:“安全区域”和“最大显示区域”。我们这里所谓的“安全区域”,与视频制作时的监视器安全区域类似,即:swf文件不管在什么显示器分辨率下,都会完全置于显示器屏幕内的区域。我们所有的内容都必须处于这“安全区域”内,使得所有客户端都能看到这部分信息,以免造成信息遗漏。而“安全区域”外的内容,则需填充与内容无关的修饰背景,确保各分辨率下的整体美观效果。“安全区域”外内容在某分辨率下能显示出的最大区域即为“最大显示区域”。为什么要定这两个区域?“安全区域”保证了我们在制作flash时所有内容不会显示在屏幕外,“最大显示区域”指导我们制作填充背景的大小。
有了以上分析后,我们在动手设计一个全屏flas * 前,就应该先定出这两个区域:“安全区域”和“最大显示区域”。“安全区域”就是flash的舞台区域,用宽舞台或窄舞台,视项目的需求而定;“最大显示区域”则根据你的舞台长宽比:如果是宽舞台,“最大显示区域”与舞台同宽而上下延伸;如果是窄舞台,“最大显示区域”与舞台同高而左右扩展。
以下我们以窄舞台为例做分析:
我们常见的显示器分辨率按其长宽比可分为为:4:3(1024×768)、5:4(1280×1024)、16:9、16:10。长宽比越大、显示区域越宽,四种常见长宽比中,5:4最窄,16:9最宽,所以我们以5:4做为窄舞台“安全区域”的长宽比时,其“最大显示区域”必须满足最宽的显示器分辨率,即以16:9为窄舞台对应的“最大显示区域”长宽比时,4:3和16:10分辨率显示器下都能满足我们的显示要求。
在窄舞台情况下,“安全区域”和“最大显示区域”有相同的高度,所以在5:4和16:9两种长宽比下的高度最小公倍数是36,他们对应的宽度为45和64,两个长宽比可换算成45:36和64:36。当舞台大小按窄舞台标准设定时:
“最大显示区域”宽度=舞台宽度×(64/45)
同理可得:
当舞台大小按宽舞台标准设定时:“最大显示区域”高度=舞台高度×(64/45)。


猜你喜欢
- 在实际开发过程中,对数据库的操作无非就“增删改查”。就最为普遍的单表操作而言,除了表和字段不同外,语句都是类似的,开发人员需要写大量类似而枯
- 插入一条记录后,如何得到最新的自动增加ID?我们要用到SQL Server的@@IDENTITY。它能够记录下系统最近使用的一个IDENTI
- Django处理Ajax发送的Get请求实例,Ajax优点在一是异步请求,无需等待响应就可以再次发起请求,而是局部刷新,避免整个页面刷新的网
- 1 常规错误的yum安装方法:在前文中记述了CentOS 6.5系统中通过yum方式快速地搭建了LNMP环境,那么是否也能在CentOS 7
- go设置GOROOT和GOPATHgo 里面有两个非常重要的环境变量 GOROOT 和 GOPATH,其中 GOROOT 是安装 go 的路
- (一)前言众所周知,Navicat是我们常用的连接MYSQL工具,非常方便好用。其实日常中,我们也常常会遇到运行时间很长甚至几乎跑不完卡死的
- 本文向大家分享23种JavaScript提高执行效率的小技巧、最佳实践等非常实用的内容。当然JavaScript的实用技巧不止这些,还有很多
- 1。如果客户端和服务器端的连接需要跨越并通过不可信任的网络,那么就需要使用SSH隧道来加密该连接的通信。 2。用set password语句
- 学了一个多月的python,做了一个小程序:python实现简单成绩录入系统,实验一下menu部分from tkinter import*#
- 一、正则表达式–元字符re 模块使 Python 语言拥有全部的正则表达式功能1. 数量词# 提取大小写字母混合的单词import rea
- 本文列些处几种去除在Python 列表中(list)可能存在的重复项,这在很多应用程序中都会遇到的需求,作为程序员最好了解其中的
- list字符串元素排序需求:对list中的字符串按照首字母排序实现:list1 = ['as,jj,bk']for line
- 这篇文章主要介绍了Python2和Python3中@abstractmethod使用方法,文中通过示例代码介绍的非常详细,对大家的学习或者工
- 问题问题1Python是一种动态语言,不支持类型检查。当需要对一个对象执行类型检查时,可能会采用下面的方式:class Foo(object
- function getHTTPRequest() { var xhr = false; if (window.XMLHttpRequest
- 当然这应该属于正常过滤手法,而还有一种过滤HTML标签的最终极手法,则是将一对尖括号及尖括号中的所有字符均替换不显示,该方法对于内容中必须描
- 前言其实容器类型的转换可以说是数据类型的转换,涉及到三个函数,分别是tuple()、list()、set()。为什么要做容器类型的转换,是因
- 1. 从字典创建DataFrame>>> import pandas>>> dict_a = {'
- python中reduce和map简介map(func,seq1[,seq2...]) :将函数func作用于给定序列的每个元素,并用一个列
- 这种方案是通过对代码进行加密,然后利用C语音写解密的PHP扩展。破解难度会有提升,但依然是会被破解的。 从网上找过各种代码加密的开源方案。