【问题标题】:Flutter - Camera Add OverlayFlutter - 相机添加叠加
【发布时间】:2020-06-17 07:06:44
【问题描述】:

我想添加一个半透明的 png /assets/overlay.png 作为 CameraPreview 的叠加层,以便指导用户拍摄他们需要拍摄的内容,但我很挣扎。下面是当前CameraPreview的纯代码。

    Widget _buildCameraPreview() {
    if (_controller != null && _controller.value.isInitialized) {
      return Column(
        mainAxisSize: MainAxisSize.max,
        children: <Widget>[
          _buildImages(),
          Expanded(
            child: Card(
              elevation: 10,
              child: Padding(
                padding: const EdgeInsets.all(2.0),
                child: AspectRatio(
                  aspectRatio: _controller.value.aspectRatio,
                  child: CameraPreview(_controller),
                ),
              ),
            ),
          ),
        ],
      );
    }
    return FittedBox();
  }

关于如何添加这样的叠加层有什么想法吗? .gif 也可以吗?

其他问题 - 如何在预览中添加一条水平红线? 谢谢!

【问题讨论】:

    标签: flutter dart camera


    【解决方案1】:

    使用 Stack 小部件在相机预览屏幕上叠加您的图像

     Stack(children: <Widget>[
                         Transform.scale(
                                  scale: _controller.value.aspectRatio / deviceRatio,
                                  child: Center(
                                    child: AspectRatio(
                                      aspectRatio: _controller.value.aspectRatio,
                                      child: CameraPreview(_controller),
                                    ),
                                  )),
    
                Align( alignment: Alignment.bottomCenter,
                         child: Image( image: new AssetImage( "assets/overlay.png",),) ),
             ]);
    

    【讨论】:

    • 非常感谢纳文。我能够根据您的意见解决这个问题。
    猜你喜欢
    • 2018-10-25
    • 2013-03-15
    • 2016-08-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-09-18
    • 2015-04-08
    相关资源
    最近更新 更多