QR code is a type of 2d barcode that is useful for encoding data, including the URL, contact information and many other data types. The output can be easily scanned via applications on mobile phones to capture a URL or import contact information. In LibreOffice, it is possible to create different barcodes, either 1d or 2d, via extensions, or LibreOffice internal functionality. For QR codes, it is possible to use the internal functionality via Insert > OLE Object > QR and Barcode: https://help.libreoffice.org/latest/en-GB/text/shared/guide/qrcode.html QR and Barcode This functionality is implemented using ZXing library: https://github.com/zxing-cpp/zxing-cpp If you take a look at the source code in cui/source/dialogs/QrCodeGenDialog.cxx , there is ConvertToSVGFormat() function which creates the SVG output. In the recent versions of ZXing library (We use v1.4 right now), there is a function that does that, ZXing::ToSVG. The task here is to replace the our function with the better one from ZXing.
(In reply to Hossein from comment #0) > In the recent versions of ZXing library (We use v1.4 right now) Do we *require* recent enough versions, even when using system library? Or is that just the version that is guaranteed only when bundling?
(In reply to Hossein from comment #0) > The task here is to replace the our function with the better one from ZXing. Note also, that our implementation [1] is based on exactly the same code that the implementation in ZXing [2] is. [1] https://opengrok.libreoffice.org/xref/core/cui/source/dialogs/QrCodeGenDialog.cxx?r=15e5d86c&mo=2367&fi=76#75 [2] https://github.com/zxing-cpp/zxing-cpp/commit/a2c64fe7b136b56afe7f6456ce21ef48bd1f50be#diff-4d566dcc828bc687016b9a8a1f05ab7e288cea209b2936ae746919b8fa64f948R48
Discussing in the chat, Mike said that ZXing::ToSVG() can be used conditionally. We should not require 1.4.0 yet because it was only released in July 2022. Distro packaging status: https://repology.org/project/zxing-cpp-nu-book/versions
TRaXIn committed a patch related to this issue. It has been pushed to "master": https://git.libreoffice.org/core/commit/8dbbeadbc7eabe76736d37fe3bcafe3e537f0bc0 tdf#153328 ZXing::ToSVG() Conditional usage It will be available in 24.2.0. The patch should be included in the daily builds available at https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More information about daily builds can be found at: https://wiki.documentfoundation.org/Testing_Daily_Builds Affected users are encouraged to test the fix and report feedback.
(In reply to Commit Notification from comment #4) > TRaXIn committed a patch related to this issue. > It has been pushed to "master": > > https://git.libreoffice.org/core/commit/8dbbeadbc7eabe76736d37fe3bcafe3e537f0bc0 > > tdf#153328 ZXing::ToSVG() Conditional usage > > It will be available in 24.2.0. > > The patch should be included in the daily builds available at > https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More information about daily builds can be found at: > https://wiki.documentfoundation.org/Testing_Daily_Builds https://geometrydash-lite.com > > Affected users are encouraged to test the fix and report feedback. Thanks for this reply, it's really useful for me