From 0dfd21f9cfffa5de176d1c5219bbf9e45b973610 Mon Sep 17 00:00:00 2001 From: Takahiro Tomita Date: Tue, 6 Sep 2022 21:11:08 +0900 Subject: [PATCH 1/2] refactor: Change qr_version to instance variable --- src/rmqrcode/rmqrcode.py | 23 ++++++++++------------- 1 file changed, 10 insertions(+), 13 deletions(-) diff --git a/src/rmqrcode/rmqrcode.py b/src/rmqrcode/rmqrcode.py index 804ae44..db5d110 100644 --- a/src/rmqrcode/rmqrcode.py +++ b/src/rmqrcode/rmqrcode.py @@ -145,10 +145,10 @@ def __init__(self, version, ecc, with_quiet_zone=True, logger=None): if not rMQR.validate_version(version): raise IllegalVersionError("The rMQR version is illegal.") - qr_version = rMQRVersions[version] - self._version = version - self._height = qr_version["height"] - self._width = qr_version["width"] + self._version_name = version + self._qr_version = rMQRVersions[version] + self._height = self._qr_version["height"] + self._width = self._qr_version["width"] self._error_correction_level = ecc self._qr = [[Color.UNDEFINED for x in range(self._width)] for y in range(self._height)] self._segments = [] @@ -220,12 +220,11 @@ def _encode_data(self): str: The encoded data. """ - qr_version = rMQRVersions[self.version_name()] - data_bits_max = qr_version["number_of_data_bits"][self._error_correction_level] + data_bits_max = self._qr_version["number_of_data_bits"][self._error_correction_level] res = "" for segment in self._segments: - character_count_indicator_length = qr_version["character_count_indicator_length"][segment["encoder_class"]] + character_count_indicator_length = self._qr_version["character_count_indicator_length"][segment["encoder_class"]] res += segment["encoder_class"].encode(segment["data"], character_count_indicator_length) res = self._append_terminator_if_possible(res, data_bits_max) @@ -532,8 +531,7 @@ def _put_version_information_finder_sub_pattern_side(self, version_information): def _compute_version_info(self): """Computes version information with BCH code.""" - qr_version = rMQRVersions[self.version_name()] - version_information_data = qr_version["version_indicator"] + version_information_data = self._qr_version["version_indicator"] if self._error_correction_level == ErrorCorrectionLevel.H: version_information_data |= 1 << 6 reminder_polynomial = compute_bch(version_information_data) @@ -556,13 +554,12 @@ def _put_data(self, encoded_data): list: A two-dimensional list shows where encoding region. """ - qr_version = rMQRVersions[self.version_name()] - codewords_num = qr_version["codewords_total"] + codewords_num = self._qr_version["codewords_total"] codewords = self._make_codewords(encoded_data, codewords_num) - blocks = self._split_into_blocks(codewords, qr_version["blocks"][self._error_correction_level]) + blocks = self._split_into_blocks(codewords, self._qr_version["blocks"][self._error_correction_level]) final_codewords = self._make_final_codewords(blocks) - mask = self._put_final_codewords(final_codewords, qr_version["remainder_bits"]) + mask = self._put_final_codewords(final_codewords, self._qr_version["remainder_bits"]) return mask def _make_codewords(self, encoded_data, codewords_num): From 4b356ab12805dc72d9289bccfeae9c4788592657 Mon Sep 17 00:00:00 2001 From: Takahiro Tomita Date: Wed, 7 Sep 2022 09:36:50 +0900 Subject: [PATCH 2/2] chore: Apply formatter --- src/rmqrcode/rmqrcode.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/rmqrcode/rmqrcode.py b/src/rmqrcode/rmqrcode.py index db5d110..9c4a7cc 100644 --- a/src/rmqrcode/rmqrcode.py +++ b/src/rmqrcode/rmqrcode.py @@ -224,7 +224,9 @@ def _encode_data(self): res = "" for segment in self._segments: - character_count_indicator_length = self._qr_version["character_count_indicator_length"][segment["encoder_class"]] + character_count_indicator_length = self._qr_version["character_count_indicator_length"][ + segment["encoder_class"] + ] res += segment["encoder_class"].encode(segment["data"], character_count_indicator_length) res = self._append_terminator_if_possible(res, data_bits_max)