QR 코드 customizing - qrcode parameter 알아보기
qrcode customization
이번에는 qrcode 라이브러리가 제공하는 QR code의 customizing을 위한 parameter를 간략히 알아 보겠습니다.
우선 코드를 먼저 보시겠습니다.
qr = qrcode.QRCode(version=10, box_size=5, border=1)
data = 'https://pdatinmylife.tistory.com/'
qr.add_data(data)
qr.make(fit=True)
img = qr.make_image(fill_color = 'black', back_color='yellow')
1) version
QR 코드의 크기를 조절하게 됩니다. 안내에 따르면, version에 주는 값이 작으면 작을수록 QR 코드 자체의 크기가 줄어 듭니다. 1에서 40까지의 int값을 줄 수 있습니다.
아래 이미지에서 보시면 왼쪽의 것이 version = 1을 주었을 때고, 오른쪽의 것은 version = 20을 주었을 때 입니다. 크기가 확연히 달라진 것을 확인할 수 있습니다.
2) box_size
공식문서상의 설명은 다음과 같습니다.
The
box_sizeparameter controls how many pixels each “box” of the QR code is
해석하면 QR 코드의 각 박스가 몇 픽셀을 차지하는지를 제어한다인데요.. QR 코드를 자세히 보시면 검정색 또는 흰색의 정사각형의 n X n 형태의 정사각형 조합입니다. 바로 이러한 구성 박스가 차지하는 픽셀을 조절한다는 것인데요. 이 값을 크게 주면 각 박스가 차지하는 픽셀이 커져서 결국 QR 코드 자체를 크게 하거나 작게 만드는 효과가 생깁니다.
비교를 위해 version = 10으로 고정하고서, box_size 에 왼쪽은 5, 오른쪽은 10의 값을 주어봤습니다.
box_size = 5
box_size = 10
비교해 보시면, version을 조정하였을 때는, 박스의 크기는 동일하지만 전체적인 크기가 커진 반면, box_size를 조절하였을 때엔, 구성요소인 box의 크기 자체가 변경된 것이 확인됩니다.
3) border
이 인자에 대한 공식문서상의 설명은 다음과 같습니다.
The
borderparameter controls how many boxes thick the border should be (the default is 4, which is the minimum according to the specs).
해석하면 테두리의 두께를 두껍게 하는 상자 수를 제어합니다. 기본값은 사양에 따라 최소값은 4로 세팅됩니다.
그럼 비교를 위해 border =4 일 때와 10 일 때의 이미지를 보시겠습니다. 이번 인자 비교를 위해 back_color를 yellow로 먼저 setting후 출력해 보았습니다.
보이시는 것처럼 border는 QR 코드의 각 측면 박스로부터 이 이미지 출력물이 차지하는 전체 공간의 경계선까지의 거리를 조절하게 됩니다.
4) fill_color 와 back_color
이 인자에 대한 공식문서상의 설명은 다음과 같습니다.
fill_color
and
back_colorcan change the background and the painting color of the QR, when using the default image factory.
fill_color는 box의 색 지정을 할 수 있고, back_color는 QR 코드의 출력물의 배경색을 지정할 수 있습니다.
비교를 위해 fill_color = green을, back_color = silver값을 주어 보았습니다.
그 외 error_correction에 대한 설명도 있는데, 이 부분에 대해서는 공식문서를 직접 한 번 참조해 보시는 것도 좋을 것 같아서 python 공식문서 페이지를 링크로 아래 걸어 두었습니다.
Pure python QR Code generator - qrcode 6.1
이제 parameter들을 이해하였기 때문에, 나만의 QR 코드를 다채롭게 만드는 것이 가능해 졌습니다.
다양한 용처는 사용자의 필요에 따라, 개발될 수 있는 부분이 많다고 생각됩니다.
제 글이 활용에 도움이 되셨길 바랍니다.
NPU(엔피유) 관세사무소
대표관세사 고장주
Tel) 031-986-7190
E-mail) sales@npucus.com
[NPU관세사무소 프로모션 페이지] https://www.tradenpu.com/npu_cus/
[무역비지니스 인텔리전스 서비스 | TradeNPU] https://www.tradenpu.com
[파이썬 실용 예제. 무역과 공공데이터] https://pdatinmylife.tistory.com
Certified Customs Broker JangJu Goh
Executive Customs Broker @ NPU Customs Consulting
CEO @ JG TradePlus
sales@npucus.com
Trade Compliance / Customs clearance management at foreign company
Working experience of Air export freight forwarding
Data Visualization / Independent development of business automation application – copyright of JGPO_Manager, JG Data Center, AutoCC and etc.
B2B consignment & direct export/import, B2C Overseas Buying Office consulting
Alibaba.com B2B trade / taobao B2C trade / Amazon.com global selling etc. Online trade regulation consulting.
Import license / Quarantine
English communication available
[TradeNPU for partnership proposal - JGTP] https://www.tradenpu.com/jgtp/
'파이썬(Python) > QR 코드' 카테고리의 다른 글
QR 코드 생성하기 (0) | 2020.08.03 |
---|