yeqown / go-qrcode

To help gophers generate QR Codes with customized styles, such as color, block size, block shape, and icon.
MIT License
567 stars 87 forks source link

[FEATURE] Transparent (png) output for halftone QR codes. #101

Closed nitin-gyany closed 7 months ago

nitin-gyany commented 7 months ago

Is your feature request related to a problem? Please describe. I'm trying to use a transparent image in png format. Currently the output of .WithHalftone is not transparent. So, a transparent blank image creates a black image with the QR code.

Describe the solution you'd like A transparent output QR code image is required. It should be just the QR code on a transparent background.

yeqown commented 7 months ago

got it, but sorry about that couldn't be fixed immediately, since I'm a little busy lately ~

nitin-gyany commented 7 months ago

Hi Yeqown,

Thanks for reaching out.

If you could spend just half an hour telling me where to look at, I’ll debug the issue and resolve it. Can we arrange a Google Meet some time today?

N.

On 30-Mar-2024, at 8:17 AM, yeqown @.***> wrote:

got it, but sorry about that couldn't be fixed immediately, since I'm a little busy lately ~

— Reply to this email directly, view it on GitHub https://github.com/yeqown/go-qrcode/issues/101#issuecomment-2027887949, or unsubscribe https://github.com/notifications/unsubscribe-auth/AGSE7NJWM3NQAVVNZAZHDSDY2YRSLAVCNFSM6AAAAABFOIJLM6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDAMRXHA4DOOJUHE. You are receiving this because you authored the thread.

yeqown commented 7 months ago

@nitin-gyany please try the new version of standard writer on issue/101 branch, and I also update the example of halftone. PR is here, #102

nitin-gyany commented 7 months ago

I’m using the latest repo. I’ll check on issue/101 branch. Somehow the transparency with small QR dots is not working. Sent from my iPhoneOn 30-Mar-2024, at 8:57 AM, yeqown @.***> wrote: @nitin-gyany please try the new version of standard writer on issue/101 branch, and I also update the example of halftone. PR is here, #102

—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you were mentioned.Message ID: @.***>

nitin-gyany commented 7 months ago

The code you committed worked with this change - options := []standard.ImageOption{ standard.WithHalftone("./transparent.png"), standard.WithQRWidth(21), standard.WithBuiltinImageEncoder(standard.PNG_FORMAT), standard.WithBgTransparent(), } filename := "./halftone-qr.png"

Thanks a lot.

Can we have following settings in our code?

  1. The halftone contrast threshold - That makes the resulting halftone image with clarity.
  2. The halftone QR black (module) size.

There are a couple of excellent Javascript based halftone QR generators and QR generators with image controls.

https://jsfiddle.net/lachlan/r8qWV/ https://github.com/nythrox/halftone-qrcode

I would like to hone my Golang skills in comparison with these repositories.

yeqown commented 7 months ago

I’m using the latest repo. I’ll check on issue/101 branch. Somehow the transparency with small QR dots is not working. 

What do you mean by 'small QR dots'? Is it a bug or something?

If these changes have fixed the issue, I would merge it and release a new version of standard writer.

yeqown commented 7 months ago

The code you committed worked with this change - options := []standard.ImageOption{ standard.WithHalftone("./transparent.png"), standard.WithQRWidth(21), standard.WithBuiltinImageEncoder(standard.PNG_FORMAT), standard.WithBgTransparent(), } filename := "./halftone-qr.png"

Thanks a lot.

Can we have following settings in our code?

  1. The halftone contrast threshold - That makes the resulting halftone image with clarity.
  2. The halftone QR black (module) size.

There are a couple of excellent Javascript based halftone QR generators and QR generators with image controls.

https://jsfiddle.net/lachlan/r8qWV/ https://github.com/nythrox/halftone-qrcode

I would like to hone my Golang skills in comparison with these repositories.

You're welcome to open PRs 👏

nitin-gyany commented 7 months ago

I’m using the latest repo. I’ll check on issue/101 branch. Somehow the transparency with small QR dots is not working.

What do you mean by 'small QR dots'? Is it a bug or something?

If these changes have fixed the issue, I would merge it and release a new version of standard writer.

The standard writer is working for the half tone QRs.

yeqown commented 7 months ago

writer/standard/v1.2.3 has been released, I'm closing this issue, free to reopen it if needed.