| Index: xfa/src/fxbarcode/common/BC_GlobalHistogramBinarizer.cpp
|
| diff --git a/xfa/src/fxbarcode/common/BC_GlobalHistogramBinarizer.cpp b/xfa/src/fxbarcode/common/BC_GlobalHistogramBinarizer.cpp
|
| index 7ef1671d98ca2e5bb4b43c8cdcaf66bb4248919b..5976d450d9bf9033712d8921bc53054d2731fade 100644
|
| --- a/xfa/src/fxbarcode/common/BC_GlobalHistogramBinarizer.cpp
|
| +++ b/xfa/src/fxbarcode/common/BC_GlobalHistogramBinarizer.cpp
|
| @@ -26,19 +26,19 @@
|
| #include "BC_CommonBitMatrix.h"
|
| #include "BC_CommonBitArray.h"
|
| #include "BC_GlobalHistogramBinarizer.h"
|
| -const FX_INT32 LUMINANCE_BITS = 5;
|
| -const FX_INT32 LUMINANCE_SHIFT = 8 - LUMINANCE_BITS;
|
| -const FX_INT32 LUMINANCE_BUCKETS = 1 << LUMINANCE_BITS;
|
| +const int32_t LUMINANCE_BITS = 5;
|
| +const int32_t LUMINANCE_SHIFT = 8 - LUMINANCE_BITS;
|
| +const int32_t LUMINANCE_BUCKETS = 1 << LUMINANCE_BITS;
|
| CBC_GlobalHistogramBinarizer::CBC_GlobalHistogramBinarizer(CBC_LuminanceSource *source): CBC_Binarizer(source)
|
| {
|
| }
|
| CBC_GlobalHistogramBinarizer::~CBC_GlobalHistogramBinarizer()
|
| {
|
| }
|
| -CBC_CommonBitArray *CBC_GlobalHistogramBinarizer::GetBlackRow(FX_INT32 y, CBC_CommonBitArray *row, FX_INT32 &e)
|
| +CBC_CommonBitArray *CBC_GlobalHistogramBinarizer::GetBlackRow(int32_t y, CBC_CommonBitArray *row, int32_t &e)
|
| {
|
| CBC_LuminanceSource *source = GetLuminanceSource();
|
| - FX_INT32 width = source->GetWidth();
|
| + int32_t width = source->GetWidth();
|
| CBC_AutoPtr<CBC_CommonBitArray> result(FX_NEW CBC_CommonBitArray(width));
|
| InitArrays(width);
|
| CFX_ByteArray *localLuminances = source->GetRow(y, m_luminance, e);
|
| @@ -47,20 +47,20 @@ CBC_CommonBitArray *CBC_GlobalHistogramBinarizer::GetBlackRow(FX_INT32 y, CBC_Co
|
| }
|
| CFX_Int32Array localBuckets;
|
| localBuckets.Copy(m_buckets);
|
| - FX_INT32 x;
|
| + int32_t x;
|
| for (x = 0; x < width; x++) {
|
| - FX_INT32 pixel = (*localLuminances)[x] & 0xff;
|
| + int32_t pixel = (*localLuminances)[x] & 0xff;
|
| localBuckets[pixel >> LUMINANCE_SHIFT]++;
|
| }
|
| - FX_INT32 blackPoint = EstimateBlackPoint(localBuckets, e);
|
| + int32_t blackPoint = EstimateBlackPoint(localBuckets, e);
|
| if (e != BCExceptionNO) {
|
| return result.release();
|
| }
|
| - FX_INT32 left = (*localLuminances)[0] & 0xff;
|
| - FX_INT32 center = (*localLuminances)[1] & 0xff;
|
| + int32_t left = (*localLuminances)[0] & 0xff;
|
| + int32_t center = (*localLuminances)[1] & 0xff;
|
| for (x = 1; x < width - 1; x++) {
|
| - FX_INT32 right = (*localLuminances)[x + 1] & 0xff;
|
| - FX_INT32 luminance = ((center << 2) - left - right) >> 1;
|
| + int32_t right = (*localLuminances)[x + 1] & 0xff;
|
| + int32_t luminance = ((center << 2) - left - right) >> 1;
|
| if (luminance < blackPoint) {
|
| result->Set(x);
|
| }
|
| @@ -69,36 +69,36 @@ CBC_CommonBitArray *CBC_GlobalHistogramBinarizer::GetBlackRow(FX_INT32 y, CBC_Co
|
| }
|
| return result.release();
|
| }
|
| -CBC_CommonBitMatrix *CBC_GlobalHistogramBinarizer::GetBlackMatrix(FX_INT32 &e)
|
| +CBC_CommonBitMatrix *CBC_GlobalHistogramBinarizer::GetBlackMatrix(int32_t &e)
|
| {
|
| CBC_LuminanceSource *source = GetLuminanceSource();
|
| - FX_INT32 width = source->GetWidth();
|
| - FX_INT32 height = source->GetHeight();
|
| + int32_t width = source->GetWidth();
|
| + int32_t height = source->GetHeight();
|
| CBC_CommonBitMatrix *BitMatrixTemp = FX_NEW CBC_CommonBitMatrix();
|
| BitMatrixTemp->Init(width, height);
|
| CBC_AutoPtr<CBC_CommonBitMatrix> matrix(BitMatrixTemp);
|
| InitArrays(width);
|
| CFX_Int32Array localBuckets;
|
| localBuckets.Copy(m_buckets);
|
| - FX_INT32 y;
|
| + int32_t y;
|
| for (y = 1; y < 5; y++) {
|
| - FX_INT32 row = height * y / 5;
|
| + int32_t row = height * y / 5;
|
| CFX_ByteArray *localLuminances = source->GetRow(row, m_luminance, e);
|
| BC_EXCEPTION_CHECK_ReturnValue(e, NULL);
|
| - FX_INT32 right = (width << 2) / 5;
|
| - FX_INT32 x;
|
| + int32_t right = (width << 2) / 5;
|
| + int32_t x;
|
| for (x = width / 5; x < right; x++) {
|
| - FX_INT32 pixel = (*localLuminances)[x] & 0xff;
|
| + int32_t pixel = (*localLuminances)[x] & 0xff;
|
| localBuckets[pixel >> LUMINANCE_SHIFT]++;
|
| }
|
| }
|
| - FX_INT32 blackPoint = EstimateBlackPoint(localBuckets, e);
|
| + int32_t blackPoint = EstimateBlackPoint(localBuckets, e);
|
| BC_EXCEPTION_CHECK_ReturnValue(e, NULL);
|
| CBC_AutoPtr<CFX_ByteArray> localLuminances(source->GetMatrix());
|
| for (y = 0; y < height; y++) {
|
| - FX_INT32 offset = y * width;
|
| - for (FX_INT32 x = 0; x < width; x++) {
|
| - FX_INT32 pixel = (*localLuminances)[offset + x] & 0xff;
|
| + int32_t offset = y * width;
|
| + for (int32_t x = 0; x < width; x++) {
|
| + int32_t pixel = (*localLuminances)[offset + x] & 0xff;
|
| if (pixel < blackPoint) {
|
| matrix->Set(x, y);
|
| }
|
| @@ -106,7 +106,7 @@ CBC_CommonBitMatrix *CBC_GlobalHistogramBinarizer::GetBlackMatrix(FX_INT32 &e)
|
| }
|
| return matrix.release();
|
| }
|
| -void CBC_GlobalHistogramBinarizer::InitArrays(FX_INT32 luminanceSize)
|
| +void CBC_GlobalHistogramBinarizer::InitArrays(int32_t luminanceSize)
|
| {
|
| if(m_luminance.GetSize() < luminanceSize) {
|
| m_luminance.SetSize(luminanceSize);
|
| @@ -114,19 +114,19 @@ void CBC_GlobalHistogramBinarizer::InitArrays(FX_INT32 luminanceSize)
|
| if(m_buckets.GetSize() <= 0) {
|
| m_buckets.SetSize(LUMINANCE_BUCKETS);
|
| } else {
|
| - FX_INT32 x;
|
| + int32_t x;
|
| for(x = 0; x < LUMINANCE_BUCKETS; x++) {
|
| m_buckets[x] = 0;
|
| }
|
| }
|
| }
|
| -FX_INT32 CBC_GlobalHistogramBinarizer::EstimateBlackPoint(CFX_Int32Array &buckets, FX_INT32 &e)
|
| +int32_t CBC_GlobalHistogramBinarizer::EstimateBlackPoint(CFX_Int32Array &buckets, int32_t &e)
|
| {
|
| - FX_INT32 numBuckets = buckets.GetSize();
|
| - FX_INT32 maxBucketCount = 0;
|
| - FX_INT32 firstPeak = 0;
|
| - FX_INT32 firstPeakSize = 0;
|
| - FX_INT32 x;
|
| + int32_t numBuckets = buckets.GetSize();
|
| + int32_t maxBucketCount = 0;
|
| + int32_t firstPeak = 0;
|
| + int32_t firstPeakSize = 0;
|
| + int32_t x;
|
| for (x = 0; x < numBuckets; x++) {
|
| if (buckets[x] > firstPeakSize) {
|
| firstPeak = x;
|
| @@ -136,18 +136,18 @@ FX_INT32 CBC_GlobalHistogramBinarizer::EstimateBlackPoint(CFX_Int32Array &bucket
|
| maxBucketCount = buckets[x];
|
| }
|
| }
|
| - FX_INT32 secondPeak = 0;
|
| - FX_INT32 secondPeakScore = 0;
|
| + int32_t secondPeak = 0;
|
| + int32_t secondPeakScore = 0;
|
| for (x = 0; x < numBuckets; x++) {
|
| - FX_INT32 distanceToBiggest = x - firstPeak;
|
| - FX_INT32 score = buckets[x] * distanceToBiggest * distanceToBiggest;
|
| + int32_t distanceToBiggest = x - firstPeak;
|
| + int32_t score = buckets[x] * distanceToBiggest * distanceToBiggest;
|
| if (score > secondPeakScore) {
|
| secondPeak = x;
|
| secondPeakScore = score;
|
| }
|
| }
|
| if (firstPeak > secondPeak) {
|
| - FX_INT32 temp = firstPeak;
|
| + int32_t temp = firstPeak;
|
| firstPeak = secondPeak;
|
| secondPeak = temp;
|
| }
|
| @@ -155,11 +155,11 @@ FX_INT32 CBC_GlobalHistogramBinarizer::EstimateBlackPoint(CFX_Int32Array &bucket
|
| e = BCExceptionRead;
|
| return 0;
|
| }
|
| - FX_INT32 bestValley = secondPeak - 1;
|
| - FX_INT32 bestValleyScore = -1;
|
| + int32_t bestValley = secondPeak - 1;
|
| + int32_t bestValleyScore = -1;
|
| for (x = secondPeak - 1; x > firstPeak; x--) {
|
| - FX_INT32 fromFirst = x - firstPeak;
|
| - FX_INT32 score = fromFirst * fromFirst * (secondPeak - x) * (maxBucketCount - buckets[x]);
|
| + int32_t fromFirst = x - firstPeak;
|
| + int32_t score = fromFirst * fromFirst * (secondPeak - x) * (maxBucketCount - buckets[x]);
|
| if (score > bestValleyScore) {
|
| bestValley = x;
|
| bestValleyScore = score;
|
|
|