ππ¨ ΠΠ΅Π½Π΅ΡΠ°ΡΠΈΡ ΠΊΡΠ°ΡΠΈΠ²ΡΡ QR-ΠΊΠΎΠ΄ΠΎΠ² Ρ ΠΏΠΎΠΌΠΎΡΡΡ Python
Π‘ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠΎΠ³ΠΎ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π° Π²Ρ ΡΠ·Π½Π°Π΅ΡΠ΅, ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Python ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ Segno Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΊΡΠ°ΡΠΈΠ²ΡΡ QR-ΠΊΠΎΠ΄ΠΎΠ².
Π ΠΊΠ»Π°ΡΡΠΈΡΠ΅ΡΠΊΠΎΠΌ ΡΠΎΡΠΌΠ°ΡΠ΅ QR-ΠΊΠΎΠ΄ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ ΡΠ΅ΡΠ½ΡΠ΅ ΠΊΠ²Π°Π΄ΡΠ°ΡΡ ΠΈ ΡΠΎΡΠΊΠΈ Π½Π° Π±Π΅Π»ΠΎΠΌ ΡΠΎΠ½Π΅ ΠΈ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ, ΠΊΠΎΡΠΎΡΡΡ ΠΌΠΎΠΆΠ΅Ρ ΡΠ°ΡΡΠΈΡΡΠΎΠ²Π°ΡΡ Π»ΡΠ±ΠΎΠΉ ΡΠΌΠ°ΡΡΡΠΎΠ½ ΠΈΠ»ΠΈ ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ ΡΠΎ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠΌ QR-ΡΠΊΠ°Π½Π΅ΡΠΎΠΌ. Π ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ ΠΎΠ±ΡΡΠ½ΠΎΠ³ΠΎ ΡΡΡΠΈΡ -ΠΊΠΎΠ΄Π°, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΡΠ°ΡΠΏΠΎΠ»Π°Π³Π°Π΅ΡΡΡ Π³ΠΎΡΠΈΠ·ΠΎΠ½ΡΠ°Π»ΡΠ½ΠΎ, Π² QR-ΠΊΠΎΠ΄Π΅ Π΄Π°Π½Π½ΡΠ΅ ΡΠ°ΡΠΏΠΎΠ»Π°Π³Π°ΡΡΡΡ Π² Π΄Π²ΡΡ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΡΡ ΠΈ ΠΌΠΎΠ³ΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ Π² ΡΡΠΎ ΡΠ°Π· Π±ΠΎΠ»ΡΡΠ΅ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ.
Π ΡΡΠΎΠΌ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π΅ Π²Ρ ΡΠ·Π½Π°Π΅ΡΠ΅ ΠΊΠ°ΠΊ:
- ΡΠ³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°ΡΡ Π±Π°Π·ΠΎΠ²ΡΠΉ ΡΠ΅ΡΠ½ΠΎ-Π±Π΅Π»ΡΠΉ QR-ΠΊΠΎΠ΄
- ΠΌΠ΅Π½ΡΡΡ ΡΠ°Π·ΠΌΠ΅Ρ ΠΈ ΠΏΠΎΠ»Ρ Π² QR-ΠΊΠΎΠ΄Π΅
- ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΡΠ²Π΅ΡΠ½ΡΠ΅ QR-ΠΊΠΎΠ΄Ρ
- Π²ΡΠ°ΡΠ°ΡΡ QR-ΠΊΠΎΠ΄
- Π·Π°ΠΌΠ΅Π½ΠΈΡΡ ΡΡΠ°ΡΠΈΡΠ½ΡΠΉ ΡΠΎΠ½ Π½Π° Π°Π½ΠΈΠΌΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ΅ GIF-ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅
ΠΠ»Π°ΡΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ QR-ΠΊΠΎΠ΄Ρ Π±ΡΠ»ΠΈ, Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ, ΡΠ΅ΡΠ½ΠΎ-Π±Π΅Π»ΡΠΌΠΈ. Π‘Π΅Π³ΠΎΠ΄Π½Ρ ΠΆΠ΅, Π±Π»Π°Π³ΠΎΠ΄Π°ΡΡ ΡΠ²ΠΎΡΡΠ΅ΡΠΊΠΈΠΌ ΠΈΠ½Π½ΠΎΠ²Π°ΡΠΈΡΠΌ, QR-ΠΊΠΎΠ΄Ρ ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ ΡΠ°Π·Π½ΠΎΠΎΠ±ΡΠ°Π·Π½ΡΠ΅ ΡΠΎΡΠΌΡ, ΡΠ°Π·ΠΌΠ΅ΡΡ ΠΈ ΡΠ²Π΅ΡΠ°. ΠΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ Π½Π°ΡΡΠΈΡΡΡΡ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π²ΡΡ ΡΠ²Π΅ΡΠ½ΡΠ΅ QR-ΠΊΠΎΠ΄Ρ, Π½ΠΎ ΠΈ ΠΊΡΠ°ΡΠΎΡΠ½ΡΠ΅ ΠΈ Ρ ΡΠ΄ΠΎΠΆΠ΅ΡΡΠ²Π΅Π½Π½ΡΠ΅ β ΡΠΎΠ³Π΄Π° ΡΡΠΎ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ Π΄Π»Ρ Π²Π°Ρ.
ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ Python Π΄Π»Ρ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΠΈ Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ QR-ΠΊΠΎΠ΄Π°
ΠΠ»Ρ Π½Π°ΡΠ°Π»Π° ΡΠΎΠ·Π΄Π°Π΄ΠΈΠΌ ΡΠ΅ΡΠ½ΠΎ-Π±Π΅Π»ΡΠΉ QR-ΠΊΠΎΠ΄, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Π±ΡΠ΄Π΅Ρ Π·Π°ΡΠΈΡΡΠΎΠ²Π°Π½ΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅. Π§ΡΠΎΠ±Ρ ΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΡ Π΄Π°Π½Π½ΠΎΠΌΡ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Ρ, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Segno β ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ Python Π΄Π»Ρ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΠΈ QR-ΠΊΠΎΠ΄ΠΎΠ². ΠΠ»Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Segno ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ pip Π² Π²Π°ΡΠ΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅:
ΠΠΎΡΠ»Π΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Segno ΡΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΡΠ°ΠΉΠ» Python, Π½Π°Π·Π²Π°Π² Π΅Π³ΠΎ basic_qrcode.py
. ΠΠ»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠ΅ΡΠ½ΠΎ-Π±Π΅Π»ΠΎΠ³ΠΎ QR-ΠΊΠΎΠ΄Π°, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠ΅Π³ΠΎ Π½Π΅ΠΊΠΎΡΠΎΡΡΠΉ ΠΊΠΎΠ½ΡΠ΅Π½Ρ, Π½ΡΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠ½ΠΊΡΠΈΡ make_qr()
. ΠΡΠΎ Π³Π°ΡΠ°Π½ΡΠΈΡΡΠ΅Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΏΠΎΠ»Π½ΠΎΡΠ°Π·ΠΌΠ΅ΡΠ½ΠΎΠ³ΠΎ QR-ΠΊΠΎΠ΄Π°, ΠΈ Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΡΠΌ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΡΠΌ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠΌ, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌ β ΡΡΠΎ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ, ΠΊΠΎΡΠΎΡΡΡ Π²Ρ Ρ
ΠΎΡΠΈΡΠ΅ Π·Π°ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°ΡΡ.
make()
Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ° QR-ΠΊΠΎΠ΄, Π½ΠΎ Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ Π·Π°ΡΠΈΡΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ ΠΎΠ½Π° ΠΌΠΎΠΆΠ΅Ρ ΡΠΎΠ·Π΄Π°ΡΡ ΠΌΠΈΠΊΡΠΎ-QR-ΠΊΠΎΠ΄. Π ΡΠ°ΠΌΠΊΠ°Ρ
Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π° ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΡΠΈΡΠ°ΡΡ Π΅Π³ΠΎ ΠΌΠ°Π»Π΅Π½ΡΠΊΠΈΠΌ QR-ΠΊΠΎΠ΄ΠΎΠΌ. ΠΠ»Ρ ΠΏΡΠΈΠ½ΡΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΏΠΎΠ»Π½ΠΎΡΠ°Π·ΠΌΠ΅ΡΠ½ΠΎΠ³ΠΎ QR-ΠΊΠΎΠ΄Π° Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠ½ΠΊΡΠΈΡ make_qr()
.QR-ΠΊΠΎΠ΄Ρ ΡΠΏΠΎΡΠΎΠ±Π½Ρ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ Π²ΡΠ΅ ΡΠΈΠΏΡ Π΄Π°Π½Π½ΡΡ
, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Π±ΡΠΊΠ²Π΅Π½Π½ΠΎ-ΡΠΈΡΡΠΎΠ²ΡΠ΅ Π·Π½Π°ΠΊΠΈ, ΡΠΈΠΌΠ²ΠΎΠ»Ρ ΠΈ Π΄Π°ΠΆΠ΅ URL. Π§ΡΠΎΠ±Ρ Π½Π°ΡΠ°ΡΡ ΠΏΡΡΠ΅ΡΠ΅ΡΡΠ²ΠΈΠ΅ ΠΊ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΠΈ QR-ΠΊΠΎΠ΄ΠΎΠ² Π½Π° Python, Π΄Π»Ρ Π½Π°ΡΠ°Π»Π° ΡΠΎΠ·Π΄Π°ΠΉΡΠ΅ QR-ΠΊΠΎΠ΄ Ρ Π·Π°ΡΠΈΡΡΠΎΠ²Π°Π½Π½ΡΠΌ ΡΠ΅ΠΊΡΡΠΎΠΌ "Hello, World"
:
ΠΠ° Π΄Π°Π½Π½ΠΎΠΌ ΡΡΠ°ΠΏΠ΅ Π²Ρ Π½Π°ΠΏΠΈΡΠ°Π»ΠΈ ΠΊΠΎΠ΄, Π·Π°ΡΠΈΡΡΠΎΠ²Π°Π² ΡΠ΅ΠΊΡΡ "Hello, World"
, ΠΏΠ΅ΡΠ΅Π΄Π°Π² Π΅Π³ΠΎ ΡΡΠ½ΠΊΡΠΈΠΈ make_qr()
. ΠΠ½ Π±ΡΠ΄Π΅Ρ ΠΏΡΠΈΠ²Π΅ΡΡΡΠ²ΠΎΠ²Π°ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΡΡΠΈΠΌ ΡΠ΅ΠΊΡΡΠΎΠΌ ΠΈ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠΈΡΡ Π΅ΠΌΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΠΎΠΈΡΠΊΠ° "Hello, World"
Π² ΠΈΠ½ΡΠ΅ΡΠ½Π΅ΡΠ΅.
Π’Π΅ΠΏΠ΅ΡΡ Π΄Π»Ρ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΠΈ ΡΠ΅ΡΠ½ΠΎ-Π±Π΅Π»ΠΎΠ³ΠΎ QR-ΠΊΠΎΠ΄Π°, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΠΎΠΆΠ½ΠΎ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠ²ΠΈΠ΄Π΅ΡΡ ΠΈ ΠΎΡΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°ΡΡ, Π½ΡΠΆΠ½ΠΎ ΡΠΎΡ
ΡΠ°Π½ΠΈΡΡ Π·Π°ΡΠΈΡΡΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΌΠ΅ΡΠΎΠ΄ .save()
, ΡΡΠΎΠ±Ρ ΡΠΎΡ
ΡΠ°Π½ΠΈΡΡ QR-ΠΊΠΎΠ΄ Π² ΡΠΎΡΠΌΠ°ΡΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ. ΠΠ΄Π΅ΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ²ΠΈΠ΄Π΅ΡΡ ΠΏΡΠΈΠΌΠ΅Ρ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ qrcode
, ΠΊΠΎΠ΄ΠΈΡΡΡΡΡΡ ΡΠ΅ΠΊΡΡ "Hello, World"
Π² ΡΠ΅ΡΠ½ΠΎ-Π±Π΅Π»ΠΎΠΌ ΠΎΠ±ΡΠ΅ΠΊΡΠ΅ QR-ΠΊΠΎΠ΄Π°, ΠΊΠΎΡΠΎΡΡΠΉ Π΄Π°Π»Π΅Π΅ ΡΠΎΡ
ΡΠ°Π½ΡΠ΅ΡΡΡ Π² ΡΠΎΡΠΌΠ°ΡΠ΅ PNG-ΡΠ°ΠΉΠ»Π° basic_qrcode.png
:
ΠΠ΅ΡΠΎΠ΄ .save()
ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΠ΅Ρ QR-ΠΊΠΎΠ΄ Π² Π²ΡΠ±ΡΠ°Π½Π½ΡΠΉ Π²Π°ΠΌΠΈ ΡΠΎΡΠΌΠ°Ρ ΡΠ°ΠΉΠ»Π°, Π΅ΡΠ»ΠΈ ΠΎΠ½ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ. ΠΠΎΠ³Π΄Π° Π²Ρ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄ .save()
ΠΊ ΡΠΎΠ·Π΄Π°Π½Π½ΠΎΠΉ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ Ρ Π·Π°ΡΠΈΡΡΠΎΠ²Π°Π½Π½ΡΠΌ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΡΠΌ, Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΊΠ°Π·Π°ΡΡ ΠΈΠΌΡ ΡΠ°ΠΉΠ»Π°, Π²ΠΊΠ»ΡΡΠ°Ρ ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΡΠΉ ΠΏΡΡΡ ΠΊ Π½Π΅ΠΌΡ. Π ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Π²ΡΡΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ QR-ΠΊΠΎΠ΄Π° ΡΠΎΡ
ΡΠ°Π½ΡΠ΅ΡΡΡ Π² ΡΠ°ΠΉΠ» Ρ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ basic_qrcode.png
Π² ΡΠΎΠΉ ΠΆΠ΅ ΠΏΠ°ΠΏΠΊΠ΅, Π³Π΄Π΅ Π²Ρ Π±ΡΠ΄Π΅ΡΠ΅ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΠΊΠΎΠ΄, ΠΏΠΎΡΡΠΎΠΌΡ ΠΏΡΡΡ ΠΊ ΡΠ°ΠΉΠ»Ρ ΠΌΠΎΠΆΠ½ΠΎ Π½Π΅ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ.
ΠΡΠ»ΠΈ Π²Ρ Ρ
ΠΎΡΠΈΡΠ΅ ΡΠΎΡ
ΡΠ°Π½ΠΈΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π² Π΄ΡΡΠ³ΠΎΠΉ ΠΏΠ°ΠΏΠΊΠ΅, ΡΠΎ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ° Π² ΠΌΠ΅ΡΠΎΠ΄Π΅ .save()
Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΊΠ°Π·Π°ΡΡ ΡΠ°ΠΉΠ» Ρ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ ΠΈ ΠΏΡΡΡ ΠΊ Π½Π΅ΠΌΡ.
ΠΠΎΡΠ»Π΅ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ ΠΎΠΏΠΈΡΠ°Π½Π½ΡΡ
ΡΠ°Π³ΠΎΠ² Π΄Π»Ρ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΠΈ ΡΠ΅ΡΠ½ΠΎ-Π±Π΅Π»ΠΎΠ³ΠΎ QR-ΠΊΠΎΠ΄Π° Π² basic_qrcode.py
Π½ΡΠΆΠ½ΠΎ Π·Π°ΠΏΡΡΡΠΈΡΡ Python-ΡΠΊΡΠΈΠΏΡ ΠΈΠ· ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ:
ΠΠΎΠ·Π΄ΡΠ°Π²Π»ΡΠ΅ΠΌ, Π²Ρ ΡΠΎΠ»ΡΠΊΠΎ ΡΡΠΎ ΡΠΎΠ·Π΄Π°Π»ΠΈ ΡΠ΅ΡΠ½ΠΎ-Π±Π΅Π»ΡΠΉ QR-ΠΊΠΎΠ΄ Ρ ΡΠ΅ΠΊΡΡΠΎΠΌ "Hello, World"
, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ make_qr()
ΠΈ .save()
. Π’Π΅ΠΏΠ΅ΡΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°ΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ QR-ΠΊΠΎΠ΄Π°, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ Π² ΡΠΎΠΉ ΠΆΠ΅ ΠΏΠ°ΠΏΠΊΠ΅, ΠΈΠ· ΠΊΠΎΡΠΎΡΠΎΠΉ Π·Π°ΠΏΡΡΠΊΠ°Π»ΡΡ Π²Π°Ρ ΠΊΠΎΠ΄. ΠΠ»ΠΈ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°ΡΡ QR-ΠΊΠΎΠ΄Π° Ρ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Π½ΠΈΠΆΠ΅:
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΠ±Π½Π°ΡΡΠΆΠΈΡΡ, ΡΡΠΎ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ QR-ΠΊΠΎΠ΄Π° Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΡΡΡΠ΄Π½ΠΎ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅ΡΡ ΠΈΠ»ΠΈ ΠΏΡΠΎΡΠΈΡΠ°ΡΡ ΠΈΠ·-Π·Π° Π΅Π³ΠΎ ΡΠ°Π·ΠΌΠ΅ΡΠ°, ΠΏΠΎΡΡΠΎΠΌΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΏΡΠ½ΠΊΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π½Π°ΡΡΡΠΎΠΈΡΡ β ΡΠ°Π·ΠΌΠ΅Ρ Π²Π°ΡΠ΅Π³ΠΎ Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ QR-ΠΊΠΎΠ΄Π°.
ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΡΠ°Π·ΠΌΠ΅ΡΠ° QR-ΠΊΠΎΠ΄Π°
ΠΠ»Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΡΠ°Π·ΠΌΠ΅ΡΠ° QR-ΠΊΠΎΠ΄Π° ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ scale
Π² ΠΌΠ΅ΡΠΎΠ΄ .save()
. ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ scale
β ΡΡΠΎ ΠΊΠΎΡΡΡΠΈΡΠΈΠ΅Π½Ρ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ΅Π³ΡΠ»ΠΈΡΡΠ΅Ρ ΡΠΈΡΠΈΠ½Ρ ΠΈ Π²ΡΡΠΎΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ QR-ΠΊΠΎΠ΄Π°.
ΠΠ»Ρ ΡΠΏΡΠ°Π²ΠΊΠΈ β ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° scale
ΡΠ°Π²Π½ΠΎ 1
. ΠΠΎΠ³Π΄Π° Π²Ρ ΡΠΎΠ·Π΄Π°Π²Π°Π»ΠΈ ΡΠ²ΠΎΠΉ ΠΏΠ΅ΡΠ²ΡΠΉ QR-ΠΊΠΎΠ΄ Π² basic_qrcode.py
, ΡΠ°Π·ΠΌΠ΅Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΈΠ»ΠΈ Π±Π΅Π»ΠΎΠ³ΠΎ ΠΊΠ²Π°Π΄ΡΠ°ΡΠ° Π² QR-ΠΊΠΎΠ΄Π΅ ΡΠΎΡΡΠ°Π²Π»ΡΠ» ΠΎΠ΄ΠΈΠ½ ΠΏΠΈΠΊΡΠ΅Π»Ρ Π² ΡΠΈΡΠΈΠ½Ρ ΠΈ ΠΎΠ΄ΠΈΠ½ ΠΏΠΈΠΊΡΠ΅Π»Ρ Π² Π²ΡΡΠΎΡΡ. ΠΠ°ΠΆΠ΄ΡΠΉ ΠΈΠ· ΡΡΠΈΡ
ΡΠ΅ΡΠ½ΡΡ
ΠΈΠ»ΠΈ Π±Π΅Π»ΡΡ
ΠΊΠ²Π°Π΄ΡΠ°ΡΠΎΠ² Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΌ.
Π‘ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΠ΄Π°, ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ Π½ΠΈΠΆΠ΅, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ QR-ΠΊΠΎΠ΄, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠΉ Π·Π°ΡΠΈΡΡΠΎΠ²Π°Π½Π½ΡΠΉ ΡΠ΅ΠΊΡΡ "Hello, World"
, Π³Π΄Π΅ ΡΠ°Π·ΠΌΠ΅Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΌΠΎΠ΄ΡΠ»Ρ ΡΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ 5x5 ΠΏΠΈΠΊΡΠ΅Π»Π΅ΠΉ:
ΠΡΠ°ΠΊ, Π²Ρ ΡΠΎΠ·Π΄Π°Π»ΠΈ Python-ΡΠ°ΠΉΠ» ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ scaled_qrcode.py
ΠΈ Π² ΠΌΠ΅ΡΠΎΠ΄Π΅ .save()
Π·Π°Π΄Π°Π»ΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ scale=5
. ΠΠ»Ρ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΠΈ ΡΡΠΎΠ³ΠΎ ΡΠ΅ΡΠ½ΠΎ-Π±Π΅Π»ΠΎΠ³ΠΎ QR-ΠΊΠΎΠ΄Π° Ρ ΠΊΠΎΡΡΡΠΈΡΠΈΠ΅Π½ΡΠΎΠΌ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ°Π²Π½ΡΠΌ ΠΏΡΡΠΈ, Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°ΠΏΡΡΡΠΈΡΡ scaled_qrcode.py
ΠΈΠ· ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ:
ΠΡΠ»ΠΈΡΠ½Π°Ρ ΡΠ°Π±ΠΎΡΠ°! ΠΡ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ»ΠΈ ΡΠ°Π·ΠΌΠ΅Ρ ΡΠ²ΠΎΠΈΡ
ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ, ΠΏΡΠΈΠΌΠ΅Π½ΠΈΠ² ΠΌΠ΅ΡΠΎΠ΄ .save()
ΠΊ QR-ΠΊΠΎΠ΄Ρ Ρ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠΌ scale
, ΡΠ°Π²Π½ΡΠΌ 5
. ΠΠ°Ρ QR-ΠΊΠΎΠ΄ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΠΊΠ°ΠΊ Π½Π° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΈ Π½ΠΈΠΆΠ΅:
ΠΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΡΡΠ΄Π½ΠΎ ΡΠ²ΠΈΠ΄Π΅ΡΡ, Π½ΠΎ Π΅ΡΠ»ΠΈ ΡΠ²Π΅Π»ΠΈΡΠΈΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π²ΡΡΠ΅, ΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΌΠ΅ΡΠΈΡΡ, ΡΡΠΎ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ QR-ΠΊΠΎΠ΄Π° ΡΠ°ΠΊΠΆΠ΅ Π²ΠΊΠ»ΡΡΠ°Π΅Ρ Π² ΡΠ΅Π±Ρ Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΏΡΡΡΠΎΠ΅ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ. Π ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ ΡΠ°Π·Π΄Π΅Π»Π΅ Π²Ρ ΡΠ·Π½Π°Π΅ΡΠ΅, ΠΊΠ°ΠΊ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΡΠ°Π·ΠΌΠ΅Ρ ΠΈΠ»ΠΈ ΡΠ΄Π°Π»ΠΈΡΡ ΡΡΠΎ ΠΏΡΡΡΠΎΠ΅ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ.
Π€ΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π³ΡΠ°Π½ΠΈΡΡ QR-ΠΊΠΎΠ΄Π°
Π§ΡΠΎΠ±Ρ ΡΠ΄Π΅Π»Π°ΡΡ ΠΏΡΠΎΡΠ΅ΡΡ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ QR-ΠΊΠΎΠ΄Π° Π±ΠΎΠ»Π΅Π΅ ΡΠ΄ΠΎΠ±Π½ΡΠΌ ΠΈ Π±ΡΡΡ ΡΠ²Π΅ΡΠ΅Π½Π½ΡΠΌ, ΡΡΠΎ ΡΠ°ΠΊΠΈΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²Π°, ΠΊΠ°ΠΊ ΡΠΌΠ°ΡΡΡΠΎΠ½Ρ, ΡΠΌΠΎΠ³ΡΡ ΡΠ΅ΡΠΊΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ, Segno ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ Π²ΠΎΠΊΡΡΠ³ QR-ΠΊΠΎΠ΄Π° Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΏΡΡΡΠΎΠ΅ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ. ΠΡΠΎ ΠΏΡΡΡΠΎΠ΅ ΠΌΠ΅ΡΡΠΎ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ Β«ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ Π·ΠΎΠ½ΠΎΠΉΒ».
ΠΡ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΡΠ°Π·ΠΌΠ΅Ρ ΡΡΠΎΠΉ Β«ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ Π·ΠΎΠ½ΡΒ», ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ² ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ border
Π² ΠΌΠ΅ΡΠΎΠ΄Π΅ .save()
.
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΡΠ°Π·ΠΌΠ΅Ρ ΠΏΠΎΠ»Ρ Π²ΠΎΠΊΡΡΠ³ QR-ΠΊΠΎΠ΄Π°, ΡΠΊΠ°Π·Π°Π² ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΡ border
Π² ΠΌΠ΅ΡΠΎΠ΄Π΅ .save()
. ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΡΠ°Π·ΠΌΠ΅Ρ Β«ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ Π·ΠΎΠ½ΡΒ» ΡΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠ΅ΡΡΡΠ΅ ΠΌΠΎΠ΄ΡΠ»Ρ Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΡΠΎΡΠΎΠ½Ρ.
ΠΡΠ»ΠΈ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΡΠ΄Π°Π»ΠΈΡΡ ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΡΠ΅Π»ΡΠ½ΡΡ Π·ΠΎΠ½Ρ, ΡΠΎ ΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ, Π·Π°Π΄Π°Π² Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ border=0
Π² ΠΌΠ΅ΡΠΎΠ΄Π΅ .save()
. Π ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ Π½ΠΈΠΆΠ΅ ΠΊΠΎΠ΄Π΅ Π²Ρ ΡΠ΄Π°Π»ΠΈΡΠ΅ Π³ΡΠ°Π½ΠΈΡΡ Π²Π°ΡΠ΅Π³ΠΎ QR-ΠΊΠΎΠ΄Π°:
ΠΡ ΡΠΎΠ·Π΄Π°Π»ΠΈ Python-ΡΠΊΡΠΈΠΏΡ Ρ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ borderless_qrcode.py
ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠ»ΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ° border Π² ΠΌΠ΅ΡΠΎΠ΄Π΅ .save()
ΡΠ°Π²Π½ΡΠΌ 0
. ΠΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ ΡΠΎΠ·Π΄Π°ΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π±Π΅Π· ΠΊΠ°ΠΊΠΈΡ
-Π»ΠΈΠ±ΠΎ ΠΏΡΡΡΡΡ
ΠΎΠ±Π»Π°ΡΡΠ΅ΠΉ Π²ΠΎΠΊΡΡΠ³ QR-ΠΊΠΎΠ΄Π°.
Π§ΡΠΎΠ±Ρ ΡΠ³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°ΡΡ QR-ΠΊΠΎΠ΄ Ρ Π·Π°ΡΠΈΡΡΠΎΠ²Π°Π½Π½ΡΠΌ ΡΠ΅ΠΊΡΡΠΎΠΌ "Hello, World"
Π±Π΅Π· Π³ΡΠ°Π½ΠΈΡΡ ΠΈ Ρ ΠΊΠΎΡΡΡΠΈΡΠΈΠ΅Π½ΡΠΎΠΌ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ°Π²Π½ΡΠΌ 5
, Π·Π°ΠΏΡΡΡΠΈΡΠ΅ Π² Π²Π°ΡΠ΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅ ΡΠ°ΠΉΠ» borderless_qrcode.py
:
Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ Π²Ρ ΡΠ±ΡΠ°Π»ΠΈ Β«ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΡΠ΅Π»ΡΠ½ΡΡ Π·ΠΎΠ½ΡΒ» Π² ΡΠ²ΠΎΠ΅ΠΌ QR-ΠΊΠΎΠ΄Π΅. ΠΠΎΠΏΡΠΎΠ±ΡΠΉΡΠ΅ ΠΎΡΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°ΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΡΠ²ΠΎΠ΅Π³ΠΎ QR-ΠΊΠΎΠ΄Π°. Π’Π°ΠΊΠΆΠ΅ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΡΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°ΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ QR-ΠΊΠΎΠ΄Π° Π½ΠΈΠΆΠ΅:
ΠΡΠ»ΠΈ Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΡΠ°Π·ΠΌΠ΅Ρ Β«ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ Π·ΠΎΠ½ΡΒ» ΠΈ ΡΠΎΠ·Π΄Π°ΡΡ Π±ΠΎΠ»Π΅Π΅ ΡΠΈΡΠΎΠΊΡΡ Π³ΡΠ°Π½ΠΈΡΡ QR-ΠΊΠΎΠ΄Π°, ΡΠΎ ΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ, ΡΠ²Π΅Π»ΠΈΡΠΈΠ² Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ border
. Π ΠΏΡΠΈΠΌΠ΅ΡΡ, Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ QR-ΠΊΠΎΠ΄Π° Ρ Π³ΡΠ°Π½ΠΈΡΠ΅ΠΉ ΠΈΠ· Π΄Π΅ΡΡΡΠΈ Π±Π΅Π»ΡΡ
ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π΄Π°ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ border=10
Π² ΠΌΠ΅ΡΠΎΠ΄Π΅ .save()
:
ΠΠ°Ρ Python-ΡΠΊΡΠΈΠΏΡ Ρ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ wide_border_qrcode.py
, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Π²Ρ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ° border
ΡΠ°Π²Π½ΡΠΌ 10
Π² ΠΌΠΎΠ΄ΡΠ»Π΅ .save()
, ΡΠ³Π΅Π½Π΅ΡΠΈΡΡΠ΅Ρ QR-ΠΊΠΎΠ΄ Ρ ΠΎΡΡΡΡΠΏΠΎΠΌ Π² Π΄Π΅ΡΡΡΡ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ.
Π§ΡΠΎΠ±Ρ ΡΠ³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°ΡΡ QR-ΠΊΠΎΠ΄ Ρ Π·Π°ΡΠΈΡΡΠΎΠ²Π°Π½Π½ΡΠΌ ΡΠ΅ΠΊΡΡΠΎΠΌ "Hello, World"
ΡΠ°Π·ΠΌΠ΅ΡΠΎΠΌ 5x5 ΠΏΠΈΠΊΡΠ΅Π»Π΅ΠΉ ΠΈ Π±ΠΎΠ»Π΅Π΅ ΡΠΈΡΠΎΠΊΠΎΠΉ Π³ΡΠ°Π½ΠΈΡΠ΅ΠΉ, Π·Π°ΠΏΡΡΡΠΈΡΠ΅ ΡΠ°ΠΉΠ» wide_border_qrcode.py
ΠΈΠ· ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ:
ΠΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΡΠΎ ΡΠΎΠ·Π΄Π°Π»ΠΈ PNG-ΡΠ°ΠΉΠ» Ρ QR-ΠΊΠΎΠ΄ΠΎΠΌ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠΌ 5x5 ΠΏΠΈΠΊΡΠ΅Π»Π΅ΠΉ ΠΈ Π³ΡΠ°Π½ΠΈΡΠ΅ΠΉ ΠΈΠ· Π΄Π΅ΡΡΡΠΈ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ. ΠΡΠΎΠ²Π΅ΡΡΡΠ΅ Π΅Π³ΠΎ:
ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ QR-ΠΊΠΎΠ΄ ΠΈΠΌΠ΅Π΅Ρ Π±Π΅Π»ΡΠΉ ΡΠΎΠ½ ΠΈ ΡΠ²Π΅Ρ Β«ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ Π·ΠΎΠ½ΡΒ» ΡΠΎΠΆΠ΅ Π±Π΅Π»ΡΠΉ, Π΄Π»Ρ ΡΠΎΠ³ΠΎ ΡΡΠΎΠ±Ρ ΡΠ²ΠΈΠ΄Π΅ΡΡ Π±ΠΎΠ»Π΅Π΅ ΡΠΈΡΠΎΠΊΡΡ Π³ΡΠ°Π½ΠΈΡΡ Π²ΠΎΠΊΡΡΠ³ QR-ΠΊΠΎΠ΄Π°, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΠΏΡΠΈΠ΄Π΅ΡΡΡ ΡΠ²Π΅Π»ΠΈΡΠΈΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅. Π ΠΈΠ΄Π΅Π°Π»Π΅ Π²Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠΌΠ΅ΡΡ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ ΡΠ²Π΅Ρ ΡΠΎΠ½Π° ΠΈΠ»ΠΈ ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ Π·ΠΎΠ½Ρ. Π ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ ΡΠ°Π·Π΄Π΅Π»Π΅ Π²Ρ ΡΠ·Π½Π°Π΅ΡΠ΅, ΠΊΠ°ΠΊ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Python ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π±ΠΎΠ»Π΅Π΅ ΠΊΡΠ°ΡΠΎΡΠ½ΡΠ΅ QR-ΠΊΠΎΠ΄Ρ. ΠΡ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ ΡΠ²Π΅Ρ ΡΠΎΠ½Π°, ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ Π·ΠΎΠ½Ρ ΠΈ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ Π΄Π°Π½Π½ΡΡ .
ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΡΠ²Π΅ΡΠ° QR-ΠΊΠΎΠ΄Π°
ΠΡΠ»ΠΈ Π²Ρ Ρ
ΠΎΡΠΈΡΠ΅ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ QR-ΠΊΠΎΠ΄Ρ Ρ Π²Π°ΡΠΈΠΌΠΈ Π»ΡΠ±ΠΈΠΌΡΠΌΠΈ ΡΠ²Π΅ΡΠ°ΠΌΠΈ, ΡΠΎ ΠΌΠ΅ΡΠΎΠ΄ .save()
ΡΠ°ΡΠΏΠΎΠ»Π°Π³Π°Π΅Ρ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΌΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°ΠΌΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ, ΡΡΠΎΠ±Ρ ΡΠ΄Π΅Π»Π°ΡΡ Π²Π°ΡΠΈ ΠΊΠΎΠ΄Ρ Π±ΠΎΠ»Π΅Π΅ ΠΊΡΠ°ΡΠΎΡΠ½ΡΠΌΠΈ. Π ΡΡΠΎΠΌ ΡΠ°Π·Π΄Π΅Π»Π΅ Π²Ρ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΠ΅ ΡΠ²Π΅Ρ ΡΠΎΠ½Π°, ΡΠΈΡ
ΠΎΠΉ Π·ΠΎΠ½Ρ, Π° ΡΠ°ΠΊΠΆΠ΅ ΡΠ²Π΅ΡΠ»ΡΡ
ΠΈ ΡΠ΅ΠΌΠ½ΡΡ
ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ Π²Π°ΡΠΈΡ
QR-ΠΊΠΎΠ΄ΠΎΠ². ΠΡΠ΅, ΡΡΠΎ Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΡΠ΄Π΅Π»Π°ΡΡ β ΡΡΠΎ ΡΠΊΠ°Π·Π°ΡΡ ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎ ΠΈ Π²ΡΠ±ΡΠ°Π½Π½ΡΠΉ ΡΠ²Π΅Ρ. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΎΡΠΌΠ°Ρ RGB, Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΡΠ²Π΅ΡΠ° ΠΈΠ»ΠΈ ΡΠ΅ΡΡΠ½Π°Π΄ΡΠ°ΡΠ΅ΡΠΈΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ (#RRGGBB).
Π ΠΏΡΠΈΠΌΠ΅ΡΡ, Π΅ΡΠ»ΠΈ Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΡΠ²Π΅Ρ ΡΠΎΠ½Π° Π½Π° ΡΠ²Π΅ΡΠ»ΠΎ-Π³ΠΎΠ»ΡΠ±ΠΎΠΉ, ΡΠΎΠ³Π΄Π° Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ light="lightblue"
Π² ΠΌΠ΅ΡΠΎΠ΄ .save()
:
ΠΡ ΡΠΎΠ·Π΄Π°Π»ΠΈ Python-ΡΠΊΡΠΈΠΏΡ ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ lightblue_qrcode.py
ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠ»ΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ lightblue
Π² Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ΅ light
Π²Π½ΡΡΡΠΈ ΠΌΠ΅ΡΠΎΠ΄Π° .save()
. ΠΡΠΎΡ ΠΊΠΎΠ΄ Π·Π°ΠΌΠ΅Π½ΠΈΡ Π±Π΅Π»ΡΠΉ ΡΠΎΠ½ Π½Π° ΡΠ²Π΅ΡΠ»ΠΎ-Π³ΠΎΠ»ΡΠ±ΠΎΠΉ.
ΠΠ»Ρ ΡΠΏΡΠ°Π²ΠΊΠΈ: ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°ΠΊΠΆΠ΅ Π·Π°ΠΌΠ΅Π½ΠΈΡΡ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΡΠ²Π΅ΡΠ° Π½Π° RGB ΠΈΠ»ΠΈ ΡΠ΅ΡΡΠ½Π°Π΄ΡΠ°ΡΠ΅ΡΠΈΡΠ½ΡΠΉ ΡΠΎΡΠΌΠ°Ρ. ΠΡΠ»ΠΈ Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΡΠ²Π΅ΡΠ»ΠΎ-Π³ΠΎΠ»ΡΠ±ΠΎΠΉ ΡΠΎΠ½ Π² RGB-ΡΠΎΡΠΌΠ°ΡΠ΅, ΡΠΎΠ³Π΄Π° Π·Π°ΠΌΠ΅Π½ΠΈΡΠ΅ light="lightblue"
Π½Π° light=(173, 216, 230)
. ΠΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΠ΅ΡΡΠ½Π°Π΄ΡΠ°ΡΠ΅ΡΠΈΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ β ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΠ΅ light="lightblue"
Π½Π° light="#ADD8E6"
.
ΠΡ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°ΡΡ QR-ΠΊΠΎΠ΄ ΡΠΎ ΡΠ²Π΅ΡΠ»ΠΎ-Π³ΠΎΠ»ΡΠ±ΡΠΌ ΡΠΎΠ½ΠΎΠΌ, Π·Π°ΠΏΡΡΡΠΈΠ² ΡΠ°ΠΉΠ» lightblue_qrcode.py
Π² Π²Π°ΡΠ΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅:
Π‘ΡΠΏΠ΅Ρ! Π’Π΅ΠΏΠ΅ΡΡ Ρ Π²Π°Ρ Π΅ΡΡΡ ΠΊΡΠ°ΡΠΈΠ²ΡΠΉ ΡΠ²Π΅ΡΠ»ΠΎ-Π³ΠΎΠ»ΡΠ±ΠΎΠΉ ΡΠΎΠ½, Π° ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΡΠ΅Π»ΡΠ½Π°Ρ Π·ΠΎΠ½Π° ΡΡΠ°Π»Π° Π±ΠΎΠ»Π΅Π΅ Π·Π°ΠΌΠ΅ΡΠ½ΠΎΠΉ. ΠΠΎΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ°ΠΌΠΈ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎΠ³ΠΎ ΡΡΡΠ΄Π° ΠΈ ΠΎΡΡΠΊΠ°Π½ΠΈΡΡΠΉΡΠ΅ Π²Π°Ρ QR-ΠΊΠΎΠ΄ ΠΈΠ»ΠΈ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ QR-ΠΊΠΎΠ΄Π° Π½ΠΈΠΆΠ΅:
ΠΡ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΡΠ²Π΅ΡΠ° Π²ΡΠ΅Ρ
ΡΠ΅ΡΠ½ΡΡ
ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ QR-ΠΊΠΎΠ΄Π°. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π² ΠΌΠ΅ΡΠΎΠ΄Π΅ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π²ΡΠ±ΡΠ°Π½Π½ΠΎΠ³ΠΎ ΡΠ²Π΅ΡΠ° Π² ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ΅ dark
Π² ΠΌΠ΅ΡΠΎΠ΄Π΅ .save()
. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π² ΠΊΠΎΠ΄Π΅ Π½ΠΈΠΆΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ ΡΠ²Π΅Ρ ΡΠ΅ΠΌΠ½ΡΡ
ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ Π½Π° ΡΠ΅ΠΌΠ½ΠΎ-ΡΠΈΠ½ΠΈΠΉ:
ΠΠ°Ρ ΡΠΊΡΠΈΠΏΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π²ΡΠ΅Ρ
ΡΠ΅ΡΠ½ΡΡ
ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ Π² ΡΠ΅ΠΌΠ½ΠΎ-ΡΠΈΠ½ΠΈΠΉ ΡΠ²Π΅Ρ. ΠΠ»Ρ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΠΈ ΡΡΠΎΠ³ΠΎ QR-ΠΊΠΎΠ΄Π° Π·Π°ΠΏΡΡΡΠΈΡΠ΅ ΡΠ°ΠΉΠ» darkblue_qrcode.py
ΠΈΠ· Π²Π°ΡΠ΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ:
Π ΡΡΠΎΠΉ ΠΈΡΠ΅ΡΠ°ΡΠΈΠΈ QR-ΠΊΠΎΠ΄ Ρ Π·Π°ΡΠΈΡΡΠΎΠ²Π°Π½Π½ΡΠΌ ΡΠ΅ΠΊΡΡΠΎΠΌ "Hello, World"
, ΠΈΠΌΠ΅Π΅Ρ ΡΠ΅ΠΌΠ½ΠΎ-ΡΠΈΠ½ΠΈΠ΅ ΠΌΠΎΠ΄ΡΠ»ΠΈ Π²ΠΌΠ΅ΡΡΠΎ ΠΊΠ»Π°ΡΡΠΈΡΠ΅ΡΠΊΠΈΡ
ΡΠ΅ΡΠ½ΡΡ
:
Π ΡΡΠΎΡ ΡΠ°Π· ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΡΠ΅Π»ΡΠ½Π°Ρ Π·ΠΎΠ½Π° Π½Π΅ ΡΠ°ΠΊ Π·Π°ΠΌΠ΅ΡΠ½Π°, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΡΠΎΠ½ Π±Π΅Π»ΠΎΠ³ΠΎ ΡΠ²Π΅ΡΠ°. ΠΠ° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ²Π΅Π»ΠΈΡΠΈΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅, ΡΡΠΎΠ±Ρ ΡΠ²ΠΈΠ΄Π΅ΡΡ Π³ΡΠ°Π½ΠΈΡΡ. ΠΡ Π²ΡΠ΅Π³Π΄Π° ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΡΠ²Π΅Ρ ΡΠΎΠ½Π°, ΡΠΊΠ°Π·Π°Π² Π²ΡΠ±ΡΠ°Π½Π½ΡΠΉ ΡΠ²Π΅Ρ Π² Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ΅ light
Π² ΠΌΠ΅ΡΠΎΠ΄Π΅ .save()
.
ΠΡΠ΅ ΠΎΠ΄Π½Π° ΠΈΠ· Π½Π°ΡΡΡΠΎΠ΅ΠΊ Π² ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΈ Π²Π°ΡΠ΅Π³ΠΎ QR-ΠΊΠΎΠ΄Π° β ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΡΠ²Π΅ΡΠ° ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ Π·ΠΎΠ½Ρ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° quiet_zone
Π² ΠΌΠ΅ΡΠΎΠ΄ .save()
. ΠΠΈΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ²ΠΈΠ΄Π΅ΡΡ ΠΏΡΠΈΠΌΠ΅Ρ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΡΠ°ΠΉΠ»Π΅ darkblue_qrcode.py
ΠΌΠ΅Π½ΡΡΡ ΡΠ²Π΅Ρ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π° Π²ΠΎΠΊΡΡΠ³ QR-ΠΊΠΎΠ΄Π° Ρ Π±Π΅Π»ΠΎΠ³ΠΎ Π½Π° Π±ΠΎΡΠ΄ΠΎΠ²ΡΠΉ:
ΠΡΠ»ΠΈ Π²Ρ ΡΠ½ΠΎΠ²Π° Π·Π°ΠΏΡΡΡΠΈΡΠ΅ ΡΠ°ΠΉΠ» darkblue_qrcode.py
ΠΈΠ· Π²Π°ΡΠ΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ, ΡΠΎΠ³Π΄Π° Π±ΡΠ΄Π΅Ρ ΡΠΎΠ·Π΄Π°Π½ QR-ΠΊΠΎΠ΄ Ρ Π±ΠΎΡΠ΄ΠΎΠ²ΡΠΌΠΈ Π³ΡΠ°Π½ΠΈΡΠ°ΠΌΠΈ:
ΠΠΎ ΡΠΈΡ
ΠΏΠΎΡ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ light
ΠΈ dark
, ΡΡΠΎΠ±Ρ ΠΌΠ΅Π½ΡΡΡ ΡΠ²Π΅ΡΠ° Π²ΡΠ΅Ρ
Π±Π΅Π»ΡΡ
ΠΈ ΡΠ΅ΡΠ½ΡΡ
ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ QR-ΠΊΠΎΠ΄Π°. ΠΠ΄Π½Π°ΠΊΠΎ Π½Π΅ Π²ΡΠ΅ ΠΌΠΎΠ΄ΡΠ»ΠΈ QR-ΠΊΠΎΠ΄Π° ΡΠΎΠ΄Π΅ΡΠΆΠ°Ρ Π·Π°ΡΠΈΡΡΠΎΠ²Π°Π½Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅. ΠΡΠ»ΠΈ Π²Ρ Ρ
ΠΎΡΠΈΡΠ΅ ΠΏΠΎΠ²ΡΡΠΈΡΡ ΡΡΠΎΠ²Π΅Π½Ρ Π²Π°ΡΠΈΡ
QR-ΠΊΠΎΠ΄ΠΎΠ², ΡΠΎ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΡΠ²Π΅Ρ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ Π΄Π°Π½Π½ΡΡ
. ΠΠΎΠ΄ΡΠ»ΠΈ Π΄Π°Π½Π½ΡΡ
β ΡΡΠΎ ΡΠ΅ΡΠ½ΠΎ-Π±Π΅Π»ΡΠ΅ Π±Π»ΠΎΠΊΠΈ, Π² ΠΊΠΎΡΠΎΡΡΡ
, ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎ, ΠΈ Ρ
ΡΠ°Π½ΡΡΡΡ Π΄Π°Π½Π½ΡΠ΅.
Π§ΡΠΎΠ±Ρ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΡΠ²Π΅Ρ ΡΠ΅ΠΌΠ½ΡΡ
ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ Π΄Π°Π½Π½ΡΡ
QR-ΠΊΠΎΠ΄Π°, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π·Π°Π΄Π°ΡΡ Π²ΡΠ±ΡΠ°Π½Π½ΡΠΉ ΡΠ²Π΅Ρ Π΄Π»Ρ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ° data_dark
Π² ΠΌΠ΅ΡΠΎΠ΄Π΅ .save()
. Π ΠΏΡΠΈΠΌΠ΅ΡΡ, Π΅ΡΠ»ΠΈ Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΡΠ²Π΅Ρ ΡΠ΅ΠΌΠ½ΡΡ
ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ Π΄Π°Π½Π½ΡΡ
Π½Π° Π·Π΅Π»Π΅Π½ΡΠΉ, ΡΠΎΠ³Π΄Π° Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ Python-ΡΠΊΡΠΈΠΏΡ green_datamodules_qrcode.py
ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ data_dark=green
Π² ΠΌΠ΅ΡΠΎΠ΄Π΅ .save()
:
ΠΠΎΠ±Π°Π²ΠΈΠ² Π°ΡΠ³ΡΠΌΠ΅Π½Ρ data_dark
Π² ΠΌΠ΅ΡΠΎΠ΄ .save()
ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠ² Π΅Π³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ green
, Π²Ρ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΠ΅ ΡΠ²Π΅Ρ ΡΠ΅ΠΌΠ½ΡΡ
ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ Π΄Π°Π½Π½ΡΡ
Π½Π° Π·Π΅Π»Π΅Π½ΡΠΉ. ΠΡ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΡΠ²Π΅Ρ Π²ΡΠ΅Ρ
ΡΠ΅ΠΌΠ½ΡΡ
ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ, Π½Π΅ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΡ
Π΄Π°Π½Π½ΡΡ
, Π½Π° ΡΠ΅ΠΌΠ½ΠΎ-ΡΠΈΠ½ΠΈΠΉ. Π‘Π΄Π΅Π»Π°ΠΉΡΠ΅ ΡΡΠΎ, Π΄ΠΎΠ±Π°Π²ΠΈΠ² dark="darkblue"
. Π ΠΏΡΠΎΡΠ΅ΡΡΠ΅ ΡΠ°Π±ΠΎΡΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΡΠ²Π΅ΡΠ»ΠΎ-Π³ΠΎΠ»ΡΠ±ΠΎΠΉ ΡΠΎΠ½, Π΄ΠΎΠ±Π°Π²ΠΈΠ² light="lightblue"
Π² ΠΌΠ΅ΡΠΎΠ΄ .save()
.
ΠΠ»Ρ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΠΈ QR-ΠΊΠΎΠ΄Π° Ρ ΡΠ΅ΠΌΠ½ΡΠΌΠΈ ΠΌΠΎΠ΄ΡΠ»ΡΠΌΠΈ Π΄Π°Π½Π½ΡΡ
Π·Π΅Π»Π΅Π½ΠΎΠ³ΠΎ ΡΠ²Π΅ΡΠ°, Π·Π°ΠΏΡΡΡΠΈΡΠ΅ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅ ΡΠ°ΠΉΠ» green_datadark_qrcode.py
:
Π‘ΡΠΏΠ΅Ρ, ΡΠ΅ΠΏΠ΅ΡΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ, Π² ΠΊΠ°ΠΊΠΈΡ ΠΌΠΎΠ΄ΡΠ»ΡΡ Π·Π°ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½Ρ Π΄Π°Π½Π½ΡΠ΅! ΠΠ½ΠΈ Π²ΡΠ΄Π΅Π»ΡΡΡΡΡ ΡΡΠΊΠΈΠΌ Π·Π΅Π»Π΅Π½ΡΠΌ ΡΠ²Π΅ΡΠΎΠΌ, ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ²ΠΈΠ΄Π΅ΡΡ Π½ΠΈΠΆΠ΅:
ΠΠ»Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠ²Π΅ΡΠ° Π±Π΅Π»ΡΡ
ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ Π΄Π°Π½Π½ΡΡ
Π²Ρ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π°ΡΠ³ΡΠΌΠ΅Π½Ρ data_light
Ρ Π²ΡΠ±ΡΠ°Π½Π½ΡΠΌ ΡΠ²Π΅ΡΠΎΠΌ Π² ΠΌΠ΅ΡΠΎΠ΄ .save()
. ΠΠ»Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠ²Π΅ΡΠ° ΡΠ²Π΅ΡΠ»ΡΡ
ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ Π΄Π°Π½Π½ΡΡ
Π½Π° ΡΠ²Π΅ΡΠ»ΠΎ-Π·Π΅Π»Π΅Π½ΡΠΉ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π°ΡΠ³ΡΠΌΠ΅Π½Ρ data_light="lightgreen"
:
ΠΡΠ»ΠΈ Π² ΠΌΠ΅ΡΠΎΠ΄ .save()
Π²Π½Π΅ΡΡΠΈ Π°ΡΠ³ΡΠΌΠ΅Π½Ρ data_light
ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π΅Π³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ lightgreen
, ΡΠΎ ΡΠ²Π΅ΡΠ° ΡΠ²Π΅ΡΠ»ΡΡ
ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ Π΄Π°Π½Π½ΡΡ
ΠΈΠ·ΠΌΠ΅Π½ΡΡΡΡ Π½Π° ΡΠ²Π΅ΡΠ»ΠΎ-Π·Π΅Π»Π΅Π½ΡΠ΅. ΠΡΠ»ΠΈ ΡΠ½ΠΎΠ²Π° Π·Π°ΠΏΡΡΡΠΈΡΡ ΠΈΠ· ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ ΡΠ°ΠΉΠ» green_datamodules_qrcode.py
, ΡΠΎΠ³Π΄Π° Π±ΡΠ΄Π΅Ρ ΡΠΎΠ·Π΄Π°Π½ QR-ΠΊΠΎΠ΄ Ρ ΡΠ΅ΠΌΠ½ΠΎ-ΡΠΈΠ½ΠΈΠΌΠΈ, Π·Π΅Π»Π΅Π½ΡΠΌΠΈ ΠΈ ΡΠ²Π΅ΡΠ»ΠΎ-Π·Π΅Π»Π΅Π½ΡΠΌΠΈ ΠΌΠΎΠ΄ΡΠ»ΡΠΌΠΈ Π΄Π°Π½Π½ΡΡ
Π½Π° ΡΠ²Π΅ΡΠ»ΠΎ-Π³ΠΎΠ»ΡΠ±ΠΎΠΌ ΡΠΎΠ½Π΅:
Π’Π΅ΠΏΠ΅ΡΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΡΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°ΡΡ ΡΠ²ΠΎΠΉ ΠΊΡΠ°ΡΠΎΡΠ½ΡΠΉ QR-ΠΊΠΎΠ΄ "Hello, World"
ΠΈΠ»ΠΈ ΠΎΡΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°ΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ QR-ΠΊΠΎΠ΄Π° Π²ΡΡΠ΅.
Π ΡΡΠΎΠΌ ΡΠ°Π·Π΄Π΅Π»Π΅ Π²Ρ ΡΠ·Π½Π°Π»ΠΈ, ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΌΠ΅ΡΠΎΠ΄ .save()
Π΄Π»Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠ²Π΅ΡΠΎΠ² ΡΠ²Π΅ΡΠ»ΠΎΠΉ ΠΈ ΡΠ΅ΠΌΠ½ΠΎΠΉ Π±Π»ΠΎΠΊΠΎΠ² QR-ΠΊΠΎΠ΄ΠΎΠ². ΠΠΎΠΈΠ³ΡΠ°ΠΉΡΠ΅ Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΌΠΈ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΡΠΌΠΈ ΡΠ²Π΅ΡΠΎΠ², Π° ΠΏΠΎΠ»Π½ΡΠΉ ΡΠΏΠΈΡΠΎΠΊ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠ°Π·Π½ΠΎΡΠ²Π΅ΡΠ½ΡΡ
QR-ΠΊΠΎΠ΄ΠΎΠ², ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ Π² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ Segno.
ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΡΠ²Π΅ΡΠΎΠ² ΡΠΎΠ½Π°, ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ Π·ΠΎΠ½Ρ ΠΈ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ QR-ΠΊΠΎΠ΄Π° β ΡΡΠΎ ΠΎΡΠ΅Π½Ρ Π·Π΄ΠΎΡΠΎΠ²ΠΎ, Π½ΠΎ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ°ΠΊΠΆΠ΅ Π²ΡΠ°ΡΠ°ΡΡ QR-ΠΊΠΎΠ΄Ρ Π΄Π»Ρ ΠΏΡΠΈΠ΄Π°Π½ΠΈΡ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ Π²ΠΈΠ΄Π°. Π ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ ΡΠ°Π·Π΄Π΅Π»Π΅ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π° Π²Ρ ΡΠ·Π½Π°Π΅ΡΠ΅, ΠΊΠ°ΠΊ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ ΠΌΠ΅ΡΠΎΠ΄ .to_pil()
Π΄Π»Ρ Π²ΡΠ°ΡΠ΅Π½ΠΈΡ QR-ΠΊΠΎΠ΄ΠΎΠ².
ΠΡΠ°ΡΠ΅Π½ΠΈΠ΅ QR-ΠΊΠΎΠ΄Π°
Π‘ ΠΏΠΎΠΌΠΎΡΡΡ Segno ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΏΡΠ°Π²Π»ΡΡΡ Π²Π°ΡΠΈΠΌ QR-ΠΊΠΎΠ΄ΠΎΠΌ, ΠΏΠΎΠ²ΠΎΡΠ°ΡΠΈΠ²Π°Ρ Π΅Π³ΠΎ ΠΈΠ»ΠΈ Π΄ΠΎΠ±Π°Π²Π»ΡΡ Π°Π½ΠΈΠΌΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΡΠΎΠ½. ΠΡΠ»ΠΈ Π²Π°ΠΌ Π½ΡΠ°Π²ΠΈΡΡΡ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ QR-ΠΊΠΎΠ΄Ρ Ρ ΠΏΡΠΎΠ΄Π²ΠΈΠ½ΡΡΡΠΌΠΈ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΌΠΈ ΡΡΠ½ΠΊΡΠΈΡΠΌΠΈ, ΡΠΎ Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ qrcode-artistic
ΠΈ pillow
:
ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ ΡΡΠΈΠΌ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΠΌ, ΠΏΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ QR-ΠΊΠΎΠ΄Π° Ρ ΠΏΠΎΠΌΠΎΡΡΡ make_qr()
Π²Ρ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π²Π° Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ
ΠΌΠ΅ΡΠΎΠ΄Π° β .to_pil()
ΠΈ .to_artistic()
. Π ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ Π²Π°Ρ QR-ΠΊΠΎΠ΄ Π±ΡΠ΄Π΅Ρ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ Π² Pillow Image
, ΠΊΠΎΡΠΎΡΡΠΉ Π²Ρ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ Π²ΡΠ°ΡΠ΅Π½ΠΈΡ QR-ΠΊΠΎΠ΄Π° ΠΈΠ»ΠΈ Π·Π°ΠΌΠ΅Π½Ρ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΠΎΠ½Π° Π½Π° Π°Π½ΠΈΠΌΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ.
ΠΡΠ»ΠΈ Π²Ρ Ρ
ΠΎΡΠΈΡΠ΅ ΠΏΠΎΠ²Π΅ΡΠ½ΡΡΡ QR-ΠΊΠΎΠ΄, ΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄ .to_pil()
ΠΈ ΡΠΊΠ°ΠΆΠΈΡΠ΅ ΡΠ³ΠΎΠ» ΠΏΠΎΠ²ΠΎΡΠΎΡΠ° Π² Π³ΡΠ°Π΄ΡΡΠ°Ρ
. ΠΠΈΠΆΠ΅ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½ Π·Π°ΡΠΈΡΡΠΎΠ²Π°Π½Π½ΡΠΉ ΡΠ΅ΠΊΡΡ "Hello, World"
, Π½ΠΎ ΠΏΡΠΈ ΡΡΠΎΠΌ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠ²Π΅ΡΠ½ΡΡΡ ΡΠ²ΠΎΠΉ QR-ΠΊΠΎΠ΄ Π½Π° 45 Π³ΡΠ°Π΄ΡΡΠΎΠ²:
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π·Π°Π΄Π°ΡΡ ΡΠ³ΠΎΠ» ΠΏΠΎΠ²ΠΎΡΠΎΡΠ° Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΌΠ΅ΡΠΎΠ΄Π° .to_pil().rotate()
. ΠΠ°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π²ΡΠ°ΡΠ΅Π½ΠΈΡ β ΠΏΡΠΎΡΠΈΠ² ΡΠ°ΡΠΎΠ²ΠΎΠΉ ΡΡΡΠ΅Π»ΠΊΠΈ. ΠΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΌΠ΅ΡΠΎΠ΄ .to_pil()
ΠΈ ΡΠΊΠ°Π·Π°Π² ΡΠ³ΠΎΠ» ΠΏΠΎΠ²ΠΎΡΠΎΡΠ° Π² ΠΌΠ΅ΡΠΎΠ΄Π΅ .rotate()
, Π²Ρ Π½Π°ΠΏΠΈΡΠ°Π»ΠΈ ΠΊΠΎΠ΄ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠ΅ΡΠ½ΠΎ-Π±Π΅Π»ΠΎΠ³ΠΎ QR-ΠΊΠΎΠ΄Π°, ΠΏΠΎΠ²Π΅ΡΠ½ΡΡΠΎΠ³ΠΎ Π½Π° 45 Π³ΡΠ°Π΄ΡΡΠΎΠ². Π Π½Π°ΠΊΠΎΠ½Π΅Ρ, Π²Ρ ΠΏΡΠΈΠΌΠ΅Π½ΠΈΠ»ΠΈ ΠΌΠ΅ΡΠΎΠ΄ .save()
ΠΊ ΡΠ²ΠΎΠ΅ΠΉ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ qrcode_rotated
.
Π’Π΅ΠΏΠ΅ΡΡ ΠΏΡΠΈΡΠ»ΠΎ Π²ΡΠ΅ΠΌΡ Π·Π°ΠΏΡΡΡΠΈΡΡ rotated_qrcode.py
ΠΈΠ· ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ ΠΈ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ, ΡΡΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡΡ:
ΠΠ½ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΌΠ°Π»ΠΎΠ²Π°Ρ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π²Ρ Π½Π΅ ΠΎΡΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°Π»ΠΈ ΡΠ°Π·ΠΌΠ΅Ρ (ΠΏΠΎΠΊΠ° ΡΡΠΎ), Π½ΠΎ ΡΠ΅ΠΏΠ΅ΡΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΡΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°ΡΡ Π²Π°ΡΠ΅ ΠΏΠΎΠ²Π΅ΡΠ½ΡΡΠΎΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ QR-ΠΊΠΎΠ΄Π° ΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ QR-ΠΊΠΎΠ΄Π° Π½ΠΈΠΆΠ΅:
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π·Π°ΠΌΠ΅ΡΠΈΡΡ, ΡΡΠΎ QR-ΠΊΠΎΠ΄ ΡΡΠ΅ΡΠ΅Π½. Π ΡΠ°ΡΡΠ½ΠΎΡΡΠΈ, ΠΎΠ±ΡΠ΅Π·Π°Π½Ρ ΡΠ³Π»Ρ ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ Π·ΠΎΠ½Ρ. Π§ΡΠΎΠ±Ρ Π·Π°ΠΌΠ΅ΡΠΈΡΡ ΡΡΠΎ, Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΡΠ²Π΅Π»ΠΈΡΠΈΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅. ΠΡΠ»ΠΈ Π²Ρ Ρ
ΠΎΡΠΈΡΠ΅, ΡΡΠΎΠ±Ρ ΠΏΡΠΈ Π²ΡΠ°ΡΠ΅Π½ΠΈΠΈ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΠΎΡΡΠ°Π²Π°Π»ΠΎΡΡ ΡΠ΅Π»ΡΠΌ, ΡΠΎ Π² ΠΌΠ΅ΡΠΎΠ΄Π΅ .to_pil().rotate()
ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π°ΡΠ³ΡΠΌΠ΅Π½Ρ expand
ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π΅Π³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ True
. ΠΠΎΠ΄ Π½ΠΈΠΆΠ΅ ΠΏΠΎΠ²Π΅ΡΠ½Π΅Ρ QR-ΠΊΠΎΠ΄ Π½Π° ΡΠΎΡΠΎΠΊ ΠΏΡΡΡ Π³ΡΠ°Π΄ΡΡΠΎΠ² ΠΈ ΡΠ°Π·Π²Π΅ΡΠ½Π΅Ρ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π½Π° Π²Π΅ΡΡ ΠΊΠΎΠ΄:
ΠΠ΄Π΅ΡΡ Π²Ρ ΡΠΊΠ°Π·Π°Π»ΠΈ ΡΠ³ΠΎΠ» ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠ»ΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ expand=True
Π² ΠΌΠ΅ΡΠΎΠ΄Π΅ to_pil().rotate()
Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠ΅ΡΠ½ΠΎ-Π±Π΅Π»ΠΎΠ³ΠΎ QR-ΠΊΠΎΠ΄Π°, ΠΏΠΎΠ²Π΅ΡΠ½ΡΡΠΎΠ³ΠΎ Π½Π° 45 Π³ΡΠ°Π΄ΡΡΠΎΠ² ΠΈ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½Π½ΠΎΠ³ΠΎ Π² ΡΠ°Π·ΠΌΠ΅ΡΠ°Ρ
. ΠΠ°ΡΠ΅ΠΌ Π²Ρ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄ .save()
ΠΊ Π²Π°ΡΠ΅ΠΉ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ qrcode_rotated
ΠΈ ΠΏΠ΅ΡΠ΅Π΄Π°Π΅ΡΠ΅ Π΅ΠΉ ΠΈΠΌΡ ΡΠ°ΠΉΠ»Π° Ρ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ΠΌ.
ΠΠ»Ρ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΠΈ ΡΡΠΎΠ³ΠΎ QR-ΠΊΠΎΠ΄Π° ΡΠ½ΠΎΠ²Π° Π·Π°ΠΏΡΡΡΠΈΡΠ΅ ΠΈΠ· ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ ΡΠ°ΠΉΠ» rotated_qrcode.py
:
ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ Π·Π°Ρ
ΠΎΡΠΈΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΡΠ°Π·ΠΌΠ΅Ρ ΠΏΠΎΠ²Π΅ΡΠ½ΡΡΠΎΠ³ΠΎ QR-ΠΊΠΎΠ΄Π°, ΠΊΠ°ΠΊ Π² scaled_qrcode.py
ΠΈΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΡΠ²Π΅Ρ ΡΠΎΠ½Π° ΠΊΠ°ΠΊ Π² lightblue_qrcode.py
. ΠΠ΄Π½Π°ΠΊΠΎ Π΅ΡΠ»ΠΈ Π²Ρ Ρ
ΠΎΡΠΈΡΠ΅ ΠΎΡΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠΎΠ²Π΅ΡΠ½ΡΡΡΠΉ QR-ΠΊΠΎΠ΄, ΡΠΎ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ° scale
ΠΈΠ»ΠΈ light
Π² ΠΌΠ΅ΡΠΎΠ΄ .save()
Π½Π΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ ΡΠ°Π·ΠΌΠ΅Ρ ΠΈΠ»ΠΈ ΡΠ²Π΅Ρ ΡΠΎΠ½Π° QR-ΠΊΠΎΠ΄Π°. Π₯ΠΎΡΡ Π²ΡΠ΅ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΠΏΡΠ΅ΠΆΠ½ΠΈΠΌ, Π½Π° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅ Π²Ρ Π²ΡΠ·ΡΠ²Π°Π΅ΡΠ΅ .save()
Π½Π° PIL, Π° Π½Π΅ Π½Π° QR-ΠΊΠΎΠ΄.
Π’Π°ΠΊ ΠΊΠ°ΠΊ Π΄Π»Ρ ΠΏΠΎΠ²ΠΎΡΠΎΡΠ° QR-ΠΊΠΎΠ΄Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΌΠ΅ΡΠΎΠ΄ .to_pil()
, Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ, ΠΈΠ·ΠΌΠ΅Π½ΡΡΡΠΈΠ΅ ΡΠ°Π·ΠΌΠ΅Ρ ΠΈ ΡΠ²Π΅Ρ QR-ΠΊΠΎΠ΄Π° Π² .to_pil()
. ΠΠΈΠΆΠ΅ Π±ΡΠ» Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ ΠΊΠΎΡΡΡΠΈΡΠΈΠ΅Π½Ρ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΡΠ΅ΠΌΠΎΡΡΠΈ Π² Π·Π½Π°ΡΠ΅Π½ΠΈΠΈ 5 ΠΊ QR-ΠΊΠΎΠ΄Ρ ΠΈ ΡΠ²Π΅Ρ ΡΠ΅ΠΌΠ½ΡΡ
ΡΠ°ΡΡΠ΅ΠΉ QR-ΠΊΠΎΠ΄Π° ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ»ΡΡ Π½Π° Π·Π΅Π»Π΅Π½ΡΠΉ, Π° ΡΠ²Π΅ΡΠ»ΡΡ
β Π½Π° ΡΠ²Π΅ΡΠ»ΠΎ-Π³ΠΎΠ»ΡΠ±ΠΎΠΉ:
ΠΠ»Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠ°Π·ΠΌΠ΅ΡΠ° QR-ΠΊΠΎΠ΄Π° Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π·Π°Π΄Π°ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π² Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ΅ scale. ΠΠ»Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠ²Π΅ΡΠ° ΡΠ²Π΅ΡΠ»ΡΡ
ΠΈ ΡΠ΅ΠΌΠ½ΡΡ
Π±Π»ΠΎΠΊΠΎΠ² QR-ΠΊΠΎΠ΄Π° Π² ΠΌΠ΅ΡΠΎΠ΄Π΅ .to_pil()
Π²Π²ΠΎΠ΄ΡΡΡΡ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΡ light
ΠΈ dark
.
ΠΡ ΠΌΠΎΠ³Π»ΠΈ Π·Π°ΠΌΠ΅ΡΠΈΡΡ, ΡΡΠΎ ΠΏΠΎΠ²Π΅ΡΠ½ΡΡΡΠΉ QR-ΠΊΠΎΠ΄ ΠΈΠΌΠ΅Π΅Ρ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΠΏΡΡΡΠΎΠ΅ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ Π²Π½Π΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ Π·ΠΎΠ½Ρ Π²ΠΎΠΊΡΡΠ³ QR-ΠΊΠΎΠ΄Π°. ΠΡΠΎΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ ΡΠΎΠ½ Π½Π°ΠΊΠ»Π°Π΄ΡΠ²Π°Π΅ΡΡΡ Π½Π° ΠΏΠΎΠ²Π΅ΡΠ½ΡΡΡΠΉ QR-ΠΊΠΎΠ΄. Π§ΡΠΎΠ±Ρ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΡΠ²Π΅ΡΠ° ΡΠ΅ΠΌΠ½ΡΡ
ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ Π³ΡΠ°Π½ΠΈΡΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΡΠΎΠΆΠ΅ ΡΠ΅ΡΠ½Π°Ρ, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ° dark Π² ΠΌΠ΅ΡΠΎΠ΄Π΅ .to_pil()
, Π·Π°Π΄Π°Π² Π»ΡΠ±ΠΎΠΉ Π΄ΡΡΠ³ΠΎΠΉ ΡΠ²Π΅Ρ.
Π§ΡΠΎΠ±Ρ ΡΠ³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°ΡΡ QR-ΠΊΠΎΠ΄ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠΌ 5x5 ΠΏΠΈΠΊΡΠ΅Π»Π΅ΠΉ ΡΠΎ ΡΠ²Π΅ΡΠ»ΠΎ-Π³ΠΎΠ»ΡΠ±ΡΠΌ ΡΠΎΠ½ΠΎΠΌ, Π·Π΅Π»Π΅Π½ΡΠΌΠΈ ΡΠ΅ΠΌΠ½ΡΠΌΠΈ ΠΌΠΎΠ΄ΡΠ»ΡΠΌΠΈ ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΌ ΡΠΎΠ½ΠΎΠΌ, Π·Π°ΠΏΡΡΡΠΈΡΠ΅ ΠΈΠ· ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ ΡΠ°ΠΉΠ» formatted_rotated_qrcode.py
:
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΡΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°ΡΡ ΠΎΡΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΠΈ ΠΏΠΎΠ²Π΅ΡΠ½ΡΡΡΠΉ QR-ΠΊΠΎΠ΄ ΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π½ΠΈΠΆΠ΅:
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΡΠ²Π΅Ρ ΡΠΎΠ½Π° QR-ΠΊΠΎΠ΄Π°, Π½ΠΎ ΠΈ Π·Π°ΠΌΠ΅Π½ΠΈΡΡ Π΅Π³ΠΎ Π½Π° Π°Π½ΠΈΠΌΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅. Π Π·Π°ΠΊΠ»ΡΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠΌ ΡΠ°Π·Π΄Π΅Π»Π΅ ΡΡΠΎΠ³ΠΎ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π° Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄ .to_artistic(), ΡΡΠΎΠ±Ρ Π·Π°ΠΌΠ΅Π½ΠΈΡΡ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠΎΠ½ Π½Π° Π°Π½ΠΈΠΌΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ.
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π°Π½ΠΈΠΌΠΈΡΠΎΠ²Π°Π½Π½ΡΡ QR-ΠΊΠΎΠ΄ΠΎΠ²
Π Π·Π°ΠΊΠ»ΡΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠΌ ΡΠ°Π·Π΄Π΅Π»Π΅ ΡΡΠΎΠ³ΠΎ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π° Π²Ρ ΡΠΎΠ·Π΄Π°Π΄ΠΈΡΠ΅ ΡΠ°ΠΌΡΠΉ ΠΊΡΠ°ΡΠΈΠ²ΡΠΉ QR-ΠΊΠΎΠ΄, Π·Π°ΠΌΠ΅Π½ΠΈΠ² ΡΡΠ°ΡΠΈΡΠ½ΡΠΉ ΡΠΎΠ½ Π°Π½ΠΈΠΌΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ GIF-ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΡΡΠ°ΠΏΠΎΠ², Π½ΠΎ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ ΡΠΎΠ³ΠΎ ΡΡΠΎΠΈΡ.
ΠΡΠ»ΠΈ Π²Ρ Ρ
ΠΎΡΠΈΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ QR-ΠΊΠΎΠ΄ Ρ Π°Π½ΠΈΠΌΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ Π½Π° ΡΠΎΠ½Π΅, ΡΠΎ ΠΏΠ΅ΡΠ²ΠΎΠ΅, ΡΡΠΎ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ β ΡΡΠΎ ΡΠΎΠ·Π΄Π°ΡΡ Python-ΡΠ°ΠΉΠ» ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ animated_qrcode.py
. Π ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Π½ΠΈΠΆΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΎ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ QR-ΠΊΠΎΠ΄Π° ΡΠΎ ΡΡΡΠ»ΠΊΠΎΠΉ Π½Π° YouTube Π½Π° ΠΏΠ΅ΡΠ½Ρ Smells like Teen Spirit Π³ΡΡΠΏΠΏΡ Nirvana:
ΠΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΡΠΎ Π½Π°ΠΏΠΈΡΠ°Π»ΠΈ ΠΊΠΎΠ΄ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ QR-ΠΊΠΎΠ΄Π° Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠ½ΠΊΡΠΈΠΈ make_qr()
. ΠΡΠΎΡ QR-ΠΊΠΎΠ΄ ΡΡΡΠ»Π°Π΅ΡΡΡ Π½Π° ΠΊΠ»Π°ΡΡΠΈΡΠ΅ΡΠΊΡΡ ΠΏΠ΅ΡΠ½Ρ Smells like Teen Spirit ΠΈΠ»ΠΈ ΡΠΎΠΊΡΠ°ΡΠ΅Π½Π½ΠΎ SLTS Π½Π° YouTube. ΠΡ ΡΠΎΡ
ΡΠ°Π½ΡΠ΅ΡΠ΅ ΡΡΠΎΡ QR-ΠΊΠΎΠ΄ Π² ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ slts_qrcode
.
ΠΡΠΎΡΠΎΠΉ ΡΠ°Π³, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ β ΡΡΠΎ ΡΠΊΠ°Π·Π°ΡΡ ΠΏΡΡΡ ΠΊ ΡΠ°ΠΉΠ»Ρ Π°Π½ΠΈΠΌΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ. ΠΡΠ»ΠΈ Π²Ρ Ρ
ΠΎΡΠΈΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π°Π½ΠΈΠΌΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠ· URL-Π°Π΄ΡΠ΅ΡΠ°, ΡΠΎ Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ Π΅Π³ΠΎ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠ½ΠΊΡΠΈΡ urlopen()
ΠΈΠ· Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ urllib
. Π ΠΏΡΠΎΡΠΈΠ²Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΡΠΎΡ ΡΠ°Π³ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΠΏΡΡΡΠΈΡΡ:
Π€ΡΠ½ΠΊΡΠΈΡ urlopen()
ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ URL-Π°Π΄ΡΠ΅ΡΠΎΠ², ΠΈ Π² Π΄Π°Π½Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅, Π²Ρ ΠΏΠ΅ΡΠ΅Π΄Π°Π΅ΡΠ΅ ΡΡΡΠ»ΠΊΡ Π½Π° GIF-ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΠΡΡΡΠ° ΠΠΎΠ±Π΅ΠΉΠ½Π°, ΡΠ²Π»Π΅ΡΠ΅Π½Π½ΠΎ ΠΈΠ³ΡΠ°ΡΡΠ΅Π³ΠΎ Π½Π° Π³ΠΈΡΠ°ΡΠ΅. ΠΡ ΡΠΎΡ
ΡΠ°Π½ΡΠ΅ΡΠ΅ Π΅Π΅ Π² ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ nirvana_url
. ΠΡΠΎΡ ΡΠ°Π³ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΠΏΡΡΡΠΈΡΡ, Π΅ΡΠ»ΠΈ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅.
ΠΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ ΡΠ°Π³ β ΡΡΠΎ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΌΠ΅ΡΠΎΠ΄Π° .to_artistic()
ΠΊ QR-ΠΊΠΎΠ΄Ρ. Π ΠΈΡΠΎΠ³Π΅ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠΎΠ½ Π±ΡΠ΄Π΅Ρ Π·Π°ΠΌΠ΅Π½Π΅Π½ Π½Π° Π°Π½ΠΈΠΌΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ. ΠΠΈΠΆΠ΅ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½ ΠΊΠΎΠ΄, ΠΊΠΎΡΠΎΡΡΠΉ Π³Π΅Π½Π΅ΡΠΈΡΡΠ΅Ρ QR-ΠΊΠΎΠ΄ Ρ ΠΌΠΎΠ΄ΡΠ»ΡΠΌΠΈ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠΌ 5x5 ΠΏΠΈΠΊΡΠ΅Π»Π΅ΠΉ, ΡΠΎΠ½ΠΎΠΌ Π΄Π»Ρ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΡΠ»ΡΠΆΠΈΡ Π°Π½ΠΈΠΌΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΠΡΡΡΠ° ΠΠΎΠ±Π΅ΠΉΠ½Π°, ΠΌΠ°ΡΡΡΠ΅Π³ΠΎ Π³ΠΎΠ»ΠΎΠ²ΠΎΠΉ:
Π ΠΌΠ΅ΡΠΎΠ΄Π΅ .to_artistic()
Π±ΡΠ» Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ Π°ΡΠ³ΡΠΌΠ΅Π½Ρ background
, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΈΠ»ΠΈ ΠΏΡΡΡ ΠΊ ΡΠ°ΠΉΠ»Ρ Ρ Π°Π½ΠΈΠΌΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ, ΠΈΠ»ΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ, Ρ
ΡΠ°Π½ΡΡΡΡ URL-Π°Π΄ΡΠ΅Ρ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ. Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ° target
ΡΠΊΠ°Π·Π°Π½ ΠΏΡΡΡ ΠΊ ΡΠ°ΠΉΠ»Ρ ΠΈ ΠΈΠΌΡ ΡΠ°ΠΉΠ»Π° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ QR-ΠΊΠΎΠ΄Π°. ΠΡΠ»ΠΈ Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΡΠ°Π·ΠΌΠ΅Ρ QR-ΠΊΠΎΠ΄Π°, ΡΠΎ ΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ, ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠ² Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ° scale
Π² ΠΌΠ΅ΡΠΎΠ΄Π΅ .to_artistic()
.
ΠΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ Ρ
ΡΠ΄ΠΎΠΆΠ΅ΡΡΠ²Π΅Π½Π½ΡΡ
QR-ΠΊΠΎΠ΄ΠΎΠ², ΡΠ°ΠΊΠΈΡ
ΠΊΠ°ΠΊ ΠΏΠΎΠ²Π΅ΡΠ½ΡΡΡΠΉ QR-ΠΊΠΎΠ΄ Π² formatted_rotated_qrcode.py
ΠΈ QR-ΠΊΠΎΠ΄ Ρ Π°Π½ΠΈΠΌΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌ ΡΠΎΠ½ΠΎΠΌ, Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄ .save()
Π΄Π»Ρ ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ°Π·ΠΌΠ΅ΡΠ° ΠΈΠ»ΠΈ ΡΠ²Π΅ΡΠΎΠ² QR-ΠΊΠΎΠ΄Π°. ΠΡΠ»ΠΈ Π²Ρ Ρ
ΠΎΡΠΈΡΠ΅ ΠΎΡΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°ΡΡ Ρ
ΡΠ΄ΠΎΠΆΠ΅ΡΡΠ²Π΅Π½Π½ΡΠΉ QR-ΠΊΠΎΠ΄, ΡΠΎ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π·Π°Π΄Π°ΡΡ Π½ΡΠΆΠ½ΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ Π² .to_artistic()
.
ΠΠ»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ GIF-ΡΠ°ΠΉΠ»Π° Ρ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ animated_qrcode.gif
Π² ΡΠΎΠΉ ΠΆΠ΅ ΠΏΠ°ΠΏΠΊΠ΅, Π³Π΄Π΅ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΊΠΎΠ΄, Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅ Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΡΡ ΡΠ°ΠΉΠ» animated_qrcode.py
:
ΠΡΠΈΠΌΠ΅Π½ΡΡ ΠΌΠ΅ΡΠΎΠ΄ .to_artistic()
ΠΊ QR-ΠΊΠΎΠ΄Ρ ΠΈ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Ρ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ background URL-Π°Π΄ΡΠ΅Ρ Π°Π½ΠΈΠΌΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ, Π²Ρ ΡΠΎΠ·Π΄Π°Π΅ΡΠ΅ QR-ΠΊΠΎΠ΄, Π½Π° ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ ΠΌΠ΅ΡΡΡΠΈΠΉΡΡ ΠΡΡΡ ΠΠΎΠ±Π΅ΠΉΠ½:
ΠΡΠ»ΠΈ ΠΎΡΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°ΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π²ΡΡΠ΅ ΠΈΠ»ΠΈ Π²Π°ΡΠ΅ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ QR-ΠΊΠΎΠ΄Π°, ΡΠΎ Π²Π°Ρ ΠΎΡΠΏΡΠ°Π²ΠΈΡ Π½Π° ΡΡΡΠ°Π½ΠΈΡΡ YouTube Ρ ΠΊΠ»ΠΈΠΏΠΎΠΌ Π³ΡΡΠΏΠΏΡ Nirvana "Smells like Teen Spirit".
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
Π’Π΅ΠΏΠ΅ΡΡ, ΠΊΠΎΠ³Π΄Π° Π²Ρ ΠΏΠΎΠ½ΡΠ»ΠΈ ΠΊΠ°ΠΊ Π³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°ΡΡ QR-ΠΊΠΎΠ΄Ρ Π² Python Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Segno, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΊΡΠ°ΡΠΈΠ²ΡΠ΅ QR-ΠΊΠΎΠ΄Ρ. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΊΠ°ΠΊ ΡΡΠ°Π΄ΠΈΡΠΈΠΎΠ½Π½ΡΠ΅ ΡΠ΅ΡΠ½ΠΎ-Π±Π΅Π»ΡΠ΅ QR-ΠΊΠΎΠ΄Ρ, ΡΠ°ΠΊ ΠΈ Ρ ΡΠ΄ΠΎΠΆΠ΅ΡΡΠ²Π΅Π½Π½ΡΠ΅ QR-ΠΊΠΎΠ΄Ρ Ρ Π²ΡΠ°ΡΠ°ΡΡΠΈΠΌΠΈΡΡ ΠΈ Π°Π½ΠΈΠΌΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌΠΈ ΡΠΎΠ½Π°ΠΌΠΈ.
Π ΡΡΠΎΠΌ ΡΡΠΎΠΊΠ΅ Π²Ρ ΡΠ·Π½Π°Π»ΠΈ, ΠΊΠ°ΠΊ:
- ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ
make_qr()
ΠΈ.save()
Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠ΅ΡΠ½ΠΎ-Π±Π΅Π»ΡΡ QR-ΠΊΠΎΠ΄ΠΎΠ² - Π Π΅Π³ΡΠ»ΠΈΡΠΎΠ²Π°ΡΡ ΡΠ°Π·ΠΌΠ΅Ρ ΠΌΠΎΠ΄ΡΠ»Ρ ΠΈ ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΡΠ΅Π»ΡΠ½ΡΡ Π·ΠΎΠ½Ρ QR-ΠΊΠΎΠ΄Π°
- Π‘ΠΎΠ·Π΄Π°Π²Π°ΡΡ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠ΅ ΡΠ΅ΠΌΠ½ΡΠ΅ ΠΈ ΡΠ²Π΅ΡΠ»ΡΠ΅ ΠΌΠΎΠ΄ΡΠ»ΠΈ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ Π»ΡΠ±ΠΈΠΌΡΡ ΡΠ²Π΅ΡΠΎΠ²
- ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΌΠ΅ΡΠΎΠ΄
.to_pil().rotate()
Π΄Π»Ρ ΠΏΠΎΠ²ΠΎΡΠΎΡΠ° QR-ΠΊΠΎΠ΄ΠΎΠ² - Π‘ΠΎΠ·Π΄Π°Π²Π°ΡΡ QR-ΠΊΠΎΠ΄Ρ Ρ Π°Π½ΠΈΠΌΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌ ΡΠΎΠ½ΠΎΠΌ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΌΠ΅ΡΠΎΠ΄
.to_artistic()
Π ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΡΠ°Π·, ΠΊΠΎΠ³Π΄Π° Π²Ρ ΠΏΠΎΡΠΌΠΎΡΡΠΈΡΠ΅ Π½Π° ΡΠ΅ΡΠ½ΠΎ-Π±Π΅Π»ΡΠΉ QR-ΠΊΠΎΠ΄, Π²Ρ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠ΄ΡΠΌΠ°ΡΡ ΠΎ ΡΠΎΠΌ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π΅ ΡΠΏΠΎΡΠΎΠ±ΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Segno Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΊΡΠ΅Π°ΡΠΈΠ²Π½ΡΡ QR-ΠΊΠΎΠ΄ΠΎΠ², ΠΏΡΠΈΠ²Π»Π΅ΠΊΠ°ΡΡΠΈΡ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ. ΠΠΎΠ»ΡΡΠ°ΠΉΡΠ΅ ΡΠ΄ΠΎΠ²ΠΎΠ»ΡΡΡΠ²ΠΈΠ΅ ΠΎΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΡ ΠΊΡΠ°ΡΠΈΠ²ΡΡ QR-ΠΊΠΎΠ΄ΠΎΠ² Π½Π° Python.