从坐标绘制矩形

时间:2013-11-25 20:14:17

标签: ios qr-code avcapturesession

我正在iOS 7中编写QR码识别器。我有一个captureOutput:didOutputMetadataObjects:fromConnection:delegate用于我的相机视图捕获。一旦识别出QR码,我就可以提取角点的坐标。我试图围绕识别的QR码绘制一个矩形。令人惊讶的是,这很难做到。什么是最简单的方法?我将不得不有一种方法来更新QR码周围的方框。

- (void)captureOutput:(AVCaptureOutput *)captureOutput didOutputMetadataObjects:(NSArray *)metadataObjects fromConnection:(AVCaptureConnection *)connection
{
    if ([metadataObjects count] < 1) {
        return;
    }
    for (id item in metadataObjects) {
        if ([item isKindOfClass:[AVMetadataMachineReadableCodeObject class]]) {
            if (item) {
                NSLog(@"%@", [item stringValue]);
                dispatch_async(dispatch_get_main_queue(), ^{
                    [self drawRect:[item corners]];
                });
            }
        }
    }
}

基本上,问题是如何实现drawRect:在识别的QR码周围绘制一个矩形?

1 个答案:

答案 0 :(得分:0)

只需使用AVMetadataMachineReadableCodeObject的points属性中的四个点在视图或自定义叠加视图中绘制CGBezierPath。