1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/reesun1130-SYQRCodeDemo

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Это зеркальный репозиторий, синхронизируется ежедневно с исходного репозитория.
В этом репозитории не указан файл с открытой лицензией (LICENSE). При использовании обратитесь к конкретному описанию проекта и его зависимостям в коде.
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

Пример работы с QR-кодами

SYQRCodeDemo: Аналог сканирования QR-кодов в WeChat

Последнее

  • Реализация на Swift: SYQRCodeDemoSwift
  • Устранение ошибок, оптимизация реализации и повышение удобства использования (добавлен эффект анимации при открытии, аналогичный WeChat)
  • Изменение проверки разрешений камеры
  • Добавление новых классов, разделение представлений
  • При использовании просто переместите папку SYQRCodeViewController в проект
  • Для систем iOS 7 и выше: если требуется только простое сканирование QR-кодов, можно удалить библиотеку ZXingObjC

Новое

  • Поддержка чтения QR-кодов из изображений;

    Для поддержки iOS 7 и выше потребуется зависимость от библиотеки ZXingObjC

    Для iOS 8.0 и выше можно использовать встроенные средства системы.

  • Поддержка включения фонарика

  • Поддержка генерации изображений QR-кодов

Введение: основано на SYQRCodeDemo

intro png

Пример: Для использования достаточно перетянуть SYQRCodeViewController в проект

NSData *stringData = [text dataUsingEncoding:NSUTF8StringEncoding];
// Генерация
CIFilter *qrFilter = [CIFilter filterWithName:@"CIQRCodeGenerator"];
[qrFilter setValue:stringData forKey:@"inputMessage"];
[qrFilter setValue:@"M" forKey:@"inputCorrectionLevel"];

UIColor *onColor = [UIColor whiteColor];
UIColor *offColor = [UIColor darkGrayColor];
``````markdown
// Окраска
CIFilter *colorFilter = [CIFilter filterWithName:@"CIFalseColor"
                                   keysAndValues:
                         @"inputImage", qrFilter.outputImage,
                         @"inputColor0", [CIColor colorWithCGColor:onColor.CGColor],
                         @"inputColor1", [CIColor colorWithCGColor:offColor.CGColor],
                         nil];

В данном случае нет необходимости менять код, поскольку все ключевые слова и значения уже на английском языке и являются частью кода.```markdown CIImage *qrImage = colorFilter.outputImage;

// Отрисовка CGSize size = CGSizeMake(width, width); CGImageRef cgImage = [[CIContext contextWithOptions:nil] createCGImage:qrImage fromRect:qrImage.extent]; UIGraphicsBeginImageContext(size); CGContextRef context = UIGraphicsGetCurrentContext(); CGContextSetInterpolationQuality(context, kCGInterpolationNone); CGContextScaleCTM(context, 1.0, -1.0); CGContextDrawImage(context, CGContextGetClipBoundingBox(context), cgImage); _codeImage = UIGraphicsGetImageFromCurrentImageContext(); UIGraphicsEndImageContext();

CGImageRelease(cgImage);


Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

Описание недоступно Развернуть Свернуть
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://gitlife.ru/oschina-mirror/reesun1130-SYQRCodeDemo.git
git@gitlife.ru:oschina-mirror/reesun1130-SYQRCodeDemo.git
oschina-mirror
reesun1130-SYQRCodeDemo
reesun1130-SYQRCodeDemo
master