Completely removed rectangle cleanup code, 1D codes seem to need this padding

This commit is contained in:
Sylvia van Os
2019-12-08 18:15:08 +01:00
parent 08afc16d01
commit 61c2c0c84a

View File

@@ -112,30 +112,13 @@ class BarcodeImageWriterTask extends AsyncTask<Void, Void, Bitmap>
int bitMatrixWidth = bitMatrix.getWidth();
int bitMatrixHeight = bitMatrix.getHeight();
// Returns: left,top,width,height enclosing rectangle of all 1 bits, or null if it is all white
int[] enclosingRectangle = bitMatrix.getEnclosingRectangle();
// We add 20 pixels on all sides to ensure small intentional padding around the barcodes isn't removed
int left = enclosingRectangle != null ? enclosingRectangle[0] - 20 : 0;
int top = enclosingRectangle != null ? enclosingRectangle[1] - 20 : 0;
int right = enclosingRectangle != null ? (enclosingRectangle[0] + enclosingRectangle[2] + 20) : bitMatrixWidth;
int bottom = enclosingRectangle != null ? (enclosingRectangle[1] + enclosingRectangle[3] + 20) : bitMatrixHeight;
int[] pixels = new int[bitMatrixWidth * bitMatrixHeight];
for (int y = 0; y < bitMatrixHeight; y++)
{
if(y < top || y >= bottom)
{
continue;
}
int offset = y * bitMatrixWidth;
for (int x = 0; x < bitMatrixWidth; x++)
{
if(x < left || x >= right)
{
continue;
}
int color = bitMatrix.get(x, y) ? BLACK : WHITE;
pixels[offset + x] = color;
}