Saya mengalami masalah yang sangat aneh dengan python-qrcode.
Saya sudah menjalankannya di lingkungan pengembang kami untuk sementara waktu sekarang, tanpa masalah apa pun. Kami menggunakannya untuk membuat dua kode QR yang keduanya berisi URL dengan panjang yang hampir sama (satu berisi huruf tambahan dan dua garis miring tambahan). Sangat penting bahwa kedua kode ini memiliki ukuran yang sama persis.
Sejak kami menyiapkan python-qrcode sekitar lima bulan yang lalu, setiap kode qr yang kami hasilkan memiliki ukuran yang persis sama tanpa gagal. Namun, kami sekarang telah memasukkan semuanya ke server produksi dan tiba-tiba kami mengalami masalah.
Pada dasarnya, salah satu kode yang kami hasilkan lebih besar dari biasanya (ini adalah kode yang memiliki tiga karakter tambahan). Kode lainnya adalah ukuran yang benar. Kedua kode tersebut dihasilkan menggunakan fungsi yang persis sama, kami hanya meneruskan URL yang berbeda untuk dikodekan.
Di mesin lokal saya dan di server pengembang kami, semua kode qr memiliki ukuran yang persis sama (termasuk yang memiliki karakter tambahan), tetapi di server produksi, yang lebih panjang akan lebih besar sementara yang lainnya benar.
Kami menggunakan kontrol versi Git, sehingga semua file/fungsi dll identik antar server. Satu-satunya perbedaan antara pengaturan adalah versi Ubuntu (12.04 vs 12.10 di server produksi), tapi saya tidak mengerti mengapa hal itu menyebabkan masalah ini.
Jika kedua kode lebih besar, saya bisa mengerti, tapi saya tidak tahu mengapa yang satu lebih besar dari yang lain hanya di satu server.....?
Jika ada yang bisa memberi saran tentang di mana harus mulai mengerjakannya, saya akan sangat berterima kasih!
Sunting:
Inilah kode yang relevan:
myQrGenerator = qrcode.QRCode(
version=QRCODE_SIZE,
error_correction=qrcode.constants.ERROR_CORRECT_M,
box_size=QRCODE_BOX_SIZE,
border=QRCODE_BORDER_SIZE
)
myQrGenerator.add_data('%s%s/' % (theBaseUrl, str(theHash)))
myQrGenerator.make(fit=True)
Kami mendapatkan variabel tersebut dari local_settings.py
make
default,python-qrcode
akan mencoba menyesuaikan data, dan mungkin mengubah ukuran gambar. Gunakanprint_tty
untuk mencetak kode ke layar untuk menghindari PIL sama sekali, dan singkirkan perilaku buruknya. - person soulseekah   schedule 03.12.2012print_tty
pada kedua mesin menghasilkan perilaku yang sama, dimana 12.10 menghasilkan kode QR yang lebih besar (dengan lebih banyak kotak) untuk URL yang lebih panjang. Dan mengenai kode, keduanya menghasilkan URL yang sama, izinkan saya menjelaskannya, saat memindai kode, apakah Anda mendapatkan kembali data yang sama meskipun Anda memasukkan data yang berbeda!? - person soulseekah   schedule 03.12.2012