QR Code Scan

Bonjour,


 


J'aimerais scanner un QR code. J'ai trouvé de nombreux tuto comme celui ci:


http://www.appcoda.com/qr-code-ios-programming-tutorial/


 


J'étais donc content au début :) c'est ce que je pensais avoir besoin. Mais en réalité, j'aimerais scanner un QR code provenant d'une photo de ma librairie par exemple et non scanner un QR code à  l'aide de la camera.


 


Ou encore mieux mais pas nécessaire serait que je puisse scanner un QR code en direct mais que je puissance retoucher l'image avec le scan de celle ci. Par exemple, mettre un filtre de couleur ou d'autres modifications à  l'image que je capture.


 


Il se peut que vous vous demander qu'elle est l'utilité de cette manipulation. C'est un projet de fin d'année, mon but est d'améliorer le QR code et l'optimiser.


 


Merci par avance. :)


Réponses

  • CéroceCéroce Membre, Modérateur

    À partir d'iOS 8, Core Image sait interpréter les QR Code.


  • hum ... du swift.


     


    Je pense pouvoir faire ce que je veux avec ça. Je m'y penche.


    Merci Céroce :)


  • dédodédo Membre
    janvier 2015 modifié #4

    Bonjour,


     


    J'ai regardé ce que tu m'avais proposé et c'est exactement ce dont j'avais besoin. Je peux même retoucher l'image en direct et la scanner. Donc que du bonus :)


     


    Cependant, il a beaucoup de mal à  détecter mes QRCodes comparer à  AVFoundtion et d'autre lecteur de QRCode sur l'AppStore.


     


    Par exemple sur l'image que j'ai fourni, le QRCode ne fonctionne pas avec CoreImage alors qu'il fonctionne sans problème avec les autres.


     


    J'ai pourtant mit dans les options du CIDetector, la précision élevé.


     


    Voici une partie de mon code sachant que redQRCode est l'image fournie.



    UIImage* redQRCode = [self getRGBAsFromImage:imageSelec color:1];

    CIDetector* detector = [CIDetector detectorOfType:CIDetectorTypeQRCode context:nil options:@{CIDetectorAccuracy:CIDetectorAccuracyHigh}];
    if (detector)
    {

    NSArray* featuresR = [detector featuresInImage:redQRCode.CIImage];
    NSString* decodeR;
    for (CIQRCodeFeature* featureR in featuresR)
    {

    NSLog(@decode %@ ",featureR.messageString);
    decodeR = featureR.messageString;

    }

    }

    Merci par avance. :)


  • CéroceCéroce Membre, Modérateur

    Je n'ai jamais travaillé avec, je savais juste que ça existait.


     


    Quelques pistes:


    - redQRCode.CIImage est elle valide ?


    - Est-il vraiment possible de ne pas passer de contexte à  +[CIDetector detectorOfType:context:options:] ?

  • J'ai bien regardé tout ça oui.

    Du coup, je me suis tourné vers ZBar et ça me convient parfaitement. 


     


    Merci encore Céroce pour ton aide. :)


Connectez-vous ou Inscrivez-vous pour répondre.