QR. Flutter는 위젯 또는 사용자 정의 화가를 통한 간단하고 빠른 QR 코드 렌더링을위한 Flutter 라이브러리입니다.
"어떻게 ..?"에 대한 문제를 제출하지 마십시오. 또는 "거래는 무엇입니까 ..?" 질문을 입력하십시오. 그들은 거의 즉시 폐쇄 될 것입니다. 궁금한 점이 있으면 토론위원회 또는 스택 오버플로에서 문의하십시오. 그들은 그곳에서 대답 할 것입니다.
문제를 사용하면 많은 양의 소음이 생기고 실제 문제가 느려집니다.
버전 호환성 : 4.0.0+는 Null 안전성을 지원하며 호환되는 Flutter 버전이 필요합니다. 호환되지 않는 버전의 Flutter를 사용하는 경우이 라이브러리의 3.x 버전을 사용하십시오.
pubspec.yaml 파일에 다음을 추가해야합니다.
dependencies :
qr_flutter : ^4.1.0 참고 : Flutter master 채널을 사용하는 경우 빌드 문제가 발생하거나 최신 및 최고를 시도하려면 특정 릴리스 버전이 아닌 master 브랜치를 사용해야합니다. 이렇게하려면 pubspec.yaml 에서 다음 구성을 사용하십시오.
dependencies :
qr_flutter :
git :
url : https://github.com/theyakka/qr.flutter master 브랜치는 불안정 할 수 있습니다.
pubspec.yaml 에 의존성을 추가 한 후 실행할 수 있습니다. flutter packages get 거나 업데이트하십시오.
시작하려면 코드의 종속성을 가져옵니다.
import 'package:qr_flutter/qr_flutter.dart' ;다음으로 기본 QR 코드를 렌더링하려면 다음 코드 (또는 그와 유사한)를 사용할 수 있습니다.
QrImageView (
data : '1234567890' ,
version : QrVersions .auto,
size : 200.0 ,
),데이터 요구 사항에 따라 QR 코드 출력을 조정할 수 있습니다. 다음 옵션을 사용할 수 있습니다.
| 재산 | 유형 | 설명 |
|---|---|---|
version | int | QrVersions.auto 또는 1과 40 사이의 값. 제한 및 세부 사항은 http://www.qrcode.com/en/about/version.html을 참조하십시오. |
errorCorrectionLevel | int | QrErrorCorrectLevel 에 정의 된 값. EG : QrErrorCorrectLevel.L . |
size | 더블 | 이미지의 (정사각형) 크기. 주어지지 않으면 가장 짧은 크기 제약 조건을 사용하여 자동 크기가됩니다. |
padding | EdgeInsets | QR 코드 데이터를 둘러싼 패딩. |
backgroundColor | 색상 | 배경색 (기본값은 없음). |
eyeStyle | Qreyestyle | QR 코드 눈 '(Corners') 모양과 색상을 구성합니다. |
dataModuleStyle | qrdatamodulestyle | 도트의 모양과 색상을 구성합니다. |
gapless | 부 | 간격을 방지하기 위해 크기가 추가로 추가됩니다 (기본값은 사실입니다). |
errorStateBuilder | QRERRORBUILDER | QR 코드를 렌더링하는 오류가 발생한 경우 오류 상태 Widget 표시 할 수 있습니다 (예 : 버전이 너무 낮고 입력이 너무 길다). |
constrainErrorBounds | 부 | 사실이라면, 오류 Widget QR 코드가 그려 질 수있는 제곱으로 제한됩니다. False가 있으면 오류 상태 Widget 필요한 크기로 증가/축소됩니다. |
embeddedImage | ImageProvider | QR 코드 중앙에 이미지를 정의하는 ImageProvider . |
embeddedImageStyle | QREMBEDDEDIMAGESTYLE | 내장 된 이미지를 스타일링하는 속성. |
embeddedImageEmitsError | 부 | 사실 인 경우, 내장 이미지를로드하지 않으면 errorStateBuilder 가 트리거되거나 빈 Container 가 렌더링됩니다. False가 있으면 QR 코드가 렌더링되고 내장 이미지는 무시됩니다. |
semanticsLabel | 끈 | semanticsLabel 스크린 리더가 QR 코드의 내용을 설명하는 데 사용됩니다. |
borderRadius | 더블 | 모양 유형에 대한 코너 반올림 설정 QrEyeShape.square , QrDataModuleShape.square , EmbeddedImageShape.square . 적절한 스타일로 설정하십시오. |
roundedOutsideCorners | 부 | 사실이라면 데이터의 외부 모서리가 반올림됩니다. QrDataModuleStyle 로 설정하십시오. 기본적으로 borderRadius 로 반올림. QrDataModuleShape.square 만. |
outsideBorderRadius | 더블 | 외부 반올림 outsideBorderRadius 내부 1 borderRadius 과 다른 경우에 설정됩니다. borderRadius 에 지나지 않습니다. QrDataModuleShape.square 만 |
gradient | 구배 | 코드의 단색을 LinearGradient 로 변경하십시오. |
safeArea | 부 | 사실이라면 데이터는 embeddedImage 에 숨겨져 있습니다. QrEmbeddedImageStyle 로 설정하십시오. |
safeAreaMultiplier | 더블 | 멀티 플라이어 safeArea 크기. |
/example 디렉토리에는 간단하고 작동하는 예제 플러터 앱이 있습니다. 모든 옵션을 사용하는 데 사용할 수 있습니다.
또한 다음 예제는 라이브러리 사용 방법에 대한 빠른 개요를 제공합니다.
기본 QR 코드는 다음과 같습니다.
QrImageView (
data : 'This is a simple QR code' ,
version : QrVersions .auto,
size : 320 ,
gapless : false ,
)응용 프로그램 자산의 이미지가있는 QR 코드는 다음과 같습니다.
QrImageView (
data : 'This QR code has an embedded image as well' ,
version : QrVersions .auto,
size : 320 ,
gapless : false ,
embeddedImage : AssetImage ( 'assets/images/my_embedded_image.png' ),
embeddedImageStyle : QrEmbeddedImageStyle (
size : Size ( 80 , 80 ),
),
)QR 코드를 검증 할 수없는 경우 오류 상태를 표시하려면 다음과 같습니다.
QrImageView (
data : 'This QR code will show the error state instead' ,
version : 1 ,
size : 320 ,
gapless : false ,
errorStateBuilder : (cxt, err) {
return Container (
child : Center (
child : Text (
'Uh oh! Something went wrong...' ,
textAlign : TextAlign .center,
),
),
);
},
)내부 및 외부 모서리 반올림 및 내장 이미지의 안전한 영역이있는 QR 코드 :
QrImageView (
data : 'London is the capital of Great Britain' ,
version : QrVersions .auto,
size : 320 ,
eyeStyle : const QrEyeStyle (
borderRadius : 10 ,
),
dataModuleStyle : const QrDataModuleStyle (
borderRadius : 5 ,
roundedOutsideCorners : true ,
),
embeddedImage : AssetImage ( 'assets/images/my_embedded_image.png' ),
embeddedImageStyle : QrEmbeddedImageStyle (
size : Size . square ( 40 ),
color : Colors .white,
safeArea : true ,
safeAreaMultiplier : 1.1 ,
embeddedImageShape : EmbeddedImageShape .square,
borderRadius : 10 ,
),
)그라디언트가있는 QR 코드 :
QrImageView (
data : 'Rainbow after the rain' ,
version : QrVersions .auto,
size : 320 ,
gradient : LinearGradient (
begin : Alignment .bottomLeft,
end : Alignment .topRight,
colors : [
Color ( 0xffff0000 ),
Color ( 0xffffa500 ),
Color ( 0xffffff00 ),
Color ( 0xff008000 ),
Color ( 0xff0000ff ),
Color ( 0xff4b0082 ),
Color ( 0xffee82ee ),
],
),
)그의 멋진 QR -Dart Library에 대한 Kevin Moore에게 감사드립니다. 이 라이브러리의 핵심입니다.
저자/기고자 정보는 AUTHORS 파일을 참조하십시오.
QR. Flutter는 BSD-3 라이센스에 따라 릴리스됩니다. 자세한 내용은 LICENSE 참조하십시오.