Skip to content

Conversation

sorairolake
Copy link
Contributor

@sorairolake sorairolake commented Aug 21, 2025

This pull request adds a rMQR Code (Rectangular Micro QR Code) encoder to this crate. It's standardized as ISO/IEC 23941.

This implementation is based on the qrqrpar crate, which is a fork of this crate. It's licensed under the BSD 3-Clause "New" or "Revised" License, so I think it's possible to import the code from the qrqrpar crate into this crate.

The shape of rMQR Code is rectangular, not square. So I changed Renderer::new to take the vertical modules count in addition to the horizontal modules count.1 This is a breaking change.

Note

The feature to automatically choice the rMQR code version implemented in the qrqrpar crate is not implemented. This is because I didn't think it is necessary to add it. If you think it is necessary, I think you can implement it using bits::encode_auto_rmqr as a reference.

Closes #80

Footnotes

  1. Except for rMQR code, the horizontal modules count and the vertical modules count should be the same value.

@sorairolake sorairolake force-pushed the feature/rmqr-code branch 2 times, most recently from 844d0f0 to 37f2fe2 Compare August 21, 2025 04:51
@sorairolake
Copy link
Contributor Author

I added the license information for this crate and the qrqrpar crate to README.md just in case. This is because this encoder is based on the qrqrpar crate's implementation.

@sorairolake sorairolake marked this pull request as draft August 21, 2025 06:39
@sorairolake sorairolake marked this pull request as ready for review August 21, 2025 08:19
@sorairolake sorairolake marked this pull request as draft August 21, 2025 08:22
@sorairolake sorairolake marked this pull request as ready for review August 21, 2025 09:24
This implementation is based on the
[`qrqrpar`](https://crates.io/crates/qrqrpar) crate.
@sorairolake
Copy link
Contributor Author

@kennytm Could you review this pull request?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Feature request: Add rMQR Code encoder
1 participant