You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
169 lines
6.4 KiB
169 lines
6.4 KiB
// Copyright 2014 PDFium Authors. All rights reserved. |
|
// Use of this source code is governed by a BSD-style license that can be |
|
// found in the LICENSE file. |
|
|
|
// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com |
|
|
|
#ifndef XFA_FXBARCODE_UTILS_H_ |
|
#define XFA_FXBARCODE_UTILS_H_ |
|
|
|
#include "core/fxcrt/fx_basic.h" |
|
|
|
bool BC_FX_ByteString_Replace(CFX_ByteString& dst, |
|
uint32_t first, |
|
uint32_t last, |
|
int32_t count, |
|
FX_CHAR c); |
|
void BC_FX_ByteString_Append(CFX_ByteString& dst, int32_t count, FX_CHAR c); |
|
void BC_FX_ByteString_Append(CFX_ByteString& dst, |
|
const CFX_ArrayTemplate<uint8_t>& ba); |
|
|
|
#if (_FX_OS_ == _FX_WIN32_DESKTOP_ || _FX_OS_ == _FX_WIN64_) |
|
#include <limits> |
|
#elif(_FX_OS_ == _FX_MACOSX_ || _FX_OS_ == _FX_LINUX_DESKTOP_ || \ |
|
_FX_OS_ == _FX_IOS_) |
|
#include <limits.h> |
|
#endif |
|
#if (_FX_OS_ == _FX_WIN32_DESKTOP_ || _FX_OS_ == _FX_WIN64_) |
|
#define FXSYS_isnan(x) _isnan(x) |
|
#elif(_FX_OS_ == _FX_MACOSX_ || _FX_OS_ == _FX_IOS_ || \ |
|
_FX_OS_ == _FX_LINUX_DESKTOP_ || _FX_OS_ == _FX_ANDROID_) |
|
#include <cmath> |
|
#define FXSYS_isnan(x) std::isnan(x) |
|
#endif |
|
#if (_FX_OS_ == _FX_WIN32_DESKTOP_ || _FX_OS_ == _FX_WIN64_) |
|
#define FXSYS_nan() (std::numeric_limits<float>::quiet_NaN()) |
|
#elif(_FX_OS_ == _FX_MACOSX_ || _FX_OS_ == _FX_LINUX_DESKTOP_ || \ |
|
_FX_OS_ == _FX_IOS_ || _FX_OS_ == _FX_ANDROID_) |
|
#define FXSYS_nan() NAN |
|
#endif |
|
enum BCFORMAT { |
|
BCFORMAT_UNSPECIFY = -1, |
|
BCFORMAT_CODABAR, |
|
BCFORMAT_CODE_39, |
|
BCFORMAT_CODE_128, |
|
BCFORMAT_CODE_128B, |
|
BCFORMAT_CODE_128C, |
|
BCFORMAT_EAN_8, |
|
BCFORMAT_UPC_A, |
|
BCFORMAT_EAN_13, |
|
BCFORMAT_PDF_417, |
|
BCFORMAT_DATAMATRIX, |
|
BCFORMAT_QR_CODE |
|
}; |
|
#define BCFORMAT_ECLEVEL_L 0 |
|
#define BCFORMAT_ECLEVEL_M 1 |
|
#define BCFORMAT_ECLEVEL_Q 2 |
|
#define BCFORMAT_ECLEVEL_H 3 |
|
#include <ctype.h> |
|
#define FXSYS_IntMax INT_MAX |
|
#define FXSYS_Isdigit isdigit |
|
#define BCExceptionNO 0 |
|
#define BCExceptionNotFound 1 |
|
#define BCExceptionEndLessThanStart 2 |
|
#define BCExceptionUnknownDecoder 3 |
|
#define BCExceptionRotateNotSupported 4 |
|
#define BCExceptionHeightAndWidthMustBeAtLeast1 5 |
|
#define BCExceptionRegionMustFitInsideMatrix 6 |
|
#define BCExceptionCanNotCallGetDimensionOnNonSquareMatrix 7 |
|
#define BCExceptionFormatException 8 |
|
#define BCExceptionIllegalArgumentMustMatchVersionSize 9 |
|
#define BCExceptionChecksumException 10 |
|
#define BCExceptionIllegalArgumentInvalidFirstDigit 11 |
|
#define BCExceptionIllegalArgumentInvalidSecondDigit 12 |
|
#define BCExceptionRuntimeDecodingInvalidISO_IEC 13 |
|
#define BCExceptionRuntimeDecodingInvalidAlphanumeric 14 |
|
#define BCExceptionLeftAndTopMustBeNonnegative 15 |
|
#define BCExceptionIllegalArgument 16 |
|
#define BCExceptionBadECI 17 |
|
#define BCExceptionUnSupportedBarcode 18 |
|
#define BCExceptionUnSupportedString 19 |
|
#define BCExceptionDigitLengthMustBe8 20 |
|
#define BCExceptionDataCheckException 21 |
|
#define BCExceptionExtractNumberValueFromBitArray 22 |
|
#define BCExceptionRead 23 |
|
#define BCExceptionRequestedRowIsOutSizeTheImage 24 |
|
#define BCExceptionNoContents 26 |
|
#define BCExceptionUnSupportEclevel 27 |
|
#define BCExceptionUnSupportMode 28 |
|
#define BCExceptionReferenceMustBeBetween0And7 29 |
|
#define BCExceptionBadErrorLocation 30 |
|
#define BCExceptionDegreeIsNegative 31 |
|
#define BCExceptionDivideByZero 32 |
|
#define BCExceptionCoefficientsSizeIsNull 33 |
|
#define BCExceptionNoCorrectionBytes 34 |
|
#define BCExceptionNoDataBytesProvided 35 |
|
#define BCExceptionR_I_1IsZero 36 |
|
#define BCExceptionAIsZero 37 |
|
#define BCExceptionIsZero 38 |
|
#define BCExceptionDegreeNotMatchRoots 39 |
|
#define BCExceptionContentsLengthShouldBetween1and80 40 |
|
#define BCExceptionOnlyEncodeCODE_128 41 |
|
#define BCExceptionOnlyEncodeCODE_39 42 |
|
#define BCExceptionOnlyEncodeEAN_13 43 |
|
#define BCExceptionOnlyEncodeEAN_8 44 |
|
#define BCExceptionOnlyEncodeITF 45 |
|
#define BCExceptionDigitLengthShould13 46 |
|
#define BCExceptionDigitLengthMustBe6or8or10or12or14or16or20or24or44 47 |
|
#define BCExceptionOnlyEncodeUPC_A 48 |
|
#define BCExceptionDigitLengthShouldBe12 49 |
|
#define BCExceptionValueMustBeEither0or1 50 |
|
#define BCExceptionReedsolomnDecodeException 51 |
|
#define BCExceptionBadIndexException 52 |
|
#define BCExceptionBadValueException 53 |
|
#define BCExceptionBadNumBitsException 54 |
|
#define BCExceptioncanNotOperatexorOperator 55 |
|
#define BCExceptionVersionMust1_40 56 |
|
#define BCExceptionUnknown 57 |
|
#define BCExceptionNoSuchVersion 58 |
|
#define BCExceptionCannotFindBlockInfo 59 |
|
#define BCExceptionDataTooBig 60 |
|
#define BCExceptionInvalidQRCode 61 |
|
#define BCExceptionDataTooMany 62 |
|
#define BCExceptionBitsNotEqualCacity 63 |
|
#define BCExceptionUnsupportedMode 64 |
|
#define BCExceptionInvalidateCharacter 65 |
|
#define BCExceptionBytesNotMatchOffset 66 |
|
#define BCExceptionSizeInBytesDiffer 67 |
|
#define BCExceptionInvalidateMaskPattern 68 |
|
#define BCExceptionNullPointer 69 |
|
#define BCExceptionBadMask 70 |
|
#define BCExceptionBitSizeNot15 71 |
|
#define BCExceptionBitSizeNot18 72 |
|
#define BCExceptionInvalidateImageData 73 |
|
#define BCExceptionHeight_8BeZero 74 |
|
#define BCExceptionCharacterNotThisMode 75 |
|
#define BCExceptionBitsBytesNotMatch 76 |
|
#define BCExceptionInvalidateData 77 |
|
#define BCExceptionLoadFile 78 |
|
#define BCExceptionPDF417EncodeFail 79 |
|
#define BCExceptionFailToCreateBitmap 80 |
|
#define BCExceptionLoadFontFail 81 |
|
#define BCExceptionOnlyEncodeCODEBAR 82 |
|
#define BCExceptionCodabarShouldStartWithOneOfABCD 83 |
|
#define BCExceptionCodabarShouldEndWithOneOfTNE 84 |
|
#define BCExceptionCodabarEncodeCharsInvalid 85 |
|
#define BCExceptionOnlyEncodeDATAMATRIX 86 |
|
#define BCExceptionCharactersOutsideISO88591Encoding 87 |
|
#define BCExceptionIllegalDataCodewords 88 |
|
#define BCExceptionCannotHandleThisNumberOfDataRegions 89 |
|
#define BCExceptionIllegalStateUnexpectedCase 90 |
|
#define BCExceptionIllegalStateCountMustNotExceed4 91 |
|
#define BCExceptionIllegalStateMessageLengthInvalid 92 |
|
#define BCExceptionIllegalArgumentNotGigits 93 |
|
#define BCExceptionIllegalStateIllegalMode 94 |
|
#define BCExceptionOnlyEncodePDF417 95 |
|
#define BCExceptionNonEncodableCharacterDetected 96 |
|
#define BCExceptionErrorCorrectionLevelMustBeBetween0And8 97 |
|
#define BCExceptionNoRecommendationPossible 98 |
|
#define BCExceptionIllegalArgumentnMustBeAbove0 99 |
|
#define BCExceptionUnableToFitMessageInColumns 100 |
|
#define BCExceptionEncodedMessageContainsTooManyCodeWords 101 |
|
#define BCExceptionBitmapSizeError 102 |
|
#define BCExceptionFormatInstance 102 |
|
#define BCExceptionChecksumInstance 103 |
|
#define BCExceptiontNotFoundInstance 104 |
|
#define BCExceptionNotFoundInstance 105 |
|
#define BCExceptionCannotMetadata 106 |
|
|
|
#endif // XFA_FXBARCODE_UTILS_H_
|
|
|