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%')
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.

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

HarmonyOS
2024-08-12 15:14:27
1570浏览
收藏 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%')
  • 1.

改为

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

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

分享
微博
QQ
微信
回复
2024-08-13 12:03:38
相关问题
HarmonyOS 摄像头预览画面方向错误
1189浏览 • 1回复 待解决
自定义界面扫码预览画面出现拉伸
2549浏览 • 1回复 待解决
HarmonyOS转屏后视频画面90度显示
1178浏览 • 1回复 待解决
DevEco Studio无法登陆 一直这个画面
11563浏览 • 2回复 已解决
如何创建相机预览输出?
924浏览 • 0回复 待解决
HarmonyOS 相机预览尺寸设置
517浏览 • 1回复 待解决