HarmonyOS 相机预览画面会如何保持正常画面比例

使用XComponent做相机预览画面,如何按照设计稿中的尺寸定义预览画面宽高同时还能保持预览画面的正常比例避免画面被拉伸。使用该代码做画面预览发现视频预览画面被拉伸了。

XComponent({ 
  id: 'videoRecord', 
  type: 'surface', 
  controller: this.xComponentController 
}).onLoad(() => { 
  this.xComponentController.setXComponentSurfaceSize({ surfaceWidth: 1280, surfaceHeight: 720 }) 
  this.surfaceId = this.xComponentController.getXComponentSurfaceId() 
  this.startPreview() 
}).height('60%') 
  .width('100%')

后面加上了个纵横比属性:.aspectRatio(720 /1280),预览画面比例正常了,但是预览画面尺寸又变了有没有什么解决办法同时兼顾预览画面比例与画面尺寸?

HarmonyOS
2024-08-12 15:14:27
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
FengTianYa

预览流与录像输出流的分辨率的宽高比要保持一致,如示例代码中宽高比为720:1280 = 9:16,则需要预览流中的分辨率的宽高比也为9:16,如分辨率选择360:640,或540:960,或1080:1920,以此类推。

参考资料:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/camera-preview-V5?catalogVersion=V5

建议把

.height('60%')  .width('100%')

改为

.height('720px')  .width('1280px')

为了将高度和宽度设置为目标比例(720/1280),具体的尺寸需要乘以相同的倍数。

分享
微博
QQ
微信
回复
2024-08-13 12:03:38
相关问题
HarmonyOS 摄像头预览画面方向错误
258浏览 • 1回复 待解决
自定义界面扫码预览画面出现拉伸
1763浏览 • 1回复 待解决
HarmonyOS转屏后视频画面90度显示
420浏览 • 1回复 待解决
DevEco Studio无法登陆 一直这个画面
10391浏览 • 2回复 已解决
如何创建相机预览输出?
42浏览 • 0回复 待解决
HarmonyOS 相机-拍照之后预览
150浏览 • 1回复 待解决
HarmonyOS 创建相机预览失败
423浏览 • 1回复 待解决
如何连续获取相机预览流数据
564浏览 • 1回复 待解决
HarmonyOS GL封装相机预览流角度咨询
84浏览 • 1回复 待解决
HarmonyOS 如何比例设置控件高度
389浏览 • 1回复 待解决
相机预览及切换摄像头
949浏览 • 1回复 待解决