import com.google.zxing.ReaderException;
import com.google.zxing.Result;
import com.google.zxing.ResultPoint;
+import com.google.zxing.ResultMetadataType;
import com.google.zxing.common.BitMatrix;
import com.google.zxing.common.DecoderResult;
import com.google.zxing.common.DetectorResult;
decoderResult = decoder.decode(bits);
points = NO_POINTS;
} else {
- DetectorResult result = new Detector(image).detect();
- decoderResult = decoder.decode(result.getBits());
- points = result.getPoints();
+ DetectorResult detectorResult = new Detector(image).detect();
+ decoderResult = decoder.decode(detectorResult.getBits());
+ points = detectorResult.getPoints();
}
- return new Result(decoderResult.getText(), decoderResult.getRawBytes(), points, BarcodeFormat.DATAMATRIX);
+ Result result = new Result(decoderResult.getText(), decoderResult.getRawBytes(), points, BarcodeFormat.DATAMATRIX);
+ if (decoderResult.getByteSegments() != null) {
+ result.putMetadata(ResultMetadataType.BYTE_SEGMENTS, decoderResult.getByteSegments());
+ }
+ return result;
}
/**