Hi,
What's current status of PDF417 - what work remains?
Thanks
Hi, the owner should have started it in the base repo some time ago, but I don't think he's actually working on that, so I gotta say we seem to have nothing. :(
Thanks - does anyone know the scope of the work / the typical tasks involved in the port?
Generally some edit in MultiFormatReader, README and the entire port of the format's Reader and its tests.
I'm super interested in getting this going too. I am willing to help but really have no idea what I am getting myself into.
Is the port something that should take a week? month? year?
Is there a good place to look for porting the code over?
If I do get stuck I probably can find some money in the couch cushions to pay for help. Is there someone who's an expert on this that would be able to free up some hours?
For example, do we consider this to be a good starting point for looking at a port:
https://github.com/PeculiarVentures/js-zxing-pdf417 - it appears everyone else on github is using it...
Okay. I think we are going to give it a go, then... I will open a WIP PR once we make some headway.
Hi Guys, want to check what the status on this is ? I am interested to contribute as well to get this going !
None of the contribs had push any code here yet, so I don't hows their progress for now. π
Anyone can open a WIP PR anytime, it would help us to track this feature progress and would be gladly welcome.
@idyll, @sadevio any news on this?
No updates from @idyll and myself. We're currently experimenting with the Shape Detection API in Chrome Canary as an alternative.
@nathany only now I think I understood what you said on Gitter, you'd like to use the Shape Detection API and fallback to this lib if the API isn't available?
That is one option we've considered.
However, I have had very little success with Code 128 in zxing-js, and likewise very little success with https://github.com/PeculiarVentures/js-zxing-pdf417 -- so I don't know that porting it over to zxing-js is worth the effort right now.
Currently I'm evaluating (server-side) alternatives as a fallback when the Shape Detection API is not available. Thanks Luiz.
You're welcome, I'm using it only with QR Codes and EAN 13 in production for now, they are decoded fast. That's sad that I can't give you better support at the moment, but we are always open. π
Hi guys,
Did anyone manage to get anywhere with this request? I do not have experience working on a github library before but I am keen to assist if someone can give me a starting point.
Warm Regards
Yes, thank you very much.
On Thu, 13 Dec 2018 at 16:47, KarishImrith notifications@github.com wrote:
Hi guys,
Did anyone manage to get anywhere with this request? I do not have
experience working on a github library before but I am keen to assist if
someone can give me a starting point.Warm Regards
β
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/zxing-js/library/issues/59#issuecomment-446994051,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AON4uCO4RAwdDH0ZB6vR525RvItRHI18ks5u4miOgaJpZM4U7qLq
.
@Thorocaine,
Thatβs great to hear!
Please advise further. When can we expect PDF417 support to be live on this library...
Well, progress is being made, I ported all classes but these:
WIP PR open: #124
So, there's only one test class missing, I left it commented cause I had no time to finish it up. Any help is appreciated guys, I'll be busy for a few days so I counting on contributions to help me make tests pass. Thanks. π€
Hi Odahcam,
I am noob at working with GitHub as well as formal unit testing but I would say my coding ability is well above basic. I would like to get involved in this community though. Could you possibly inbox me your email address and maybe give me some guidelines so that I can assist with this feature. I want to get it operational before 2019.
Regards
Of course, first I should ask you to read our contribution guide: https://github.com/zxing-js/library/blob/master/CONTRIBUTING.md
It is not that good yet, I'm still writing new things to it, so I will answer your doubts as you need.
Please contact me on Gitter rather than email: https://gitter.im/odahcam
Hi @odahcam
I see the https://github.com/zxing-js/library/tree/feature/pdf417-reader branch has not had munch action recently. Do we know when pdf417 will be supported?
No, we unfortunately don't. I'm very busy lately and I'm struggling to find time for open source. Any help stills welcome.
@odahcam can you please tell me how long you think it will take to be available for us?
Well, the porting is done, now comes the second part: make the tests pass. Sincerely I have no idea how much time it will take and I was hopping someone would help in the past year, but no one did. I'm pretty busy at the moment so I can't give you a date for that, could be in the next two months or in the next year, sorry.
I am going to start looking into getting this fixed up.
@odahcam @andrewgabler Any success in getting this working?
@odahcam any update sir?
Nope, sorry. π
I'm working in other things at the moment, but still if someone wants to contribute I still actively maintaining the project.
I have plans to get back here and finish it. It could be this week or months from here, I don't know when.
Stale issue message
No bot, still WIP.
What is the status on this feature?
I'm working on making the tests pass. I had some trouble finding time to continue in the last couple weeks but we got the first PDF417 correct decoded result. Unfortunately that means only one test inside the first Abstract Blackbox test (of four), so it will take some days until it's ready.
I've been messing around on this branch to try to get it working in react. After building it and importing the em module..... making a few changes and commenting out some cyclical imports in oned. I have the branch detecting 1D barcodes and QRCodes.... but.... it's been a no go for PDF417. I've tracked the detection seeming to find data up until:
decoder/PDF417ScanningDecoder.ts
line:158
let codeword: Codeword = PDF417ScanningDecoder.detectCodeword(image, boundingBox.getMinX(), boundingBox.getMaxX(), leftToRight,
startColumn, imageRow, minCodewordWidth, maxCodewordWidth);
codeword is null
I've been using https://en.wikipedia.org/wiki/PDF417
as a test
I know we are kind of on our own on this branch, but maybe you have some idea on whats up? Seems like it is so close to working.
Yep, it is closer than ever, but it also have been a pain in my ass to debug and code fixes in the code. This is a extremely complex and time cosuming proccess that takes too much time to do on my own. Anyhow, I always use the automated tests to develop and see if it's working, also to debug and I recomend you to do the same. I've configured for this branch a VSCode debug task that runs only the PDF417 tests for easier development.
Well, what is working and what is not?
After 4 weeks I made the first assert of the first test pass, that's it, anything else gets pretty close to a correct decoded result but it gets messy text instead.
Then I got personal matters to deal with and entered in vacation.
How to solve that issues?
There's two ways:
GitHub Actions sometimes suck BTW, if anyone knows how to prevent certain issues from being closed please I'd love to heard about it.
About the VSCode debug tasks:

Select the blue highlighted one and hit F5 for debugging.
(I know most of you know about that, but for new people reaching out it can be useful)
Reopening, shoul not be closed.
Hello,
the last days I was working on this issue (in our project pdf417 is requered).
So, I fixed some problems in code (checked it in parallel with Zxing - Java) and for now all tests from folder (1, 2, 3) works correct - 100% passed.
I'm new in TypeScript (actually it's a my first experiance with it) that's why my changes have to be reviewed.
I'm alse new in github - so I try to create push request, hope it will be work correct :)
P.S.: all mocha tests are crashed with error "Resolution method is overspecified. Specify a callback or return a Promise; not both." - I have no idea why... (I also have no experiance with it :)) but all pictures decoded correct.
P.S.: @odahcam thank you for initial porting and contributin - it's really greate job.
Best regards,
Neasit
Hello,
I try to build it as a UMD - but got the error by using this .min.js file - TypeError: Object prototype may only be an Object or null: undefined
As I understood I have to also set up webpack bundling, but I have no idea how, could you please help me with it?
P.S.: all mocha tests are crashed with error "Resolution method is overspecified. Specify a callback or return a Promise; not both." - I have no idea why... (I also have no experiance with it :)) but all pictures decoded correct.
Easy to solve, don't worry.
P.S.: @odahcam thank you for initial porting and contributin - it's really greate job.
Thank you very much, I'll be reviewing your code ASAP which I believe is also a great job, much needed, thanks.
As for the UMD bundle, I'll take a look while reviewing the PR #264.
Super, regarding UMD - there was problem with RSS Expanded and circular dependency in PDF417 - "decoder/ec/ModulusPoly" and "decoder/ec/ModulusGF"
I deleted RSS Expanded from index.ts and merge ModulusPoly and ModulusGF in one file -> after that the UMD works correctly and I already checked it in my app - PDF417 decoded :)
I faced lots of trouble regarding circular dependency (apparently Java guys didn't notice that ???) and that took me lots of time to get to and fix. Maybe I there's something missing in these files or something I can apply to them too. Let's hope for the best. Also, I think till next week we'll have PDF 417 on master. π
I faced lots of trouble regarding circular dependency (apparently Java guys didn't notice that ???) and that took me lots of time to get to and fix. Maybe I there's something missing in these files or something I can apply to them too. Let's hope for the best. Also, I think till next week we'll have PDF 417 on master. π
It will be great. And what is the best way to resolve dependency? Just put it to one file? Or?
I try to use this in my application and got the problem with Safari - JS BigInt is not supported and the library can't be loaded -> syntax error.
As a resolution -> I added Google lib JSBI to project and switch all JS BinInt to JSBI -> that works correct, but JSBI is JS library -> I'm not sure that I connect it to TypeScript project in right way...
That is not the best way to use some lib inside the project, that would be better to expose that kind of dependency as a peer dependecy and it would be imperative that the emtire library didn't crash when that dependecy is not available, but only the part needing the dependency (PDF 417).
About the circular dependency problem: I usually pick the circular dependecy origin file and isolate the methods in another scope, maybe a static class or even pure functions, so that all the files referencing that origin now reference a new file, breaking the cicle.
@Neasit if you just change your first step:
I just copy JSBI.js (https://github.com/GoogleChromeLabs/jsbi) to ./util;
To:
npm install jsbi --save (or yarn).You just need:
load it in ts (import { default as JSBI } from '../../util/JSBI';)
And all the other steps are not needed.
The best way to support safari is to create a new CustomBigInt class which can handle both BigInt and JSBI as they're available, so users can install (and load on webpage) JSBI if they wanna support PDF417 on Safari.
Thanks for clarification, seems great.
Also thanks for review my commits - for now I have really no time for changing something.
P.S.: regarding renaming - it's strange but I was sure that in debug I got a error :)
You are very welcome, thanks again for the PR.
I fixed the remaining tests, so looks like all tests are passing now. π
Good news everyone. Mission accomplished.
Edit.: after my last comment I actually had to fix circular dependencies between classes coming from Java, these circular dependencies were breaking the UMD build of the library. That's why it took some extra days to release this feature. Thanks for those who waited, thanks for those who didn't, hehe.
Most helpful comment
You are very welcome, thanks again for the PR.
I fixed the remaining tests, so looks like all tests are passing now. π