[SCM] Multi-format 1D/2D barcode image processing library branch, upstream, updated. 24d4480bc48cf9eabf7b2bd2f528248b0e458809

srowen srowen at 59b500cc-1b3d-0410-9834-0bbf25fbcc57
Wed Aug 4 01:31:16 UTC 2010


The following commit has been merged in the upstream branch:
commit 0a8f5e5990a6ea879582eb1ba42ec696ed6f2047
Author: srowen <srowen at 59b500cc-1b3d-0410-9834-0bbf25fbcc57>
Date:   Sun May 2 06:49:18 2010 +0000

    Replace tabs with spaces ( part of accepting another big patch); fix one failing test due to typo
    
    git-svn-id: http://zxing.googlecode.com/svn/trunk@1326 59b500cc-1b3d-0410-9834-0bbf25fbcc57

diff --git a/android-integration/src/com/google/zxing/integration/android/IntentIntegrator.java b/android-integration/src/com/google/zxing/integration/android/IntentIntegrator.java
index c4c2866..b92f86c 100644
--- a/android-integration/src/com/google/zxing/integration/android/IntentIntegrator.java
+++ b/android-integration/src/com/google/zxing/integration/android/IntentIntegrator.java
@@ -137,7 +137,7 @@ public final class IntentIntegrator {
                                          CharSequence stringButtonYes,
                                          CharSequence stringButtonNo) {
 
-	  return initiateScan(activity,
+    return initiateScan(activity,
                         stringTitle,
                         stringMessage,
                         stringButtonYes,
@@ -171,8 +171,8 @@ public final class IntentIntegrator {
 
     // check which types of codes to scan for
     if (stringDesiredBarcodeFormats != null) {
-    	// set the desired barcode types
-    	intentScan.putExtra("SCAN_FORMATS", stringDesiredBarcodeFormats);
+      // set the desired barcode types
+      intentScan.putExtra("SCAN_FORMATS", stringDesiredBarcodeFormats);
     }
 
     try {
diff --git a/android/src/com/google/zxing/client/android/CaptureActivity.java b/android/src/com/google/zxing/client/android/CaptureActivity.java
index f0b8e6f..6b58324 100755
--- a/android/src/com/google/zxing/client/android/CaptureActivity.java
+++ b/android/src/com/google/zxing/client/android/CaptureActivity.java
@@ -588,8 +588,8 @@ public final class CaptureActivity extends Activity implements SurfaceHolder.Cal
           resultHandler.getDisplayContents().toString() + "&source=zxing";
       handler.sendMessageDelayed(message, INTENT_RESULT_DURATION);
     } else if (source == Source.ZXING_LINK) {
-    	// Replace each occurrence of RETURN_CODE_PLACEHOLDER in the returnUrlTemplate
-    	// with the scanned code. This allows both queries and REST-style URLs to work.
+      // Replace each occurrence of RETURN_CODE_PLACEHOLDER in the returnUrlTemplate
+      // with the scanned code. This allows both queries and REST-style URLs to work.
       Message message = Message.obtain(handler, R.id.launch_product_query);
       message.obj = returnUrlTemplate.replace(RETURN_CODE_PLACEHOLDER, resultHandler.getDisplayContents().toString());
       handler.sendMessageDelayed(message, INTENT_RESULT_DURATION);
diff --git a/android/src/com/google/zxing/client/android/book/SearchBookContentsActivity.java b/android/src/com/google/zxing/client/android/book/SearchBookContentsActivity.java
index dfc1e5a..cc8e80c 100644
--- a/android/src/com/google/zxing/client/android/book/SearchBookContentsActivity.java
+++ b/android/src/com/google/zxing/client/android/book/SearchBookContentsActivity.java
@@ -199,7 +199,7 @@ public final class SearchBookContentsActivity extends Activity {
         for (int x = 0; x < count; x++) {
           items.add(parseResult(results.getJSONObject(x)));
         }
-	      resultListView.setOnItemClickListener(new BrowseBookListener(this, items));
+        resultListView.setOnItemClickListener(new BrowseBookListener(this, items));
         resultListView.setAdapter(new SearchBookContentsAdapter(this, items));
       } else {
         String searchable = json.optString("searchable");
@@ -243,7 +243,7 @@ public final class SearchBookContentsActivity extends Activity {
       return new SearchBookContentsResult(pageId, pageNumber, snippet, valid);
     } catch (JSONException e) {
       // Never seen in the wild, just being complete.
-	    return new SearchBookContentsResult(getString(R.string.msg_sbc_no_page_returned), "", "", false);
+      return new SearchBookContentsResult(getString(R.string.msg_sbc_no_page_returned), "", "", false);
     }
   }
 
@@ -267,7 +267,7 @@ public final class SearchBookContentsActivity extends Activity {
         // website, we don't use LocaleManager to change the TLD.
         URI uri;
         if (isbn.startsWith("http://google.com/books?id=")) {
-	        int equals = isbn.indexOf('=');
+          int equals = isbn.indexOf('=');
           String volumeId = isbn.substring(equals + 1);
           uri = new URI("http", null, "www.google.com", -1, "/books", "id=" + volumeId +
                         "&jscmd=SearchWithinVolume2&q=" + query, null);
diff --git a/android/src/com/google/zxing/client/android/book/SearchBookContentsResult.java b/android/src/com/google/zxing/client/android/book/SearchBookContentsResult.java
index cd794b7..9cd5c18 100644
--- a/android/src/com/google/zxing/client/android/book/SearchBookContentsResult.java
+++ b/android/src/com/google/zxing/client/android/book/SearchBookContentsResult.java
@@ -30,8 +30,10 @@ final class SearchBookContentsResult {
   private final String snippet;
   private final boolean validSnippet;
 
-    SearchBookContentsResult(String pageId, String pageNumber, String snippet, 
-			     boolean validSnippet) {
+    SearchBookContentsResult(String pageId,
+                             String pageNumber,
+                             String snippet,
+                             boolean validSnippet) {
     this.pageId = pageId;
     this.pageNumber = pageNumber;
     this.snippet = snippet;
diff --git a/android/src/com/google/zxing/client/android/result/URIResultHandler.java b/android/src/com/google/zxing/client/android/result/URIResultHandler.java
index 7a8e4e9..1f14425 100644
--- a/android/src/com/google/zxing/client/android/result/URIResultHandler.java
+++ b/android/src/com/google/zxing/client/android/result/URIResultHandler.java
@@ -65,7 +65,7 @@ public final class URIResultHandler extends ResultHandler {
         shareBySMS(uri);
         break;
       case 3:
-	      searchBookContents(uri);
+        searchBookContents(uri);
         break;
     }
   }
diff --git a/core/src/com/google/zxing/datamatrix/decoder/DecodedBitStreamParser.java b/core/src/com/google/zxing/datamatrix/decoder/DecodedBitStreamParser.java
index d842f9c..ccea54f 100644
--- a/core/src/com/google/zxing/datamatrix/decoder/DecodedBitStreamParser.java
+++ b/core/src/com/google/zxing/datamatrix/decoder/DecodedBitStreamParser.java
@@ -47,7 +47,7 @@ final class DecodedBitStreamParser {
   private static final char[] C40_SHIFT2_SET_CHARS = {
     '!', '"', '#', '$', '%', '&', '\'', '(', ')', '*', '+', ',', '-', '.',
     '/', ':', ';', '<', '=', '>', '?', '@', '[', '\\', ']', '^', '_'
-	};
+  };
   
   /**
    * See ISO 16022:2006, Annex C Table C.2
@@ -122,54 +122,54 @@ final class DecodedBitStreamParser {
     do {
       int oneByte = bits.readBits(8);
       if (oneByte == 0) {
-	    	throw FormatException.getFormatInstance();
-	    } else if (oneByte <= 128) {  // ASCII data (ASCII value + 1)
-	    	oneByte = upperShift ? (oneByte + 128) : oneByte;
-	    	upperShift = false;
-	    	result.append((char) (oneByte - 1));
-	    	return ASCII_ENCODE;
-	    } else if (oneByte == 129) {  // Pad
-	    	return PAD_ENCODE;
-	    } else if (oneByte <= 229) {  // 2-digit data 00-99 (Numeric Value + 130)
-	      int value = oneByte - 130;
-	      if (value < 10) { // padd with '0' for single digit values
-	        result.append('0');
-	      }
-	    	result.append(value);
-	    } else if (oneByte == 230) {  // Latch to C40 encodation
-	    	return C40_ENCODE;
-	    } else if (oneByte == 231) {  // Latch to Base 256 encodation
-	    	return BASE256_ENCODE;
-	    } else if (oneByte == 232) {  // FNC1
-	    	//throw ReaderException.getInstance();
+        throw FormatException.getFormatInstance();
+      } else if (oneByte <= 128) {  // ASCII data (ASCII value + 1)
+        oneByte = upperShift ? (oneByte + 128) : oneByte;
+        upperShift = false;
+        result.append((char) (oneByte - 1));
+        return ASCII_ENCODE;
+      } else if (oneByte == 129) {  // Pad
+        return PAD_ENCODE;
+      } else if (oneByte <= 229) {  // 2-digit data 00-99 (Numeric Value + 130)
+        int value = oneByte - 130;
+        if (value < 10) { // padd with '0' for single digit values
+          result.append('0');
+        }
+        result.append(value);
+      } else if (oneByte == 230) {  // Latch to C40 encodation
+        return C40_ENCODE;
+      } else if (oneByte == 231) {  // Latch to Base 256 encodation
+        return BASE256_ENCODE;
+      } else if (oneByte == 232) {  // FNC1
+        //throw ReaderException.getInstance();
         // Ignore this symbol for now
-	    } else if (oneByte == 233) {  // Structured Append
-	    	//throw ReaderException.getInstance();
+      } else if (oneByte == 233) {  // Structured Append
+        //throw ReaderException.getInstance();
         // Ignore this symbol for now
-	    } else if (oneByte == 234) {  // Reader Programming
-	    	//throw ReaderException.getInstance();
+      } else if (oneByte == 234) {  // Reader Programming
+        //throw ReaderException.getInstance();
         // Ignore this symbol for now
-	    } else if (oneByte == 235) {  // Upper Shift (shift to Extended ASCII)
-	    	upperShift = true;
-	    } else if (oneByte == 236) {  // 05 Macro
+      } else if (oneByte == 235) {  // Upper Shift (shift to Extended ASCII)
+        upperShift = true;
+      } else if (oneByte == 236) {  // 05 Macro
         result.append("[)>\u001E05\u001D");
         resultTrailer.insert(0, "\u001E\u0004");
       } else if (oneByte == 237) {  // 06 Macro
-	    	result.append("[)>\u001E06\u001D");
+        result.append("[)>\u001E06\u001D");
         resultTrailer.insert(0, "\u001E\u0004");
-	    } else if (oneByte == 238) {  // Latch to ANSI X12 encodation
-	    	return ANSIX12_ENCODE;
-	    } else if (oneByte == 239) {  // Latch to Text encodation
-	    	return TEXT_ENCODE;
-	    } else if (oneByte == 240) {  // Latch to EDIFACT encodation
-	    	return EDIFACT_ENCODE;
-	    } else if (oneByte == 241) {  // ECI Character
-	    	// TODO(bbrown): I think we need to support ECI
-	    	//throw ReaderException.getInstance();
+      } else if (oneByte == 238) {  // Latch to ANSI X12 encodation
+        return ANSIX12_ENCODE;
+      } else if (oneByte == 239) {  // Latch to Text encodation
+        return TEXT_ENCODE;
+      } else if (oneByte == 240) {  // Latch to EDIFACT encodation
+        return EDIFACT_ENCODE;
+      } else if (oneByte == 241) {  // ECI Character
+        // TODO(bbrown): I think we need to support ECI
+        //throw ReaderException.getInstance();
         // Ignore this symbol for now
-	    } else if (oneByte >= 242) {  // Not to be used in ASCII encodation
-	    	throw FormatException.getFormatInstance();
-	    }
+      } else if (oneByte >= 242) {  // Not to be used in ASCII encodation
+        throw FormatException.getFormatInstance();
+      }
     } while (bits.available() > 0);
     return ASCII_ENCODE;
   }
diff --git a/core/src/com/google/zxing/oned/Code128Writer.java b/core/src/com/google/zxing/oned/Code128Writer.java
index 0c22626..22a5d66 100644
--- a/core/src/com/google/zxing/oned/Code128Writer.java
+++ b/core/src/com/google/zxing/oned/Code128Writer.java
@@ -28,46 +28,46 @@ import com.google.zxing.common.BitMatrix;
  */
 public final class Code128Writer extends UPCEANWriter {
 
-	  public BitMatrix encode(String contents,
+    public BitMatrix encode(String contents,
                             BarcodeFormat format,
                             int width,
                             int height,
                             Hashtable hints) throws WriterException {
-	    if (format != BarcodeFormat.CODE_128) {
-	      throw new IllegalArgumentException("Can only encode CODE_128, but got " + format);
-	    }
-	    return super.encode(contents, format, width, height, hints);
-	  }
+      if (format != BarcodeFormat.CODE_128) {
+        throw new IllegalArgumentException("Can only encode CODE_128, but got " + format);
+      }
+      return super.encode(contents, format, width, height, hints);
+    }
 
-	  public byte[] encode(String contents) {
+    public byte[] encode(String contents) {
       int length = contents.length();
-	    if (length > 80) {
-	      throw new IllegalArgumentException(
-	          "Requested contents should be less than 80 digits long, but got " + length);
-	    }
+      if (length > 80) {
+        throw new IllegalArgumentException(
+            "Requested contents should be less than 80 digits long, but got " + length);
+      }
 
-	    int codeWidth = 11 + 11 + 13; //start plus check plus stop character
-	    //get total code width for this barcode
-	    for (int i = 0; i < length; i++) {
+      int codeWidth = 11 + 11 + 13; //start plus check plus stop character
+      //get total code width for this barcode
+      for (int i = 0; i < length; i++) {
         int[] patterns = Code128Reader.CODE_PATTERNS[contents.charAt(i) - ' '];
-	    	for (int j = 0; j < patterns.length; j++)	{
-	    		codeWidth += patterns[j];
-	    	}
-	    }
-	    byte[] result = new byte[codeWidth];
+        for (int j = 0; j < patterns.length; j++)  {
+          codeWidth += patterns[j];
+        }
+      }
+      byte[] result = new byte[codeWidth];
       int pos = appendPattern(result, 0, Code128Reader.CODE_PATTERNS[104], 1);
       int check = 104;
-	    //append next character to bytematrix
-	    for(int i = 0; i < length; i++) {
+      //append next character to bytematrix
+      for(int i = 0; i < length; i++) {
         check += (contents.charAt(i) - ' ') * (i + 1);
-	    	pos += appendPattern(result, pos, Code128Reader.CODE_PATTERNS[contents.charAt(i) - ' '],1);
-	    }
-	    //compute checksum and append it along with end character and quiet space
+        pos += appendPattern(result, pos, Code128Reader.CODE_PATTERNS[contents.charAt(i) - ' '],1);
+      }
+      //compute checksum and append it along with end character and quiet space
       check %= 103;
-	    pos += appendPattern(result,pos,Code128Reader.CODE_PATTERNS[check],1);
-	    pos += appendPattern(result,pos,Code128Reader.CODE_PATTERNS[106],1);
+      pos += appendPattern(result,pos,Code128Reader.CODE_PATTERNS[check],1);
+      pos += appendPattern(result,pos,Code128Reader.CODE_PATTERNS[106],1);
 
-	    return result;
-	  }
+      return result;
+    }
 
 }
\ No newline at end of file
diff --git a/core/src/com/google/zxing/oned/Code39Writer.java b/core/src/com/google/zxing/oned/Code39Writer.java
index fab63b2..dc9cc24 100644
--- a/core/src/com/google/zxing/oned/Code39Writer.java
+++ b/core/src/com/google/zxing/oned/Code39Writer.java
@@ -28,52 +28,55 @@ import com.google.zxing.common.BitMatrix;
  */
 public final class Code39Writer extends UPCEANWriter {
 
-	  public BitMatrix encode(String contents, BarcodeFormat format, int width, int height,
-	      Hashtable hints) throws WriterException {
-	    if (format != BarcodeFormat.CODE_39) {
-	      throw new IllegalArgumentException("Can only encode CODE_39, but got " + format);
-	    }
-	    return super.encode(contents, format, width, height, hints);
-	  }
+  public BitMatrix encode(String contents,
+                          BarcodeFormat format,
+                          int width,
+                          int height,
+                          Hashtable hints) throws WriterException {
+    if (format != BarcodeFormat.CODE_39) {
+      throw new IllegalArgumentException("Can only encode CODE_39, but got " + format);
+    }
+    return super.encode(contents, format, width, height, hints);
+  }
 
-	  public byte[] encode(String contents) {
-      int length = contents.length();
-	    if (length > 80) {
-	      throw new IllegalArgumentException(
-	          "Requested contents should be less than 80 digits long, but got " + length);
-	    }
+  public byte[] encode(String contents) {
+    int length = contents.length();
+    if (length > 80) {
+      throw new IllegalArgumentException(
+          "Requested contents should be less than 80 digits long, but got " + length);
+    }
 
-      int[] widths = new int[9];
-	    int codeWidth = 24 + 1 + length;
-	    for (int i = 0; i < length; i++) {
-	    	int indexInString = Code39Reader.ALPHABET_STRING.indexOf(contents.charAt(i));
-	    	toIntArray(Code39Reader.CHARACTER_ENCODINGS[indexInString], widths);
-	    	for(int j = 0; j < widths.length; j++) {
-          codeWidth += widths[j];
-        }
-	    }
-	    byte[] result = new byte[codeWidth];
-      toIntArray(Code39Reader.CHARACTER_ENCODINGS[39], widths);
-	    int pos = appendPattern(result, 0, widths, 1);
-      int[] narrowWhite = {1};
+    int[] widths = new int[9];
+    int codeWidth = 24 + 1 + length;
+    for (int i = 0; i < length; i++) {
+      int indexInString = Code39Reader.ALPHABET_STRING.indexOf(contents.charAt(i));
+      toIntArray(Code39Reader.CHARACTER_ENCODINGS[indexInString], widths);
+      for(int j = 0; j < widths.length; j++) {
+        codeWidth += widths[j];
+      }
+    }
+    byte[] result = new byte[codeWidth];
+    toIntArray(Code39Reader.CHARACTER_ENCODINGS[39], widths);
+    int pos = appendPattern(result, 0, widths, 1);
+    int[] narrowWhite = {1};
+    pos += appendPattern(result, pos, narrowWhite, 0);
+    //append next character to bytematrix
+    for(int i = length-1; i >= 0; i--) {
+      int indexInString = Code39Reader.ALPHABET_STRING.indexOf(contents.charAt(i));
+      toIntArray(Code39Reader.CHARACTER_ENCODINGS[indexInString], widths);
+      pos += appendPattern(result, pos, widths, 1);
       pos += appendPattern(result, pos, narrowWhite, 0);
-	    //append next character to bytematrix
-	    for(int i = length-1; i >= 0; i--) {
-	    	int indexInString = Code39Reader.ALPHABET_STRING.indexOf(contents.charAt(i));
-	    	toIntArray(Code39Reader.CHARACTER_ENCODINGS[indexInString], widths);
-	    	pos += appendPattern(result, pos, widths, 1);
-	    	pos += appendPattern(result, pos, narrowWhite, 0);
-	    }
-      toIntArray(Code39Reader.CHARACTER_ENCODINGS[39], widths);
-	    pos += appendPattern(result, pos, widths, 1);
-	    return result;
-	  }
-	  
-	  private static void toIntArray(int a, int[] toReturn) {
-		  for (int i = 0; i < 9; i++) {
-			  int temp = a & (1 << i);
-        toReturn[i] = (temp == 0) ? 1 : 2;
-		  }
-	  }
+    }
+    toIntArray(Code39Reader.CHARACTER_ENCODINGS[39], widths);
+    pos += appendPattern(result, pos, widths, 1);
+    return result;
+  }
+
+  private static void toIntArray(int a, int[] toReturn) {
+    for (int i = 0; i < 9; i++) {
+      int temp = a & (1 << i);
+      toReturn[i] = (temp == 0) ? 1 : 2;
+    }
+  }
 
 }
\ No newline at end of file
diff --git a/core/src/com/google/zxing/oned/ITFReader.java b/core/src/com/google/zxing/oned/ITFReader.java
index 74e5acb..c187768 100644
--- a/core/src/com/google/zxing/oned/ITFReader.java
+++ b/core/src/com/google/zxing/oned/ITFReader.java
@@ -340,9 +340,9 @@ public final class ITFReader extends OneDReader {
     }
     if (bestMatch >= 0) {
       return bestMatch;
-		} else {
-			throw NotFoundException.getNotFoundInstance();
-		}
-	}
+    } else {
+      throw NotFoundException.getNotFoundInstance();
+    }
+  }
 
 }
diff --git a/core/src/com/google/zxing/oned/ITFWriter.java b/core/src/com/google/zxing/oned/ITFWriter.java
index b85a652..1967c55 100644
--- a/core/src/com/google/zxing/oned/ITFWriter.java
+++ b/core/src/com/google/zxing/oned/ITFWriter.java
@@ -28,37 +28,41 @@ import com.google.zxing.common.BitMatrix;
  */
 public final class ITFWriter extends UPCEANWriter {
 
-	  public BitMatrix encode(String contents, BarcodeFormat format, int width, int height,
-	      Hashtable hints) throws WriterException {
-	    if (format != BarcodeFormat.ITF) {
-	      throw new IllegalArgumentException("Can only encode ITF, but got " + format);
-	    }
-	    
-	    return super.encode(contents, format, width, height, hints);
-	  }
+  public BitMatrix encode(String contents,
+                          BarcodeFormat format,
+                          int width,
+                          int height,
+                          Hashtable hints) throws WriterException {
+    if (format != BarcodeFormat.ITF) {
+      throw new IllegalArgumentException("Can only encode ITF, but got " + format);
+    }
 
-	  public byte[] encode(String contents) {
-      int length = contents.length();
-	    if (length > 80) {
-	      throw new IllegalArgumentException(
-	          "Requested contents should be less than 80 digits long, but got " + length);
-	    }
-	    byte[] result = new byte[9 + 9 * length];
-	    int[] start = {1, 1, 1, 1};
-      int pos = appendPattern(result, 0, start, 1);
-	    for (int i = 0; i < length; i += 2) {
-        int one = Character.digit(contents.charAt(i), 10);
-        int two = Character.digit(contents.charAt(i+1), 10);
-	    	int[] encoding = new int[18];
-	    	for (int j = 0; j < 10; j += 2) {
-	    		encoding[j] = ITFReader.PATTERNS[one][j];
-	    		encoding[j + 1] = ITFReader.PATTERNS[two][j];
-	    	}
-	    	pos += appendPattern(result, pos, encoding, 1);
-	    }
-      int[] end = {3, 1, 1};
-      pos += appendPattern(result, pos, end, 1);
+    return super.encode(contents, format, width, height, hints);
+  }
+
+  public byte[] encode(String contents) {
+    int length = contents.length();
+    if (length > 80) {
+      throw new IllegalArgumentException(
+          "Requested contents should be less than 80 digits long, but got " + length);
+    }
+    byte[] result = new byte[9 + 9 * length];
+    int[] start = {1, 1, 1, 1};
+    int pos = appendPattern(result, 0, start, 1);
+    for (int i = 0; i < length; i += 2) {
+      int one = Character.digit(contents.charAt(i), 10);
+      int two = Character.digit(contents.charAt(i+1), 10);
+      int[] encoding = new int[18];
+      for (int j = 0; j < 10; j += 2) {
+        encoding[j] = ITFReader.PATTERNS[one][j];
+        encoding[j + 1] = ITFReader.PATTERNS[two][j];
+      }
+      pos += appendPattern(result, pos, encoding, 1);
+    }
+    int[] end = {3, 1, 1};
+    pos += appendPattern(result, pos, end, 1);
+
+    return result;
+  }
 
-	    return result;
-	  }
 }
\ No newline at end of file
diff --git a/core/src/com/google/zxing/pdf417/decoder/DecodedBitStreamParser.java b/core/src/com/google/zxing/pdf417/decoder/DecodedBitStreamParser.java
index 8b801f3..a5048df 100644
--- a/core/src/com/google/zxing/pdf417/decoder/DecodedBitStreamParser.java
+++ b/core/src/com/google/zxing/pdf417/decoder/DecodedBitStreamParser.java
@@ -446,7 +446,7 @@ final class DecodedBitStreamParser {
             code == BEGIN_MACRO_PDF417_CONTROL_BLOCK ||
             code == BEGIN_MACRO_PDF417_OPTIONAL_FIELD ||
             code == MACRO_PDF417_TERMINATOR) {
-	        codeIndex--;
+          codeIndex--;
           end = true;          
         }
       }
diff --git a/core/src/com/google/zxing/pdf417/decoder/Decoder.java b/core/src/com/google/zxing/pdf417/decoder/Decoder.java
index 1936c5a..ece3acd 100644
--- a/core/src/com/google/zxing/pdf417/decoder/Decoder.java
+++ b/core/src/com/google/zxing/pdf417/decoder/Decoder.java
@@ -145,5 +145,6 @@ public final class Decoder {
       }
     }
     return result;
-	}
+  }
+
 }
diff --git a/core/test/src/com/google/zxing/client/result/ParsedReaderResultTestCase.java b/core/test/src/com/google/zxing/client/result/ParsedReaderResultTestCase.java
index df66383..da5fec6 100644
--- a/core/test/src/com/google/zxing/client/result/ParsedReaderResultTestCase.java
+++ b/core/test/src/com/google/zxing/client/result/ParsedReaderResultTestCase.java
@@ -202,11 +202,11 @@ public final class ParsedReaderResultTestCase extends TestCase {
         "DTEND:20080505\r\nEND:VEVENT", "foo\n20080504\n20080505", ParsedResultType.CALENDAR);
     // Start time only
     doTestResult("BEGIN:VEVENT\r\nSUMMARY:foo\r\nDTSTART:20080504T123456Z\r\nEND:VEVENT",
-        "foo\n20080504T123456Z", ParsedResultType.CALENDAR);
+        "foo\n20080504T123456Z\n20080504T123456Z", ParsedResultType.CALENDAR);
     doTestResult("BEGIN:VEVENT\r\nSUMMARY:foo\r\nDTSTART:20080504T123456\r\nEND:VEVENT",
-        "foo\n20080504T123456", ParsedResultType.CALENDAR);
+        "foo\n20080504T123456\n20080504T123456", ParsedResultType.CALENDAR);
     doTestResult("BEGIN:VEVENT\r\nSUMMARY:foo\r\nDTSTART:20080504\r\nEND:VEVENT",
-        "foo\n20080504", ParsedResultType.CALENDAR);
+        "foo\n20080504\n20080504", ParsedResultType.CALENDAR);
     doTestResult("BEGIN:VEVENT\r\nDTEND:20080505T\r\nEND:VEVENT",
         "BEGIN:VEVENT\r\nDTEND:20080505T\r\nEND:VEVENT", ParsedResultType.TEXT);
     // Make sure illegal entries without newlines don't crash
diff --git a/core/test/src/com/google/zxing/qrcode/encoder/EncoderTestCase.java b/core/test/src/com/google/zxing/qrcode/encoder/EncoderTestCase.java
index 89912fa..b452a8b 100644
--- a/core/test/src/com/google/zxing/qrcode/encoder/EncoderTestCase.java
+++ b/core/test/src/com/google/zxing/qrcode/encoder/EncoderTestCase.java
@@ -136,33 +136,33 @@ public final class EncoderTestCase extends TestCase {
     {
       BitArray bits = new BitArray();
       Encoder.appendLengthInfo(1,  // 1 letter (1/1).
-						  1,  // version 1.
-						  Mode.NUMERIC,
-						  bits);
+                               1,  // version 1.
+                               Mode.NUMERIC,
+                               bits);
       assertEquals(" ........ .X", bits.toString());  // 10 bits.
     }
     {
       BitArray bits = new BitArray();
       Encoder.appendLengthInfo(2,  // 2 letters (2/1).
-						  10,  // version 10.
-						  Mode.ALPHANUMERIC,
-						  bits);
+                               10,  // version 10.
+                               Mode.ALPHANUMERIC,
+                               bits);
       assertEquals(" ........ .X.", bits.toString());  // 11 bits.
     }
     {
       BitArray bits = new BitArray();
       Encoder.appendLengthInfo(255,  // 255 letter (255/1).
-						  27,  // version 27.
-						  Mode.BYTE,
-						  bits);
+                               27,  // version 27.
+                               Mode.BYTE,
+                               bits);
       assertEquals(" ........ XXXXXXXX", bits.toString());  // 16 bits.
     }
     {
       BitArray bits = new BitArray();
       Encoder.appendLengthInfo(512,  // 512 letters (1024/2).
-						  40,  // version 40.
-						  Mode.KANJI,
-						  bits);
+                               40,  // version 40.
+                               Mode.KANJI,
+                               bits);
       assertEquals(" ..X..... ....", bits.toString());  // 12 bits.
     }
   }
diff --git a/core/test/src/com/google/zxing/qrcode/encoder/MatrixUtilTestCase.java b/core/test/src/com/google/zxing/qrcode/encoder/MatrixUtilTestCase.java
index 87336dc..ecb8b4b 100644
--- a/core/test/src/com/google/zxing/qrcode/encoder/MatrixUtilTestCase.java
+++ b/core/test/src/com/google/zxing/qrcode/encoder/MatrixUtilTestCase.java
@@ -54,27 +54,27 @@ public final class MatrixUtilTestCase extends TestCase {
     {
       // Version 1.
       String expected =
-	" 1 1 1 1 1 1 1 0           0 1 1 1 1 1 1 1\n" +
-	" 1 0 0 0 0 0 1 0           0 1 0 0 0 0 0 1\n" +
-	" 1 0 1 1 1 0 1 0           0 1 0 1 1 1 0 1\n" +
-	" 1 0 1 1 1 0 1 0           0 1 0 1 1 1 0 1\n" +
-	" 1 0 1 1 1 0 1 0           0 1 0 1 1 1 0 1\n" +
-	" 1 0 0 0 0 0 1 0           0 1 0 0 0 0 0 1\n" +
-	" 1 1 1 1 1 1 1 0 1 0 1 0 1 0 1 1 1 1 1 1 1\n" +
-	" 0 0 0 0 0 0 0 0           0 0 0 0 0 0 0 0\n" +
-	"             1                            \n" +
-	"             0                            \n" +
-	"             1                            \n" +
-	"             0                            \n" +
-	"             1                            \n" +
-	" 0 0 0 0 0 0 0 0 1                        \n" +
-	" 1 1 1 1 1 1 1 0                          \n" +
-	" 1 0 0 0 0 0 1 0                          \n" +
-	" 1 0 1 1 1 0 1 0                          \n" +
-	" 1 0 1 1 1 0 1 0                          \n" +
-	" 1 0 1 1 1 0 1 0                          \n" +
-	" 1 0 0 0 0 0 1 0                          \n" +
-	" 1 1 1 1 1 1 1 0                          \n";
+        " 1 1 1 1 1 1 1 0           0 1 1 1 1 1 1 1\n" +
+        " 1 0 0 0 0 0 1 0           0 1 0 0 0 0 0 1\n" +
+        " 1 0 1 1 1 0 1 0           0 1 0 1 1 1 0 1\n" +
+        " 1 0 1 1 1 0 1 0           0 1 0 1 1 1 0 1\n" +
+        " 1 0 1 1 1 0 1 0           0 1 0 1 1 1 0 1\n" +
+        " 1 0 0 0 0 0 1 0           0 1 0 0 0 0 0 1\n" +
+        " 1 1 1 1 1 1 1 0 1 0 1 0 1 0 1 1 1 1 1 1 1\n" +
+        " 0 0 0 0 0 0 0 0           0 0 0 0 0 0 0 0\n" +
+        "             1                            \n" +
+        "             0                            \n" +
+        "             1                            \n" +
+        "             0                            \n" +
+        "             1                            \n" +
+        " 0 0 0 0 0 0 0 0 1                        \n" +
+        " 1 1 1 1 1 1 1 0                          \n" +
+        " 1 0 0 0 0 0 1 0                          \n" +
+        " 1 0 1 1 1 0 1 0                          \n" +
+        " 1 0 1 1 1 0 1 0                          \n" +
+        " 1 0 1 1 1 0 1 0                          \n" +
+        " 1 0 0 0 0 0 1 0                          \n" +
+        " 1 1 1 1 1 1 1 0                          \n";
       ByteMatrix matrix = new ByteMatrix(21, 21);
       MatrixUtil.clearMatrix(matrix);
       MatrixUtil.embedBasicPatterns(1, matrix);
@@ -84,31 +84,31 @@ public final class MatrixUtilTestCase extends TestCase {
       // Version 2.  Position adjustment pattern should apppear at right
       // bottom corner.
       String expected =
-	" 1 1 1 1 1 1 1 0                   0 1 1 1 1 1 1 1\n" +
-	" 1 0 0 0 0 0 1 0                   0 1 0 0 0 0 0 1\n" +
-	" 1 0 1 1 1 0 1 0                   0 1 0 1 1 1 0 1\n" +
-	" 1 0 1 1 1 0 1 0                   0 1 0 1 1 1 0 1\n" +
-	" 1 0 1 1 1 0 1 0                   0 1 0 1 1 1 0 1\n" +
-	" 1 0 0 0 0 0 1 0                   0 1 0 0 0 0 0 1\n" +
-	" 1 1 1 1 1 1 1 0 1 0 1 0 1 0 1 0 1 0 1 1 1 1 1 1 1\n" +
-	" 0 0 0 0 0 0 0 0                   0 0 0 0 0 0 0 0\n" +
-	"             1                                    \n" +
-	"             0                                    \n" +
-	"             1                                    \n" +
-	"             0                                    \n" +
-	"             1                                    \n" +
-	"             0                                    \n" +
-	"             1                                    \n" +
-	"             0                                    \n" +
-	"             1                   1 1 1 1 1        \n" +
-	" 0 0 0 0 0 0 0 0 1               1 0 0 0 1        \n" +
-	" 1 1 1 1 1 1 1 0                 1 0 1 0 1        \n" +
-	" 1 0 0 0 0 0 1 0                 1 0 0 0 1        \n" +
-	" 1 0 1 1 1 0 1 0                 1 1 1 1 1        \n" +
-	" 1 0 1 1 1 0 1 0                                  \n" +
-	" 1 0 1 1 1 0 1 0                                  \n" +
-	" 1 0 0 0 0 0 1 0                                  \n" +
-	" 1 1 1 1 1 1 1 0                                  \n";
+        " 1 1 1 1 1 1 1 0                   0 1 1 1 1 1 1 1\n" +
+        " 1 0 0 0 0 0 1 0                   0 1 0 0 0 0 0 1\n" +
+        " 1 0 1 1 1 0 1 0                   0 1 0 1 1 1 0 1\n" +
+        " 1 0 1 1 1 0 1 0                   0 1 0 1 1 1 0 1\n" +
+        " 1 0 1 1 1 0 1 0                   0 1 0 1 1 1 0 1\n" +
+        " 1 0 0 0 0 0 1 0                   0 1 0 0 0 0 0 1\n" +
+        " 1 1 1 1 1 1 1 0 1 0 1 0 1 0 1 0 1 0 1 1 1 1 1 1 1\n" +
+        " 0 0 0 0 0 0 0 0                   0 0 0 0 0 0 0 0\n" +
+        "             1                                    \n" +
+        "             0                                    \n" +
+        "             1                                    \n" +
+        "             0                                    \n" +
+        "             1                                    \n" +
+        "             0                                    \n" +
+        "             1                                    \n" +
+        "             0                                    \n" +
+        "             1                   1 1 1 1 1        \n" +
+        " 0 0 0 0 0 0 0 0 1               1 0 0 0 1        \n" +
+        " 1 1 1 1 1 1 1 0                 1 0 1 0 1        \n" +
+        " 1 0 0 0 0 0 1 0                 1 0 0 0 1        \n" +
+        " 1 0 1 1 1 0 1 0                 1 1 1 1 1        \n" +
+        " 1 0 1 1 1 0 1 0                                  \n" +
+        " 1 0 1 1 1 0 1 0                                  \n" +
+        " 1 0 0 0 0 0 1 0                                  \n" +
+        " 1 1 1 1 1 1 1 0                                  \n";
       ByteMatrix matrix = new ByteMatrix(25, 25);
       MatrixUtil.clearMatrix(matrix);
       MatrixUtil.embedBasicPatterns(2, matrix);
@@ -235,18 +235,18 @@ public final class MatrixUtilTestCase extends TestCase {
       " 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 1 0 0\n" +
       " 1 1 1 1 1 1 1 0 0 0 1 1 1 1 1 0 1 0 0 1 0\n";
     char[] bytes = {32, 65, 205, 69, 41, 220, 46, 128, 236,
-		    42, 159, 74, 221, 244, 169, 239, 150, 138,
-		    70, 237, 85, 224, 96, 74, 219 , 61};
+        42, 159, 74, 221, 244, 169, 239, 150, 138,
+        70, 237, 85, 224, 96, 74, 219 , 61};
     BitArray bits = new BitArray();
     for (char c: bytes) {
       bits.appendBits(c, 8);
     }
     ByteMatrix matrix = new ByteMatrix(21, 21);
     MatrixUtil.buildMatrix(bits,
-					      ErrorCorrectionLevel.H,
-					      1,  // Version 1
-					      3,  // Mask pattern 3
-					      matrix);
+                           ErrorCorrectionLevel.H,
+                           1,  // Version 1
+                           3,  // Mask pattern 3
+                           matrix);
   }
 
   public void testFindMSBSet() {
@@ -290,8 +290,7 @@ public final class MatrixUtilTestCase extends TestCase {
   public void testMakeTypeInfoInfoBits() throws WriterException {
     // From Appendix C in JISX0510:2004 (p 65)
     BitArray bits = new BitArray();
-    MatrixUtil.makeTypeInfoBits(ErrorCorrectionLevel.M,
-						   5, bits);
+    MatrixUtil.makeTypeInfoBits(ErrorCorrectionLevel.M, 5, bits);
     assertEquals(" X......X X..XXX.", bits.toString());
   }
 }
diff --git a/core/test/src/com/google/zxing/qrcode/encoder/QRCodeTestCase.java b/core/test/src/com/google/zxing/qrcode/encoder/QRCodeTestCase.java
index 3e25d76..aa1295c 100644
--- a/core/test/src/com/google/zxing/qrcode/encoder/QRCodeTestCase.java
+++ b/core/test/src/com/google/zxing/qrcode/encoder/QRCodeTestCase.java
@@ -83,55 +83,55 @@ public final class QRCodeTestCase extends TestCase {
     {
       QRCode qrCode = new QRCode();
       String expected =
-	"<<\n" +
-	" mode: null\n" +
-	" ecLevel: null\n" +
-	" version: -1\n" +
-	" matrixWidth: -1\n" +
-	" maskPattern: -1\n" +
-	" numTotalBytes: -1\n" +
-	" numDataBytes: -1\n" +
-	" numECBytes: -1\n" +
-	" numRSBlocks: -1\n" +
-	" matrix: null\n" +
-	">>\n";
+        "<<\n" +
+        " mode: null\n" +
+        " ecLevel: null\n" +
+        " version: -1\n" +
+        " matrixWidth: -1\n" +
+        " maskPattern: -1\n" +
+        " numTotalBytes: -1\n" +
+        " numDataBytes: -1\n" +
+        " numECBytes: -1\n" +
+        " numRSBlocks: -1\n" +
+        " matrix: null\n" +
+        ">>\n";
       assertEquals(expected, qrCode.toString());
     }
     {
       String expected =
-	"<<\n" +
-	" mode: BYTE\n" +
-	" ecLevel: H\n" +
-	" version: 1\n" +
-	" matrixWidth: 21\n" +
-	" maskPattern: 3\n" +
-	" numTotalBytes: 26\n" +
-	" numDataBytes: 9\n" +
-	" numECBytes: 17\n" +
-	" numRSBlocks: 1\n" +
-	" matrix:\n" +
-	" 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0\n" +
-	" 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1\n" +
-	" 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0\n" +
-	" 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1\n" +
-	" 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0\n" +
-	" 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1\n" +
-	" 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0\n" +
-	" 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1\n" +
-	" 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0\n" +
-	" 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1\n" +
-	" 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0\n" +
-	" 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1\n" +
-	" 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0\n" +
-	" 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1\n" +
-	" 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0\n" +
-	" 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1\n" +
-	" 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0\n" +
-	" 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1\n" +
-	" 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0\n" +
-	" 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1\n" +
-	" 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0\n" +
-	">>\n";
+        "<<\n" +
+        " mode: BYTE\n" +
+        " ecLevel: H\n" +
+        " version: 1\n" +
+        " matrixWidth: 21\n" +
+        " maskPattern: 3\n" +
+        " numTotalBytes: 26\n" +
+        " numDataBytes: 9\n" +
+        " numECBytes: 17\n" +
+        " numRSBlocks: 1\n" +
+        " matrix:\n" +
+        " 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0\n" +
+        " 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1\n" +
+        " 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0\n" +
+        " 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1\n" +
+        " 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0\n" +
+        " 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1\n" +
+        " 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0\n" +
+        " 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1\n" +
+        " 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0\n" +
+        " 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1\n" +
+        " 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0\n" +
+        " 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1\n" +
+        " 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0\n" +
+        " 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1\n" +
+        " 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0\n" +
+        " 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1\n" +
+        " 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0\n" +
+        " 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1\n" +
+        " 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0\n" +
+        " 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1\n" +
+        " 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0\n" +
+        ">>\n";
       QRCode qrCode = new QRCode();
       qrCode.setMode(Mode.BYTE);
       qrCode.setECLevel(ErrorCorrectionLevel.H);
diff --git a/jruby/lib/zxing.rb b/jruby/lib/zxing.rb
index 506161d..09a6a19 100644
--- a/jruby/lib/zxing.rb
+++ b/jruby/lib/zxing.rb
@@ -1,7 +1,7 @@
 raise "ZXing requires JRuby" unless defined?(JRuby)
 
-require File.expand_path( File.dirname(__FILE__) + '/core.jar' )	  # ZXing core classes
-require File.expand_path( File.dirname(__FILE__) + '/javase.jar' )	# ZXing JavaSE classes
+require File.expand_path( File.dirname(__FILE__) + '/core.jar' )    # ZXing core classes
+require File.expand_path( File.dirname(__FILE__) + '/javase.jar' )  # ZXing JavaSE classes
 
 require 'uri'
 
diff --git a/zxing.appspot.com/generator/src/com/google/zxing/web/generator/Generator.gwt.xml b/zxing.appspot.com/generator/src/com/google/zxing/web/generator/Generator.gwt.xml
index ddebe29..145cedb 100644
--- a/zxing.appspot.com/generator/src/com/google/zxing/web/generator/Generator.gwt.xml
+++ b/zxing.appspot.com/generator/src/com/google/zxing/web/generator/Generator.gwt.xml
@@ -1,21 +1,16 @@
 <module>
       <!-- Inherit the core Web Toolkit stuff.                        -->
       <inherits name='com.google.gwt.user.User'/>
-	
       <!-- Inherit the default GWT style sheet.                       -->
       <inherits name='com.google.gwt.user.theme.standard.Standard'/>
-
       <!-- Other module inherits                                      -->
       <inherits name='com.google.gwt.widgetideas.WidgetIdeas' />
       <inherits name='com.google.gwt.libideas.LibIdeas' />
       <inherits name='com.google.gwt.maps.GoogleMaps' />
-
       <!-- Specify the app entry point class.                         -->
       <entry-point class='com.google.zxing.web.generator.client.Generator'/>
-    
       <!-- Specify the application specific style sheet.              -->
       <stylesheet src='Generator.css' />
       <stylesheet src='DatePickerDemo.css' />
-      
       <script src='http://maps.google.com/maps?file=api&amp;v=2&amp;key=ABQIAAAAjEOGGB_IEuss4QYUzB6Z0BRlY4xXjGBjgubjQXCS8Djm2jdpYBQn9f8dHtxpg30ararqd3GCyq_T4A' />
 </module>
diff --git a/zxing.appspot.com/generator/src/com/google/zxing/web/generator/client/GeneratorException.java b/zxing.appspot.com/generator/src/com/google/zxing/web/generator/client/GeneratorException.java
index d6f127f..ede4d9f 100644
--- a/zxing.appspot.com/generator/src/com/google/zxing/web/generator/client/GeneratorException.java
+++ b/zxing.appspot.com/generator/src/com/google/zxing/web/generator/client/GeneratorException.java
@@ -24,9 +24,7 @@ package com.google.zxing.web.generator.client;
  * @author Yohann Coppel
  */
 public class GeneratorException extends Exception {
-	private static final long serialVersionUID = 1L;
-
-	public GeneratorException(String message) {
-		super(message);
-	}
+  public GeneratorException(String message) {
+    super(message);
+  }
 }
diff --git a/zxing.appspot.com/generator/src/com/google/zxing/web/generator/public/Generator.css b/zxing.appspot.com/generator/src/com/google/zxing/web/generator/public/Generator.css
index 3339597..f31e5f4 100644
--- a/zxing.appspot.com/generator/src/com/google/zxing/web/generator/public/Generator.css
+++ b/zxing.appspot.com/generator/src/com/google/zxing/web/generator/public/Generator.css
@@ -6,12 +6,10 @@ body {
   font-family: Arial, sans-serif;
   font-size: 11px;
 }
-
 #header {
   background-color: #dde3e9;
   border-bottom: 1px solid #f2f7fc;
 }
-
 #header h1 {
   font-size: 15px;
   font-weight: bold;
@@ -19,23 +17,19 @@ body {
   padding: 12px;
   border-bottom: 1px solid #c8d0d9;
 }
-
 #header span {
   font-weight: normal;
   color: #5e6b75;
 }
-
 #footer {
   width: 100%;
   text-align:center;
   padding-top: 12px;
 }
-
 #footer a {
   text-decoration:none;
   color: #5e6b75;
 }
-
 /****************************************/
 #mainpanel {
   width: 800px;
@@ -43,7 +37,6 @@ body {
   padding: 12px;
   font-size: 11px;
 }
-
 #imageresult {
   background-color: #dde3e9;
   height: 350px;
@@ -56,7 +49,6 @@ body {
   display: table;
   #position: relative;
 }
-
 #innerresult {
   display: table-cell;
   vertical-align: middle;
@@ -64,20 +56,16 @@ body {
   #position: absolute;
   #top: 50%;
 }
-  
 #innerresult img {
    #position: relative;
    #top: -50%;
 }
-  
 #downloadText {
   font-size: 11px;
 }
-
 #urlresult {
   width: 350px;
 }
-
 .firstColumn {
   width: 100px;
   text-align: right;
@@ -87,14 +75,12 @@ body {
   font-weight: bold;
   font-size: 11px;
 }
-
 .secondColumn {
   width: 270px;
   font-size: 11px;
   color: #5e6b75;
   font-weight: bold;
 }
-
 /*.inputfield,*/
 .gwt-TextBox,
 .gwt-TextArea {
@@ -106,19 +92,15 @@ body {
   color: #000;
   font-weight: normal;
 }
-
 /*.inputfield:focus,*/
 .gwt-TextBox:focus {
   background-color: #fffbcc;
 }
-
 .required {
   background: #ffffff url(required-field-bg.png) repeat-y;
 }
-
 .errorMessage {
   padding-left: 110px;
   font-size: 11px;
   color: red;
 }
-	
\ No newline at end of file
diff --git a/zxing.appspot.com/static/style.css b/zxing.appspot.com/static/style.css
index 18b115c..4f3bd7e 100644
--- a/zxing.appspot.com/static/style.css
+++ b/zxing.appspot.com/static/style.css
@@ -1,40 +1,34 @@
 /** CSS by Wain. */
 body {
-	background-color: #e9eef3;
-	margin: 0;
-	padding: 0;
-	font-family: Arial, sans-serif;
+  background-color: #e9eef3;
+  margin: 0;
+  padding: 0;
+  font-family: Arial, sans-serif;
   font-size: 12px;
 }
-
 td {
   font-size: 14px;
 }
-
 #header {
-	background-color: #dde3e9;
-	border-bottom: 1px solid #f2f7fc;
+  background-color: #dde3e9;
+  border-bottom: 1px solid #f2f7fc;
 }
-
 #header h1 {
-	font-size: 15px;
-	font-weight: bold;
-	margin: 0;
-	padding: 12px;
-	border-bottom: 1px solid #c8d0d9;
+  font-size: 15px;
+  font-weight: bold;
+  margin: 0;
+  padding: 12px;
+  border-bottom: 1px solid #c8d0d9;
 }
-
 #header span {
-	font-weight: normal;
-	color: #5e6b75;
+  font-weight: normal;
+  color: #5e6b75;
 }
-
 #footer {
-	width: 100%;
+  width: 100%;
   text-align:center;
   padding-top: 12px;
 }
-
 #footer a {
   text-decoration:none;
   color: #5e6b75;

-- 
Multi-format 1D/2D barcode image processing library



More information about the Pkg-google-commits mailing list