From e2f7fc348ee0eb008f660d7174fd80c9bbd331b7 Mon Sep 17 00:00:00 2001 From: "smparkes@smparkes.net" Date: Wed, 25 Aug 2010 15:54:19 +0000 Subject: [PATCH 1/1] Issue 494 round luminance values rather than truncate git-svn-id: http://zxing.googlecode.com/svn/trunk@1558 59b500cc-1b3d-0410-9834-0bbf25fbcc57 --- .../com/google/zxing/qrcode/QRCodeBlackBox4TestCase.java | 6 +++--- .../zxing/client/j2se/BufferedImageLuminanceSource.java | 3 ++- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/core/test/src/com/google/zxing/qrcode/QRCodeBlackBox4TestCase.java b/core/test/src/com/google/zxing/qrcode/QRCodeBlackBox4TestCase.java index 3ef4ae6f..7a5c31e0 100644 --- a/core/test/src/com/google/zxing/qrcode/QRCodeBlackBox4TestCase.java +++ b/core/test/src/com/google/zxing/qrcode/QRCodeBlackBox4TestCase.java @@ -29,10 +29,10 @@ public final class QRCodeBlackBox4TestCase extends AbstractBlackBoxTestCase { public QRCodeBlackBox4TestCase() { super("test/data/blackbox/qrcode-4", new MultiFormatReader(), BarcodeFormat.QR_CODE); - addTest(35, 35, 0.0f); + addTest(36, 36, 0.0f); addTest(36, 36, 90.0f); - addTest(34, 34, 180.0f); - addTest(34, 34, 270.0f); + addTest(35, 35, 180.0f); + addTest(35, 35, 270.0f); } } diff --git a/javase/src/com/google/zxing/client/j2se/BufferedImageLuminanceSource.java b/javase/src/com/google/zxing/client/j2se/BufferedImageLuminanceSource.java index 2d613ccf..28b01294 100644 --- a/javase/src/com/google/zxing/client/j2se/BufferedImageLuminanceSource.java +++ b/javase/src/com/google/zxing/client/j2se/BufferedImageLuminanceSource.java @@ -95,7 +95,8 @@ public final class BufferedImageLuminanceSource extends LuminanceSource { int pixel = rgb[offset + x]; int luminance = (306 * ((pixel >> 16) & 0xFF) + 601 * ((pixel >> 8) & 0xFF) + - 117 * (pixel & 0xFF)) >> 10; + 117 * (pixel & 0xFF) + + (0x200)) >> 10; // 0x200 = 1<<9, half an lsb of the result to force rounding matrix[offset + x] = (byte) luminance; } } -- 2.20.1