Commit graph

643 commits

Author SHA1 Message Date
srowen 46640620e9 Issue 230
git-svn-id: https://zxing.googlecode.com/svn/trunk@1040 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-08-24 06:49:57 +00:00
srowen e1dd41a115 Improve detector logic to throw out false positive finder patterns in a more reasonable manner. Current logic didn't quite achieve its goal in some corner cases and needed rethinking and some simplification. Fixes a reported failure from the group list. Net change in passed test cases is -1 otherwise (for 270 degree rotation -- not vital) so I consider it a net tiny win.
git-svn-id: https://zxing.googlecode.com/svn/trunk@1039 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-08-23 15:32:01 +00:00
srowen 362236564e Miscellaneous changes from FindBugs analysis
git-svn-id: https://zxing.googlecode.com/svn/trunk@1038 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-08-22 15:16:36 +00:00
srowen 6dbf893cb0 Add MatrixToImageWriter convenience class, small code tweaks in javase/, make ByteMatrix width/height property getters names standard
git-svn-id: https://zxing.googlecode.com/svn/trunk@1028 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-07-30 08:58:57 +00:00
dswitkin d8b1011324 Fixed some long lines over 100 columns.
git-svn-id: https://zxing.googlecode.com/svn/trunk@1027 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-07-23 22:10:43 +00:00
srowen 4331605913 Added error correction level to Result
git-svn-id: https://zxing.googlecode.com/svn/trunk@1026 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-07-22 10:40:18 +00:00
srowen 91d8e04d86 Re-enable ProGuard, and finally identified the workaround that seems to make 4.4 work with our code without a VerifyError
git-svn-id: https://zxing.googlecode.com/svn/trunk@1025 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-07-22 10:36:11 +00:00
srowen 9f475ac33e Small detector simplification that addresses issue 215 and picks up a net +4 more images decoded in tests
git-svn-id: https://zxing.googlecode.com/svn/trunk@1022 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-07-21 09:39:31 +00:00
srowen 636c00e844 Another tweak to get some valid ISO-8859-1 strings like "frédéric" to be guessed correctly
git-svn-id: https://zxing.googlecode.com/svn/trunk@1021 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-07-17 09:30:46 +00:00
dswitkin 54e6ed418a More x, y cleanup and 100 column fixes.
git-svn-id: https://zxing.googlecode.com/svn/trunk@1017 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-07-08 21:17:52 +00:00
dswitkin 402880798c Modified my skew correction code to also work upside down, meaning we now decode three more inverted PDF 417 images.
git-svn-id: https://zxing.googlecode.com/svn/trunk@1016 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-07-08 20:38:21 +00:00
dswitkin b238cb7828 I noticed that the codeword coordinates in PDF 417 barcodes were a few pixels off if there was skew or rotation in the image. I added a simple method to correct the vertical component of these points, and the units tests went from 8/23 to 11/23.
git-svn-id: https://zxing.googlecode.com/svn/trunk@1015 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-07-02 20:07:09 +00:00
dswitkin 0944a2bb18 Got 180 degree rotation working for PDF 417, and turned on the appropriate unit tests as a result.
git-svn-id: https://zxing.googlecode.com/svn/trunk@1014 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-07-01 19:42:52 +00:00
dswitkin af2ce46c37 Cleaned up a number of comments and code to fit in 100 columns and added some TODO items.
git-svn-id: https://zxing.googlecode.com/svn/trunk@1013 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-07-01 16:35:05 +00:00
dswitkin e44f00ba75 Converted the last user of the old MonochromeBitmapSource-style calls over to BitMatrix, and removed these deprecated methods.
git-svn-id: https://zxing.googlecode.com/svn/trunk@1012 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-07-01 16:13:25 +00:00
dswitkin c31b489efe Added the second PDF 417 test to the AllPositiveBlackBoxTester.
git-svn-id: https://zxing.googlecode.com/svn/trunk@1011 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-07-01 15:13:44 +00:00
dswitkin 01eed5266e - Converted parts of the PDF 417 reader to use BitMatrix.
- Changed the PDF 417 detector to search the image more broadly, instead of assuming the barcode starts in the left 1/4 and ends in the right 1/4. We now get 8/23 on the real-world blackbox test, and we'll probably do even better with further improvements here.
- Added a quiet zone to two of the unit test images and updated a golden result for one of them. We now get 3/7 on the first test.
- Tried to fix some bugs in the upside down code but it still doesn't work.

git-svn-id: https://zxing.googlecode.com/svn/trunk@1010 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-06-30 21:55:19 +00:00
dswitkin 0667b29155 Added the PDF 417 blackbox tests to the test-blackbox Ant target.
git-svn-id: https://zxing.googlecode.com/svn/trunk@1009 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-06-30 18:51:43 +00:00
dswitkin f5124cec37 Created a new blackbox unit test of real-world PDF 417 images taken with an Android device. Currently we decode 0/23.
git-svn-id: https://zxing.googlecode.com/svn/trunk@1008 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-06-30 18:47:34 +00:00
dswitkin 2397216901 Added a few computer-generated PDF 417 barcodes to the blackbox tests. The current code doesn't seem to handle more advanced error correction modes.
git-svn-id: https://zxing.googlecode.com/svn/trunk@1007 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-06-30 17:32:12 +00:00
dswitkin eb8b9677cf Added the previous Android benchmark I've been using to track performance, as well as a new one which uses wider images and therefore twice as many pixels.
git-svn-id: https://zxing.googlecode.com/svn/trunk@1006 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-06-29 22:08:38 +00:00
dswitkin e2324bc2ae Added slightly better blackbox unit test stats.
git-svn-id: https://zxing.googlecode.com/svn/trunk@1005 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-06-29 21:57:59 +00:00
dswitkin 10dfe7789b - Got the DataMatrix decoder compiling again with a quick bandaid.
- Fixed two bugs in the LocalBlockBinarizer sharpening routine. It can now decode 2132 images in our blackbox tests, compared to 2103 using the global histogram approach.
- Added the PDF 417 blackbox test to AllPositiveBlackBoxTester, and allowed it to complete even if the tests fail.

git-svn-id: https://zxing.googlecode.com/svn/trunk@1004 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-06-29 15:49:42 +00:00
srowen 597fcfb23d Code analysis tweaks
git-svn-id: https://zxing.googlecode.com/svn/trunk@1003 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-06-28 16:33:02 +00:00
srowen 550511d760 Remove use of BinaryBitmap in QR Code, DM
git-svn-id: https://zxing.googlecode.com/svn/trunk@999 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-06-26 19:22:48 +00:00
dswitkin ce1badea71 Sean had a good idea to add @deprecated Javadoc comments to these three methods to help track down their usage. We can't use a Java @Deprecated annotation because core builds against Java 1.2.
git-svn-id: https://zxing.googlecode.com/svn/trunk@998 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-06-26 19:04:12 +00:00
dswitkin 167197ec7a Refactored the MonochromeBitmapSource class hierarchy into LuminanceSource, Binarizer, and BinaryBitmap classes. The unit tests pass and I believe the change is complete, but there are some clients like J2ME and Bug that I can't build.
This change will allow new thresholding algorithms to be developed and tested, as well as implemented per platform if needed (e.g. in JNI on Android). It should also perform better when multiple 2D Readers are installed, because the underlying image will only be converted to 1 bit once. It also allows some platforms to return luminance data without a copy.

The current state of this checkin is to use the old black point algorithm, which now lives in GlobalHistogramBinarizer. This will be our benchmark and fallback for slower platforms. Going forward we will begin to use LocalBlockBinarizer as I shake out the edge cases and tune it for performance. Currently it is unused.

IMPORTANT: I have temporarily included three methods from MonochromeBitmapSource at the end of BinaryBitmap as a way to make this change in stages. They are deprecated and will be removed soon. All of the Reader classes will need to change the way they examine 1 bit pixels to use the new getBlackRow() and getBlackMatrix() calls.

git-svn-id: https://zxing.googlecode.com/svn/trunk@993 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-06-26 17:49:45 +00:00
kev.sully 974fb5e403 ISSUE: http://code.google.com/p/zxing/issues/detail?id=42
Added PDF417 to list of readers. Will be used only if its specified in a Hint.

git-svn-id: https://zxing.googlecode.com/svn/trunk@987 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-06-26 14:34:16 +00:00
dswitkin da4f56b022 Fixed some code which was ignoring the result of MonochromeBitmapSource calls, which may work in some cases but isn't legal and failed and in some experiments.
git-svn-id: https://zxing.googlecode.com/svn/trunk@986 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-06-25 19:46:49 +00:00
srowen 969088fa82 Style changes mostly
git-svn-id: https://zxing.googlecode.com/svn/trunk@985 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-06-24 13:19:53 +00:00
kev.sully 372dfa1145 ISSUE: http://code.google.com/p/zxing/issues/detail?id=42
Added PDF417 to list of readers. Will be used only if its specified in a Hint.

git-svn-id: https://zxing.googlecode.com/svn/trunk@984 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-06-24 10:03:37 +00:00
kev.sully ffbbda2086 ISSUE: http://code.google.com/p/zxing/issues/detail?id=42
Added PDF417 to list of readers. Will be used only if its specified in a Hint.

git-svn-id: https://zxing.googlecode.com/svn/trunk@983 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-06-24 10:02:58 +00:00
kev.sully db23e7c3b1 ISSUE: http://code.google.com/p/zxing/issues/detail?id=42
Added PDF417 to list of readers. Will be used only if its specified in a Hint.

git-svn-id: https://zxing.googlecode.com/svn/trunk@982 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-06-24 10:02:27 +00:00
kev.sully 36db720dac ISSUE: http://code.google.com/p/zxing/issues/detail?id=42
Added PDF417 to list of readers. Will be used only if its specified in a Hint.

git-svn-id: https://zxing.googlecode.com/svn/trunk@981 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-06-24 10:02:04 +00:00
kev.sully f80399966f ISSUE: http://code.google.com/p/zxing/issues/detail?id=42
Added PDF417 to list of readers. Will be used only if its specified in a Hint.

git-svn-id: https://zxing.googlecode.com/svn/trunk@980 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-06-24 10:01:47 +00:00
dswitkin 6367973b49 Added a clear() method to BitMatrix.
git-svn-id: https://zxing.googlecode.com/svn/trunk@979 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-06-23 21:05:09 +00:00
dswitkin b613112615 Rewrote BitMatrix to allow rectangular 2D arrays, and so that every row begins with a new int, which makes it fast to copy out rows into BitArrays. This will be the basis of the upcoming bitmap refactoring for 1D Readers.
git-svn-id: https://zxing.googlecode.com/svn/trunk@978 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-06-22 21:03:34 +00:00
dswitkin 7fec06465a Continuing with the x, y coordinate push, BitMatrix is now standardized. I also converted DataMask back to i, j for now to be consistent with the rest of the QR module, and made sure all the tests still pass.
git-svn-id: https://zxing.googlecode.com/svn/trunk@977 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-06-22 19:52:51 +00:00
srowen 4b7e5e6461 Remove getBits()
git-svn-id: https://zxing.googlecode.com/svn/trunk@976 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-06-22 17:48:37 +00:00
dswitkin 5f2b64ee50 Used IntelliJ's amazing refactoring functions to change the argument ordering of ByteMatrix. I want to standardize this across ZXing: the first component should always be horizontal and the second vertical, whether supplying an x, y point or a width, height pair. Also, we should always use x and y as variables with x being the horizontal component to avoid confusion.
git-svn-id: https://zxing.googlecode.com/svn/trunk@975 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-06-22 15:50:08 +00:00
dswitkin 406f353e53 Modified some comments to reflect that these objects are thread-safe but not reentrant.
git-svn-id: https://zxing.googlecode.com/svn/trunk@974 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-06-22 15:32:59 +00:00
dswitkin 0c3a4b4b5a Updated some comments about thread safety and fixed one easy case. Sean, please have a look.
git-svn-id: https://zxing.googlecode.com/svn/trunk@973 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-06-19 19:08:31 +00:00
srowen 63a1dc62a3 Issue 198
git-svn-id: https://zxing.googlecode.com/svn/trunk@972 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-06-19 13:23:09 +00:00
dswitkin 9f509172b6 Wrote a quick command line app to calculate how many total images are passing our blackbox unit tests. This could use some improvement but it's a start.
git-svn-id: https://zxing.googlecode.com/svn/trunk@971 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-06-18 20:55:42 +00:00
dswitkin 1da9bd60b3 Added a new blackbox test with extreme shadows and highlights. We do pretty poorly on this, but I've been experimenting with local thresholding algorithms which are a night and day improvement.
Also made the ImageConverter app ignore some kinds of files.

git-svn-id: https://zxing.googlecode.com/svn/trunk@969 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-06-16 18:47:34 +00:00
srowen 5c17a1ad71 Added getBlackDiagonal() which I likely want to use later
git-svn-id: https://zxing.googlecode.com/svn/trunk@968 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-06-11 13:42:39 +00:00
dswitkin c07fad6410 Created a new QR blackbox test with difficult exposures, mostly self-shadowing cases. We only get 34 out of 120 tests, which is about what I expected. To fix these we will have to move away from a global black point and towards a more sophisticated local thresholding algorithm.
git-svn-id: https://zxing.googlecode.com/svn/trunk@961 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-05-28 18:45:48 +00:00
dswitkin 932715065b Only allocate a StringBuffer if the start pattern has been found successfully in the ITFReader.
git-svn-id: https://zxing.googlecode.com/svn/trunk@958 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-05-27 21:11:10 +00:00
srowen dbb2c31a40 Fixed an old misspelling and a few tiny tweaks
git-svn-id: https://zxing.googlecode.com/svn/trunk@956 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-05-27 10:03:23 +00:00
srowen 58c367d9ea Improvement to Shift_JIS encoding detector to avoid detecting some UTF-8 strings as Shift_JIS
git-svn-id: https://zxing.googlecode.com/svn/trunk@955 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-05-27 09:14:17 +00:00
srowen 78c1b8ccd7 Oops, one more fix to rotateCounterClockwise() here
git-svn-id: https://zxing.googlecode.com/svn/trunk@952 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-05-24 13:06:51 +00:00
srowen 4282827336 More intelligence to avoid very deep recursion
git-svn-id: https://zxing.googlecode.com/svn/trunk@951 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-05-23 10:33:53 +00:00
dswitkin ec77a581d2 Changed the 2D histogram calculation to sample four rows spread across the image rather than taking a diagonal. We get a net increase of 63 blackbox tests with this change.
git-svn-id: https://zxing.googlecode.com/svn/trunk@950 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-05-22 20:59:15 +00:00
srowen 825d99786d Off by one error in last change
git-svn-id: https://zxing.googlecode.com/svn/trunk@949 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-05-22 08:19:11 +00:00
dswitkin 51ade2ca96 Added better logging for our blackbox tests. It now displays the number of images which passes per test out of the total, and the percentage. It also warns when a blackbox test is too lax (i.e. we've made decoding improvements but haven't raised the high water mark).
git-svn-id: https://zxing.googlecode.com/svn/trunk@947 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-05-21 21:18:27 +00:00
dswitkin 6687d5772f Fixed a typo in our golden results.
git-svn-id: https://zxing.googlecode.com/svn/trunk@946 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-05-21 20:29:56 +00:00
dswitkin e19e9a83f6 I moved a chunk of the histogram/black point code out of BaseMonochromeBitmapSource and into BlackPointEstimator which makes a lot more sense. Unfortunately I had to expose three new methods and touch a bunch of files. But I did manage to reuse an array on subsequent calls, which was being allocated on every row scanned, so that might be a bit faster. It will also be easier to convert this code to JNI in the future if we want to, and/or do more advanced thresholding.
git-svn-id: https://zxing.googlecode.com/svn/trunk@945 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-05-21 19:56:25 +00:00
dswitkin 038f113274 Moved CroppedMonochromeBitmapSource into the common package and fixed some more 100 column issues.
git-svn-id: https://zxing.googlecode.com/svn/trunk@944 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-05-21 18:46:53 +00:00
dswitkin c9d3eae171 Cleaned up some code to fit in 100 columns.
git-svn-id: https://zxing.googlecode.com/svn/trunk@942 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-05-21 15:36:51 +00:00
srowen bd73aebc73 Be smarter about recursion to avoid infinite loop
git-svn-id: https://zxing.googlecode.com/svn/trunk@940 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-05-21 14:26:29 +00:00
srowen 76eeeed99a Add toString() for easy debugging
git-svn-id: https://zxing.googlecode.com/svn/trunk@939 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-05-11 21:51:20 +00:00
srowen 793f4c7176 Marginal improvement to datamatrix decoder
git-svn-id: https://zxing.googlecode.com/svn/trunk@937 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-05-11 21:02:08 +00:00
srowen 0c07f139b5 Fix issue 189. Need to guard against 'false positive' success in reading version info.
git-svn-id: https://zxing.googlecode.com/svn/trunk@934 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-05-06 21:50:13 +00:00
srowen b2bd63a228 Alternate multi QR Code reader from Hannes
git-svn-id: https://zxing.googlecode.com/svn/trunk@933 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-05-05 09:52:46 +00:00
srowen a26e5fbc10 Forge ahead with detection even if we missed an alignment pattern -- can still decode in some cases without it
git-svn-id: https://zxing.googlecode.com/svn/trunk@929 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-05-03 19:52:03 +00:00
srowen 361f4504a3 Add MultipleBarcodeReader interface to allow for more implementations
git-svn-id: https://zxing.googlecode.com/svn/trunk@927 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-05-03 05:56:51 +00:00
srowen 7e86f379ea Moved MultipleBarcodeReader and added ByQuadrantReader to try to accommodate many QR codes in an image
git-svn-id: https://zxing.googlecode.com/svn/trunk@921 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-04-30 19:12:32 +00:00
srowen 949eca972e Adding a few test images from a defunct issue report
git-svn-id: https://zxing.googlecode.com/svn/trunk@919 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-04-28 22:29:30 +00:00
srowen 29d7d6443e Issue 183: Adds support for detecting multiple barcodes, and simplifies ResultPoint abstraction
git-svn-id: https://zxing.googlecode.com/svn/trunk@918 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-04-28 17:35:33 +00:00
srowen e9c19530cc Improve URL detection rule to exclude stuff like "Hi."
git-svn-id: https://zxing.googlecode.com/svn/trunk@914 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-04-18 08:57:32 +00:00
srowen e74c041e46 Improve URL detection rule to exclude stuff like "Hi."
git-svn-id: https://zxing.googlecode.com/svn/trunk@913 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-04-18 08:02:08 +00:00
srowen d08ddbe733 In extreme decoder failure case, make sure not to let an IAE propagate up. Turn it into ReaderException.
git-svn-id: https://zxing.googlecode.com/svn/trunk@911 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-04-17 21:30:36 +00:00
dswitkin 02f779cbee Fixed or removed a bunch of TODOs, and enforced the 100 columns limit in a bunch of places. Also allowed QR Codes to be encoded of contacts without names.
git-svn-id: https://zxing.googlecode.com/svn/trunk@907 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-04-13 21:20:11 +00:00
srowen 94915afb71 Enable DataMatrix in the web app / other small tweaks (forgot one class!); also fix a small bug in QRCodeWriter
git-svn-id: https://zxing.googlecode.com/svn/trunk@904 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-04-12 06:39:10 +00:00
srowen dea0247615 Enable DataMatrix in the web app / other small tweaks
git-svn-id: https://zxing.googlecode.com/svn/trunk@903 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-04-10 13:46:11 +00:00
srowen 3d8d68a464 Issue 165
git-svn-id: https://zxing.googlecode.com/svn/trunk@900 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-04-06 21:56:06 +00:00
srowen 3c84048565 Issue 164
git-svn-id: https://zxing.googlecode.com/svn/trunk@898 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-04-06 21:46:02 +00:00
srowen d4e82758eb Issue 158: Correct some off-by-one problems in Data Matrix detector and a few more improvements, ignore unsupported DM symbols
git-svn-id: https://zxing.googlecode.com/svn/trunk@895 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-04-06 21:22:07 +00:00
srowen 0210ec9fe9 Fixed tiny javadoc glitches
git-svn-id: https://zxing.googlecode.com/svn/trunk@892 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-03-12 21:17:06 +00:00
dswitkin dfb6b60dd4 - Added a new unit test of 13 ITF images I took with a T-Mobile G1.
- Added upside down unit tests for the existing ITF images.
- Removed the temporary format code from these tests now that ITF is on by default.

git-svn-id: https://zxing.googlecode.com/svn/trunk@883 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-03-09 20:48:48 +00:00
dswitkin 5b5c7945bb Turned on ITF support in the Android client, and fixed a bug in the ITF result points, which by convention should draw across the whole body of the barcode, not just the start range.
git-svn-id: https://zxing.googlecode.com/svn/trunk@881 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-03-09 15:57:57 +00:00
srowen 7561941341 Tiny optimization to reverse()
git-svn-id: https://zxing.googlecode.com/svn/trunk@880 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-03-09 15:56:08 +00:00
dswitkin 04ff9c43b5 Turned on ITF support by default. The typical overhead in real world scanning on an Android device is 3-8 ms.
git-svn-id: https://zxing.googlecode.com/svn/trunk@879 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-03-09 15:46:27 +00:00
srowen e367d3ef96 Fixed decodeEnd() situation whereby row might not be re-reversed, and fixed an old NPE I caused
git-svn-id: https://zxing.googlecode.com/svn/trunk@878 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-03-07 10:51:03 +00:00
srowen 8b339661d9 Some clever, perhaps too-clever optimization of masking code
git-svn-id: https://zxing.googlecode.com/svn/trunk@877 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-03-06 22:55:19 +00:00
dswitkin c1bc060065 Changed the order of the BaseMonochromeBitmapSource constructor arguments to be width, height to match the rest of the codebase, and added two apparently missing methods to the J2ME subclass, although I can't test it.
git-svn-id: https://zxing.googlecode.com/svn/trunk@874 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-03-06 16:52:35 +00:00
srowen 6fe022eb10 Normalize GEO: to geo:
git-svn-id: https://zxing.googlecode.com/svn/trunk@873 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-03-06 15:25:26 +00:00
srowen 415c9257d6 Fix #150 again by moving towards a more RFC 2822-compliant definition of valid syntax
git-svn-id: https://zxing.googlecode.com/svn/trunk@872 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-03-06 15:17:38 +00:00
srowen 83f6b96f82 Backed out last 'fix' to email address parsing -- isn't going to work. Needs a better, real fix.
git-svn-id: https://zxing.googlecode.com/svn/trunk@871 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-03-05 02:28:57 +00:00
srowen cf24cfd453 Normalize TEL: to tel: to make sure it works with Android
git-svn-id: https://zxing.googlecode.com/svn/trunk@870 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-03-05 02:26:21 +00:00
srowen ddffcde9f4 Address Issue 152
git-svn-id: https://zxing.googlecode.com/svn/trunk@869 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-03-05 02:19:48 +00:00
srowen b24fbdd7b0 Tiny optimizations to boolean logic to avoid extra byte code and branches in semi-critical sections
git-svn-id: https://zxing.googlecode.com/svn/trunk@867 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-02-23 13:52:45 +00:00
srowen 1e96791817 git-svn-id: https://zxing.googlecode.com/svn/trunk@859 59b500cc-1b3d-0410-9834-0bbf25fbcc57 2009-02-15 12:38:12 +00:00
srowen 8e73582187 A fixed fix for email parsing
git-svn-id: https://zxing.googlecode.com/svn/trunk@858 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-02-15 12:00:52 +00:00
srowen dd1eccfda8 Tighten email check logic a little
git-svn-id: https://zxing.googlecode.com/svn/trunk@857 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-02-15 09:45:52 +00:00
srowen 8e18d651bb Tightened a condition to reduce accidentally detecting the alignment pattern as a finder pattern
git-svn-id: https://zxing.googlecode.com/svn/trunk@856 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-02-15 09:43:40 +00:00
srowen f2a9165b7c Refactored width/height values into superclass and enabled construction of RGBMonochromeBitmapSource from a Bitmap
git-svn-id: https://zxing.googlecode.com/svn/trunk@846 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-02-09 21:25:45 +00:00
srowen 089cc3ac44 Fix Issue 143, failure on invalid geo: URIs
git-svn-id: https://zxing.googlecode.com/svn/trunk@842 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-02-06 13:30:10 +00:00
srowen db61519508 More changes in the direction of supporting ECI in the encoder
git-svn-id: https://zxing.googlecode.com/svn/trunk@837 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-01-31 20:17:43 +00:00
srowen 807c1646b9 Added basic support for caller-specified character encoding
git-svn-id: https://zxing.googlecode.com/svn/trunk@836 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-01-31 00:40:04 +00:00
srowen 1e8155190d Add ALLOWED_LENGTHS hint, for now, in support of ITF
git-svn-id: https://zxing.googlecode.com/svn/trunk@834 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-01-30 17:29:27 +00:00
srowen 4d225d48e1 Fix a nagging inconvenience from my IDE in running tests, due to working directory issues
git-svn-id: https://zxing.googlecode.com/svn/trunk@832 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-01-28 19:03:25 +00:00
srowen bb373c5929 Oops, StringBuffer.append(StringBuffer) doesn't exist in J2ME
git-svn-id: https://zxing.googlecode.com/svn/trunk@831 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-01-27 23:24:23 +00:00
srowen f05302cc4c Actually, let the scanner read codes using structured append -- just ignore these segments and show whatever part of the overall message that this code encodes
git-svn-id: https://zxing.googlecode.com/svn/trunk@830 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-01-21 21:07:00 +00:00
srowen 6a5d483aa5 Issue 127: Add structured append mode and make it clear this is not supported
git-svn-id: https://zxing.googlecode.com/svn/trunk@828 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-01-20 23:15:09 +00:00
srowen 25bdb39ac1 Remove WTK dependency which added little and only made life hard for mac users
git-svn-id: https://zxing.googlecode.com/svn/trunk@825 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-01-15 21:03:37 +00:00
srowen 5efb6ef335 Separated rectangle detection from decoder for reuse
git-svn-id: https://zxing.googlecode.com/svn/trunk@824 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-01-14 10:44:46 +00:00
srowen 37fbeaa36a Small updates from code inspection
git-svn-id: https://zxing.googlecode.com/svn/trunk@823 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-01-10 17:01:34 +00:00
dswitkin 0a885aca56 Added 18 real world DataMatrix blackbox images, plus turned on rotation for the original set.
git-svn-id: https://zxing.googlecode.com/svn/trunk@815 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-01-06 21:11:55 +00:00
srowen d0bc7df5d4 On a tip from Sandy found an error in the QR code detector that would miss a third finder pattern in cases of about 135 degree rotation. This changes test results but is a net win.
git-svn-id: https://zxing.googlecode.com/svn/trunk@814 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2009-01-04 21:11:25 +00:00
srowen 9433c5955b Add more unit tests for client.result, and more small code tweaks.
git-svn-id: https://zxing.googlecode.com/svn/trunk@809 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-12-30 15:31:25 +00:00
dswitkin 3269c66e77 Moved one file back to the ITF directory because it should be readable.
git-svn-id: https://zxing.googlecode.com/svn/trunk@806 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-12-23 17:21:31 +00:00
kev.sully 12a283ebf9 ISSUE: http://code.google.com/p/zxing/issues/detail?id=110
Moved failing test cases to partial.

git-svn-id: https://zxing.googlecode.com/svn/trunk@805 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-12-23 12:11:14 +00:00
kev.sully c1ee018a50 ISSUE: http://code.google.com/p/zxing/issues/detail?id=110
Moved failing test cases to partial.

git-svn-id: https://zxing.googlecode.com/svn/trunk@804 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-12-23 12:10:30 +00:00
dswitkin 96b80c3550 Turned on ITF as a format you can request via hint. Also rejiggered the unit test framework to accept an optional hint so that the ITF unit test runs (and passes) without modifying the source.
git-svn-id: https://zxing.googlecode.com/svn/trunk@803 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-12-22 22:58:58 +00:00
kev.sully 0a3ddd33dc ISSUE: http://code.google.com/p/zxing/issues/detail?id=110
Added more test cases for ITF

git-svn-id: https://zxing.googlecode.com/svn/trunk@802 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-12-22 12:41:14 +00:00
kev.sully 5545bdb317 ISSUE: http://code.google.com/p/zxing/issues/detail?id=110
Added more test cases for ITF

git-svn-id: https://zxing.googlecode.com/svn/trunk@801 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-12-22 12:40:37 +00:00
srowen d242b00126 More small changes from code inspection
git-svn-id: https://zxing.googlecode.com/svn/trunk@800 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-12-21 18:54:58 +00:00
srowen fa59c4e093 Correct exception handling in certain situations so that routine decoding failures do not produce IllegalArgumentException
git-svn-id: https://zxing.googlecode.com/svn/trunk@799 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-12-21 18:40:41 +00:00
dswitkin f50dcf6d27 Added golden results to all of our result parsing unit tests, uncovering and fixing a few subtle bugs in the process. I also expanded a few of them which were lean.
git-svn-id: https://zxing.googlecode.com/svn/trunk@796 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-12-19 20:20:54 +00:00
dswitkin 48480eba95 Fixed crash and bad parsing of an SMS with a question mark in the subject or message.
git-svn-id: https://zxing.googlecode.com/svn/trunk@794 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-12-19 15:00:20 +00:00
srowen 131cfe4c5c More reckless refactoring and code style tweaks -- mostly adding braces around conditional/loops, and using @Override
git-svn-id: https://zxing.googlecode.com/svn/trunk@784 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-12-11 23:34:49 +00:00
srowen 6c5b6849b7 Another attack on integrating encoder and decoder: Version is done. Attempted to rationalize encoding API to deal with strings, not bytes. More code style changes like removal of 'final' on locals and arguments.
git-svn-id: https://zxing.googlecode.com/svn/trunk@781 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-12-10 00:22:14 +00:00
dswitkin f265d0872f Made our parsing code handle uppercase prefixes for a variety of loosely-defined formats.
git-svn-id: https://zxing.googlecode.com/svn/trunk@779 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-12-08 23:08:23 +00:00
srowen 12420b443d Fix apparently-inconsequential typo in QR code encoder test case
git-svn-id: https://zxing.googlecode.com/svn/trunk@778 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-12-05 16:46:53 +00:00
dswitkin 3ef2b0b618 Fixed a bug in geo coordinate display, where we were always tacking on "deg N" and "deg E", which doesn't make sense. Really, N/S/E/W needs to be determined by sign, and the sign removed for W and S. However, since none of that can be translated easily, I removed it, and we now just print lat, long which is an acceptable standard.
I also bumped the Android client to v2.4 final.

git-svn-id: https://zxing.googlecode.com/svn/trunk@776 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-12-03 16:14:56 +00:00
srowen c74735c1b4 Unify handling of Mode too
git-svn-id: https://zxing.googlecode.com/svn/trunk@771 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-12-02 01:30:57 +00:00
srowen 784673a241 Unify handling of EC level between encoder and decoder
git-svn-id: https://zxing.googlecode.com/svn/trunk@770 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-12-02 01:00:18 +00:00
srowen 416193ff9a Big rename of variables and method to have more standard Java names
git-svn-id: https://zxing.googlecode.com/svn/trunk@769 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-12-02 00:31:10 +00:00
srowen 10a90bfecf Some formatting changes, and a few tiny optimizations
git-svn-id: https://zxing.googlecode.com/svn/trunk@768 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-12-02 00:10:46 +00:00
srowen 36e9361184 Some formatting changes, and a few tiny optimizations
git-svn-id: https://zxing.googlecode.com/svn/trunk@767 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-12-01 21:36:58 +00:00
dswitkin c3564411fb Added a new QR Code unit test of real world photos of t-shirts. These are notoriously difficult because the barcodes don't lie completely flat. We're able to decode 33/48 which is better than I thought, although most of the images which fail look within reach.
git-svn-id: https://zxing.googlecode.com/svn/trunk@764 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-26 16:39:34 +00:00
dswitkin 98b34ae187 Made Java naming changes to BitVector.
git-svn-id: https://zxing.googlecode.com/svn/trunk@757 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-21 17:06:52 +00:00
kev.sully afdc4508b7 ISSUE: http://code.google.com/p/zxing/issues/detail?id=110
Changes to fix high nbr of false positives.
- Removed requirement that the barcode fills the viewfinder
- Extended the check on the lenght of decoded barcode - now only 6, 10 and 14 digit barcodes are supported.

git-svn-id: https://zxing.googlecode.com/svn/trunk@756 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-21 16:40:40 +00:00
kev.sully 85506667a7 ISSUE: http://code.google.com/p/zxing/issues/detail?id=110
Changes to fix high nbr of false positives.
- Fixed up the quiet zone checks.
- Validate that the barcode fills the viewfinder
- Check that decoded barcode is min 6 digits


git-svn-id: https://zxing.googlecode.com/svn/trunk@755 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-21 11:25:45 +00:00
kev.sully 1e9123b0af ISSUE: http://code.google.com/p/zxing/issues/detail?id=110
Commented out references to ITFReader until it is validated as production ready.

git-svn-id: https://zxing.googlecode.com/svn/trunk@754 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-21 09:40:13 +00:00
dswitkin 87e0ba7523 Removed some logging from the QR encoder. Nothing in core should be printf'ing - we can always inspect these with a debugger if needed. Also removed the temporary README about this package not compiling.
git-svn-id: https://zxing.googlecode.com/svn/trunk@753 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-20 22:43:20 +00:00
dswitkin 0f648cd1be Ported and rewrote the Renderer unit test to test QRCodeWriter. We encode several barcodes looking for good behavior, and several others which are compared pixel by pixel to golden results stored in PNGs. I'm happy to say we nail the three images Satoru created to the dot!
Along the way, I added support for encoder hints, and no longer hardcode the error correction level.

git-svn-id: https://zxing.googlecode.com/svn/trunk@752 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-20 22:39:31 +00:00
kev.sully dab0c22347 ISSUE: http://code.google.com/p/zxing/issues/detail?id=110
Renamed test cases dir to itf-1 (removed 14 specific reference)

git-svn-id: https://zxing.googlecode.com/svn/trunk@749 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-20 17:34:23 +00:00
kev.sully 7eb787da2e ISSUE: http://code.google.com/p/zxing/issues/detail?id=110
Renamed test cases dir to itf-1 (removed 14 specific reference)

git-svn-id: https://zxing.googlecode.com/svn/trunk@748 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-20 17:33:20 +00:00
kev.sully 8723de9917 ISSUE: http://code.google.com/p/zxing/issues/detail?id=110
Added more test cases for ITF.

git-svn-id: https://zxing.googlecode.com/svn/trunk@747 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-20 17:29:22 +00:00
kev.sully e851b8d293 ISSUE: http://code.google.com/p/zxing/issues/detail?id=110
Added more test cases for ITF.

git-svn-id: https://zxing.googlecode.com/svn/trunk@746 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-20 17:28:52 +00:00
kev.sully b0ef487b31 ISSUE: http://code.google.com/p/zxing/issues/detail?id=110
Renamed ITF14Reader to ITFReader. ITFReader now reads arbitrary number of digits. Added a QuietZone check. Removed checksum validation. Added more test cases.

git-svn-id: https://zxing.googlecode.com/svn/trunk@745 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-20 17:27:12 +00:00
kev.sully 233ae565fe ISSUE: http://code.google.com/p/zxing/issues/detail?id=110
Renamed ITF14Reader to ITFReader. ITFReader now reads arbitrary number of digits. Added a QuietZone check. Removed checksum validation. Added more test cases.

git-svn-id: https://zxing.googlecode.com/svn/trunk@744 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-20 17:26:34 +00:00
srowen 4928f6bd07 git-svn-id: https://zxing.googlecode.com/svn/trunk@743 59b500cc-1b3d-0410-9834-0bbf25fbcc57 2008-11-20 17:10:44 +00:00
dswitkin a8d732d084 Ported over the BitVector bug fix and new unit test from Satoru.
git-svn-id: https://zxing.googlecode.com/svn/trunk@742 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-20 17:08:30 +00:00
srowen 56f194794b Added ITF-14 decoder from Kevin. Not enabled yet as we need to think a bit about how to handle this first. Also, the unit tests aren't passing for me but are for Kevin so I have commented them for the moment.
git-svn-id: https://zxing.googlecode.com/svn/trunk@741 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-20 14:07:19 +00:00
srowen 65be5295c8 Remove Debug and switch to eceptions in Encoder / Writer API
git-svn-id: https://zxing.googlecode.com/svn/trunk@740 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-20 12:26:20 +00:00
dswitkin 8a018c8af8 Changed the Writer interface to provide contents as a String instead of a byte array.
git-svn-id: https://zxing.googlecode.com/svn/trunk@738 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-19 20:12:38 +00:00
dswitkin e7dfffc3d0 Fixed more unit tests.
git-svn-id: https://zxing.googlecode.com/svn/trunk@737 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-19 19:16:16 +00:00
dswitkin a13d3ca04d Fixed testIsValidKanjiSequence(). Looks like the data arrays got copied over wrong from the C++ hex strings.
git-svn-id: https://zxing.googlecode.com/svn/trunk@736 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-19 18:55:28 +00:00
dswitkin bbfd2639d3 Deleted a big honking polynomial table that was unused, and a related class.
git-svn-id: https://zxing.googlecode.com/svn/trunk@735 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-19 18:50:51 +00:00
dswitkin fb840a56ca Did some optimization and cleanup.
git-svn-id: https://zxing.googlecode.com/svn/trunk@734 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-19 18:35:10 +00:00
dswitkin a9b0be8b93 Added the quiet zone to the QRCodeWriter.
git-svn-id: https://zxing.googlecode.com/svn/trunk@733 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-19 16:39:59 +00:00
dswitkin 549771b3de Fixed testInterleaveWithECBytes().
git-svn-id: https://zxing.googlecode.com/svn/trunk@732 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-19 16:04:48 +00:00
dswitkin dbe7f8aa85 Fixed two more tests.
git-svn-id: https://zxing.googlecode.com/svn/trunk@731 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-19 15:51:44 +00:00
srowen 0a1a550a0f Corrected logic to handle case where remainder polynomial has leading 0 coefficients.
git-svn-id: https://zxing.googlecode.com/svn/trunk@730 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-19 12:39:18 +00:00
ccmysen a16d3ba6ef Changes to the matrix and debug classes to make some tests pass.
I'm not super happy about making LOG_INFO a noop, but I don't know the general
solution off hand.

In any case, MatrixUtilTestCase and MaskUtilTestCase both pass now.


git-svn-id: https://zxing.googlecode.com/svn/trunk@729 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-19 09:26:54 +00:00
dswitkin 581464ad21 Fixed a bunch more tests, and commented out all of the Renderer tests for now so everything compiles.
Sean, try commenting out testEncode(). It'll let you run a bit further to see a genuine problem that testInterleaveWithECBytes() finds.

git-svn-id: https://zxing.googlecode.com/svn/trunk@728 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-19 01:58:31 +00:00
dswitkin bafe58d06e Moved ByteArray up to core/common now that it has no dependencies on qrcode/encoder.
git-svn-id: https://zxing.googlecode.com/svn/trunk@727 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-18 23:01:42 +00:00
dswitkin c95fe48a76 Made several good fixes to and because of the unit tests. Turns out the EC array was never being set to the right size. I've now established that the Reed Solomon code is generating one fewer coefficient than the layer above it asked for.
git-svn-id: https://zxing.googlecode.com/svn/trunk@726 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-18 22:54:04 +00:00
dswitkin b5dbec4469 Created a WriterException class and updated a bunch of documentation.
git-svn-id: https://zxing.googlecode.com/svn/trunk@725 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-18 21:46:24 +00:00
dswitkin 1357c87441 Made some incremental progress on the Encoder unit test. I think we've now hit the first real bug in the code.
git-svn-id: https://zxing.googlecode.com/svn/trunk@724 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-18 21:34:17 +00:00
srowen 4883f8cd11 Finally submit tiny change to comments here
git-svn-id: https://zxing.googlecode.com/svn/trunk@722 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-18 21:18:10 +00:00
srowen 604a10e8e5 Replace IllegalStateException; still want to make it WriterException
git-svn-id: https://zxing.googlecode.com/svn/trunk@721 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-18 21:15:30 +00:00
dswitkin 919958c40f Made a small change to allow discovery of multiple email addresses within a Docomo MECARD.
git-svn-id: https://zxing.googlecode.com/svn/trunk@720 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-18 19:44:25 +00:00
ccmysen 559c79e1cc Adding in the rest of the qrcode test cases.
Most of them seem to be having run errors right now, but most of the major
syntax errors are now gone. The main missing feature right now is the use of
the GaloisField polynomial and a working Renderer class.



git-svn-id: https://zxing.googlecode.com/svn/trunk@719 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-18 18:56:19 +00:00
ccmysen e14607e785 Add testdata for the qrcode encoder tests (mainly part of the renderer testcase).
git-svn-id: https://zxing.googlecode.com/svn/trunk@718 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-18 18:17:22 +00:00
dswitkin 83758391f7 My BitVector implementation was totally buggy. I rewrote a lot of it and ported the test case, which now passes.
Now I'm tracking down an assertion in Encoder.InterleaveWithECBytes().

git-svn-id: https://zxing.googlecode.com/svn/trunk@717 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-18 15:34:45 +00:00
dswitkin 8175e2cc25 Created the base Writer object for all barcode encoding, then wrote a QR Code version. A Writer encodes a series of raw bytes into a 2D greyscale bitmap, represented by a ByteArray. This seems like a better container than MonochromeBitmapSource, because we may want shades of grey when encoding future formats. The next step is to hook this up to the Android client.
git-svn-id: https://zxing.googlecode.com/svn/trunk@716 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-17 22:10:45 +00:00
dswitkin 8d79ad7085 Fixed the build.
git-svn-id: https://zxing.googlecode.com/svn/trunk@715 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-17 20:49:10 +00:00
srowen e9a29fb098 move to singleton ReaderException for a bit more performance
git-svn-id: https://zxing.googlecode.com/svn/trunk@714 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-17 17:56:31 +00:00
srowen be59e299dc Add a bit of a hack to better detect UTF-8 in the wild, versus ISO88591
git-svn-id: https://zxing.googlecode.com/svn/trunk@712 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-16 12:46:18 +00:00
srowen 4fcdac3ae7 Change assert to an exception since this facility would not be available in J2ME. I vote for removing use of Debug anyway.
git-svn-id: https://zxing.googlecode.com/svn/trunk@711 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-16 12:03:11 +00:00
srowen 247e7c95bb Now uses new Reed Solomon encoder code
git-svn-id: https://zxing.googlecode.com/svn/trunk@709 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-15 20:23:32 +00:00
srowen c5d81d76d1 Add to result the raw, but parsed, bytes of byte segments in 2D barcodes
git-svn-id: https://zxing.googlecode.com/svn/trunk@708 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-15 13:50:18 +00:00
srowen ce341d92aa Bug fix to unrandomization routine from sanfordsquires
git-svn-id: https://zxing.googlecode.com/svn/trunk@707 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-15 12:58:36 +00:00
srowen 62d9959a3c Remove my old email address from files. Might as well save spammers the trouble.
git-svn-id: https://zxing.googlecode.com/svn/trunk@706 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-15 00:07:25 +00:00
dswitkin aea12b5286 Wrote a new ByteArray class to replace StringPiece and fixed all uses of it. Also converted all uses of stl::string (which was being used as vector<unsigned char>) to ByteArray. Everything in the Encoder but the Reed Solomon related code compiles now.
ByteArray could certainly move up to the common package, although it currently has a dependency on BitVector. We'll have to figure out what to do with the latter first.

This is the first set of changes I've made which are error prone. They involved a lot of pointer conversion, signed/unsigned semantics, etc. These diffs may have clues for later bugs.

git-svn-id: https://zxing.googlecode.com/svn/trunk@705 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-14 21:51:26 +00:00
dswitkin fabdd40edf Huge progress on the Encoder. I'm down to StringPiece errors (that class hasn't been replaced yet) and a few nasty methods, which call into Reed Solomon (not done yet).
git-svn-id: https://zxing.googlecode.com/svn/trunk@704 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-14 18:43:54 +00:00
srowen f80cd1ff51 More enhancements to Reed-Solomon tests
git-svn-id: https://zxing.googlecode.com/svn/trunk@703 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-14 18:34:19 +00:00
dswitkin b625c6f7e5 Got MatrixUtil to compile, and refactored some methods out of it, and into Matrix where they belong.
git-svn-id: https://zxing.googlecode.com/svn/trunk@702 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-14 16:21:05 +00:00
dswitkin 97ffa36734 Did a bunch of comments cleanup.
git-svn-id: https://zxing.googlecode.com/svn/trunk@701 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-14 15:40:38 +00:00
srowen 7cae0d4cc9 Added Reed-Solomon encoder, suitable for QR Code encoding
git-svn-id: https://zxing.googlecode.com/svn/trunk@699 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-14 12:40:55 +00:00
dswitkin 5dba28fc86 Wrote a reasonable implementation of BitVector which now compiles.
git-svn-id: https://zxing.googlecode.com/svn/trunk@698 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-13 21:59:08 +00:00
dswitkin 6f4898c68f Wrote a Matrix class and fixed all uses of it, as well as other small fixes like StringBuffer. MaskUtil and QRCode now compile with no errors.
git-svn-id: https://zxing.googlecode.com/svn/trunk@697 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-13 21:18:56 +00:00
srowen 8666ac2f8f Comment out QR code encoder package for the moment
git-svn-id: https://zxing.googlecode.com/svn/trunk@696 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-13 19:08:25 +00:00
dswitkin 60f3af2607 Converted the Mode and ECLevel enums in QRCode.java.
git-svn-id: https://zxing.googlecode.com/svn/trunk@695 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-13 17:12:53 +00:00
dswitkin f50305895d Began porting the QR Code encoder from ChartServer to Java/ZXing. Some important comments are flagged with JAVAPORT. I've done the following so far:
- Created Java files with our headers, packages, etc.
- Converted includes to imports, or commented out the unresolved dependencies
- Merged all the .h and .cpp contents into Java classes
- Fixed most of the formatting
- Did all the simple transformations (bool, NULL, const, struct, string, ::, ->)
- Created a Debug class to handle all the asserts and logging
- Fixed about half of the static arrays
- Removed some pthread cruft

IMPORTANT:

- Please do not start hacking this code up as I'm going to keep making large changes to it. In particular, we need to leave the trailing underscores on member variables for now. Once everything is compiling with no errors, we can revisit stylistic issues.
- There will be a number of similar classes within the encoder and in the rest of ZXing. We should refactor those later (BitVector and BitArray come to mind). In the mean time, I want to get everything working and the tests passing before we do that.

git-svn-id: https://zxing.googlecode.com/svn/trunk@694 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-13 16:14:44 +00:00
dswitkin cd0ff37fdb Made a small change to the KDDI AU parsing code to handle pronunciation (aka Furigana) specifically.
git-svn-id: https://zxing.googlecode.com/svn/trunk@692 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-12 16:21:19 +00:00
srowen 977c2e38ca Updates from sanfordsquires to fix RS decoding for Datamatrix
git-svn-id: https://zxing.googlecode.com/svn/trunk@689 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-12 13:47:45 +00:00
srowen d56fb38427 Updates from sanfordsquires to fix RS decoding for Datamatrix
git-svn-id: https://zxing.googlecode.com/svn/trunk@688 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-12 12:59:47 +00:00
dswitkin e9a6e8e906 Added support for Furigana using the SOUND field in MECARD. AddressBookParsedResult now has a pronunciation field to represent this. I'm not aware of whether this is supported in other formats like VCARD, so they all pass null for now.
git-svn-id: https://zxing.googlecode.com/svn/trunk@686 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-11 16:31:27 +00:00
srowen ae46d12d21 Partially addressed Reed-Solomon decoding issue for Datamatrix, but not entirely. Still some small issue that prevents correcting as many errors as possible.
git-svn-id: https://zxing.googlecode.com/svn/trunk@680 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-09 16:22:43 +00:00
srowen 04f17f67a6 Made new array fields final
git-svn-id: https://zxing.googlecode.com/svn/trunk@679 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-09 16:20:15 +00:00
srowen 5f817c69b6 Address a small but clear bug in detector logic
git-svn-id: https://zxing.googlecode.com/svn/trunk@678 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-08 14:27:08 +00:00
srowen 41a386f04c Attempt to make encoding detection slightly more accurate -- rule out Shift_JIS in a few more cases
git-svn-id: https://zxing.googlecode.com/svn/trunk@677 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-08 14:25:36 +00:00
srowen 56644b1af2 Small additional error check in decoder
git-svn-id: https://zxing.googlecode.com/svn/trunk@674 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-06 19:14:48 +00:00
dswitkin c4a28fa4a7 Made some temporary changes to make throwing ReaderExceptions more efficient. Long term, we need to delete this class and change the decoders to return errors instead of throwing.
git-svn-id: https://zxing.googlecode.com/svn/trunk@669 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-05 19:16:27 +00:00
srowen e6e3472471 Renamed UPC result type to Product, and introduced an idea of 'product ID' and 'normalized product ID' to account for UPC-E, where the actual visible ID is different from what we may want to search for as a key. Updated clients to use this too.
git-svn-id: https://zxing.googlecode.com/svn/trunk@668 59b500cc-1b3d-0410-9834-0bbf25fbcc57
2008-11-04 12:08:19 +00:00