I'm trying to use the qr_code_scanner library in order to scan the attached QR code, which contains a logo in its center. The code in the sample, however, doesn't seem to work with such QR codes, but it does with normal ones. Google Lens can decode it normally, so I'm wondering if there's something that I'm missing. Does this library not support this case due to it being old?

Here's my code (similar to the sample one):

class QRCameraView extends StatefulWidget {
  const QRCameraView({Key? key}) : super(key: key);

  @override
  State<QRCameraView> createState() => _QRCameraViewState();
}

class _QRCameraViewState extends State<QRCameraView> {
  final GlobalKey qrKey = GlobalKey(debugLabel: 'QR');
  Barcode? result;
  QRViewController? controller;

  // In order to get hot reload to work we need to pause the camera if the platform
  // is android, or resume the camera if the platform is iOS.
  @override
  void reassemble() {
    super.reassemble();
    if (Platform.isAndroid) {
      controller!.pauseCamera();
    } else if (Platform.isIOS) {
      controller!.resumeCamera();
    }
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: Column(
        children: <Widget>[
          Expanded(
            flex: 5,
            child: QRView(
              key: qrKey,
              onQRViewCreated: _onQRViewCreated,
            ),
          ),
          Expanded(
            flex: 1,
            child: Center(
              child: (result != null)
                  ? Text(
                      'Barcode Type: ${describeEnum(result!.format)}   Data: ${result!.code}',
                    )
                  : const Text('Scan a code'),
            ),
          )
        ],
      ),
    );
  }

  void _onQRViewCreated(QRViewController controller) {
    setState(() {
      this.controller = controller;
    });

    controller.scannedDataStream.listen((Barcode scanData) {
      HapticFeedback.vibrate();
      setState(() {
        result = scanData;
        debugPrint(result?.code ?? 'error');
      });
    });
  }

  @override
  void dispose() {
    controller?.dispose();
    super.dispose();
  }
}

And here's the qr code in question:

qr_code