2

cocoa [OS X]でバーコード認識(作成およびスキャン)を行うためのフレームワークまたはその他のサンプルコードはありますか?

4

4 に答える 4

2

そのためには、サードパーティのフレームワークを使用する必要があります。

たとえば、次を使用できます。

  • ZXing。1Dコードは安定していないため、おそらくコードを掘り下げる必要があることに注意してください。
  • ZBar。非常に有能なライブラリのようです。

単純なGoogle検索またはStackOverflow検索も役立ちます。

于 2012-06-16T11:17:43.127 に答える
1

これにより、MacとiPhoneの両方の2Dバーコードが作成されます: Cocoaバーコード

于 2012-06-17T14:07:21.663 に答える
1

macOS 10.10以降、サードパーティのフレームワークを必要とせずにCIFilterを使用してQRCodeを読み取ることができます。

公式ドキュメントへのリンクと、その使用方法を示すブログ投稿へのリンクは次のとおりです。

于 2017-06-08T11:09:42.357 に答える
1

バーコードを作成して読み取る場合は、有料のmacOSフレームワークを使用できます。LEADTOOLS SDKのBarcodeReaderクラスとBarcodeWriterクラスは、バーコードの読み取りと書き込みの両方が可能であり、Objective-CプロジェクトとSwiftプロジェクトの両方で使用できます。

https://www.leadtools.com/help/sdk/v21/dh/ba/barcodewriter.html

バーコードを作成するときは、書き込み時に必要なバーコードデータとオプションを提供する必要があります。

        LTBarcodeData * const barcodeData = writeBarcodeView.barcodeData;

        _selectedSymbology = writeBarcodeView.selectedSymbology;

        _indexOfSelectedWriteOption = writeBarcodeView.indexOfSelectedWriteOption;

        

        LeadRect writeBounds = LeadRectMake(0, 0, image.width, image.height);

        

        if (!LeadRectIsZero(writeBounds) && !LeadRectEqualToRect(writeBounds, barcodeData.bounds))

            writeBounds = barcodeData.bounds;

        

        for (LTBarcodeWriteOptions *writeOption in _barcodeEngine.writer.allDefaultOptions) {

            writeOption.foreColor = [writeBarcodeView.foreColorWell.color colorUsingColorSpaceName:NSCalibratedRGBColorSpace].LTRasterColor;

            

            NSColor * const color = [writeBarcodeView.backColorWell.color colorUsingColorSpaceName:NSCalibratedRGBColorSpace];

            writeOption.backColor = [NSColor colorWithSRGBRed:color.redComponent green:color.greenComponent blue:color.blueComponent alpha:1.0].LTRasterColor;

        }

        

        NSError *error = nil;

        if (![_barcodeEngine.writer calculateBarcodeDataBounds:writeBounds xResolution:image.xResolution yResolution:image.yResolution data:barcodeData options:nil error:&error]) {

            [self displayAlertWithMessage:@"Error while writing barcode" informativeText:error.localizedDescription];

            return;

        }

        

        if (![_barcodeEngine.writer writeBarcode:image data:barcodeData options:nil error:&error]) {

            [self displayAlertWithMessage:@"Error while writing barcode" informativeText:error.localizedDescription];

            return;

        }

        

        _imageViewer.rasterImage = image;

https://www.leadtools.com/help/sdk/v21/dh/ba/barcodereader.html

これは、画像でバーコードを検索する際の小さなコードスニペットです。

NSArray<LTBarcodeData *> *barcodeData = [_barcodeEngine.reader readBarcodes:processingImage searchBounds:bounds maximumBarcodes:0 symbologies:nil error:&error];

現在MacAppStoreでホストされているLEADTOOLSSDKフレームワークを使用するmacOSアプリケーションの例があります。 https://apps.apple.com/us/app/leadtools-barcode/id602159087

于 2021-01-29T16:20:10.060 に答える