在开发一些有舞台区域的工具的时候,会遇到需要保存当前场景的需求。
一般,场景是可以平移和等比缩放,不可以旋转的。
最容易想到的是,我们直接保存场景的平移信息和缩放信息:x,y,scale。
这样很直观,但是存在一个问题,对于不同分辨率的设备,显示的区域不一样。
不同分辨率,显示区域不一样,就会引发一些问题,比如自己保存的,可能每次用新的设备打开,都要重新调整一次。
如果实现了远程同步(协作)功能,不同用户看到的内容不一样,问题更严重。
场景的平移和缩放
我们可以保存场景的视口区域。
我们可以自己规定一个固定宽高比(比如16:9)的视口区域,保证屏幕显示区域的中心区域和视口区域的中心点重合。屏幕显示区域的宽高大于等于视口区域的宽高。
这样,不管设备的显示区域如何变化,都能保证,一定能完整显示视口区域。
用户只需要把要显示的内容放到视口区域内,就能保证在不同的显示区域设备上,完整看到要显示的内容。
发表评论:
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。