2

QRコードがどこにあるかを検出するのに問題があります。

その周りに境界線を引く必要があります。

AVMetadataObject bezierpath を使用していますが、機能しません。

私を助けてください。

- (void)captureOutput:(AVCaptureOutput *)captureOutput
didOutputMetadataObjects:(NSArray *)metadataObjects
       fromConnection:(AVCaptureConnection *)connection
{
    for (AVMetadataObject *metadata in metadataObjects)
    {
            AnimationView *cv = [[AnimationView alloc]initWithFrame:self.livevideo.bounds]; //creat an instance of your custom view
        [cv setBackgroundColor:[UIColor clearColor]];



        NSLog(@"%f",metadata.accessibilityPath.accessibilityActivationPoint.x);

        [location addSubview:cv];


        if ([metadata.type isEqualToString:AVMetadataObjectTypeEAN13Code])
        {

        }
        else if ([metadata.type isEqualToString:AVMetadataObjectTypeUPCECode])
        {

        }
        else if ([metadata.type isEqualToString:AVMetadataObjectTypeEAN8Code])
        {

        }
        else if ([metadata.type isEqualToString:AVMetadataObjectTypeQRCode])
        {

        }
    }
}
4

2 に答える 2

8

AVMetadataMachineReadableCodeObject の corners プロパティを使用して、検出されたコードの周りに透視ボックスを描画する必要があります。

https://github.com/werner77/WECodeScannerで私の例を参照してください

于 2013-10-11T14:56:46.387 に答える