UniPRT SDK v1.0.0.0
 
Loading...
Searching...
No Matches
Pdf417Encoder.h
1//
2// Pdf417Encoder.h
3// sdk_json_Objective-C
4//
5// Created by Realbuber on 2024/5/14.
6//
7
8
9
10#import <Foundation/Foundation.h>
11#import <UniPRT/Pdf417EncoderTables.h>
12
15typedef NS_ENUM(NSInteger, EncodingControl) {
16 EncodingControlAuto,
17 EncodingControlByteOnly,
18 EncodingControlTextAndByte,
19};
20
21typedef NS_ENUM(NSInteger, ErrorCorrectionLevel) {
22 ErrorCorrectionLevel_0,
23 ErrorCorrectionLevel_1,
24 ErrorCorrectionLevel_2,
25 ErrorCorrectionLevel_3,
26 ErrorCorrectionLevel_4,
27 ErrorCorrectionLevel_5,
28 ErrorCorrectionLevel_6,
29 ErrorCorrectionLevel_7,
30 ErrorCorrectionLevel_8,
31 ErrorCorrectionLevelAutoLow,
32 ErrorCorrectionLevelAutoNormal,
33 ErrorCorrectionLevelAutoMedium,
34 ErrorCorrectionLevelAutoHigh,
35};
36
37typedef NS_ENUM(NSInteger, EncodingMode) {
38 EncodingModeByte,
39 EncodingModeText,
40 EncodingModeNumeric,
41};
42
43typedef NS_ENUM(NSInteger, TextEncodingMode) {
44 TextEncodingModeUpper,
45 TextEncodingModeLower,
46 TextEncodingModeMixed,
47 TextEncodingModePunct,
48 TextEncodingModeShiftUpper,
49 TextEncodingModeShiftPunct,
50};
51
52@interface Pdf417Encoder : NSObject
53
54@property (nonatomic) EncodingControl encodingControl;
55@property (nonatomic) ErrorCorrectionLevel errorCorrection;
56@property (nonatomic) int narrowBarWidth;
57@property (nonatomic) int rowHeight;
58@property (nonatomic) int quietZone;
59@property (nonatomic) int defaultDataColumns;
60@property (nonatomic, strong) NSString *globalLabelIDCharacterSet;
61@property (nonatomic) int globalLabelIDUserDefined;
62@property (nonatomic) int globalLabelIDGeneralPurpose;
63
64@property (nonatomic, strong) NSMutableArray<NSNumber *> *dataCodewords;
65@property (nonatomic) int barcodeDataPos;
66@property (nonatomic) int barcodeDataLength;
67@property (nonatomic, strong) NSData *barcodeBinaryData;
68@property (nonatomic) EncodingMode encodingMode;
69@property (nonatomic) TextEncodingMode textEncodingMode;
70@property (nonatomic) ErrorCorrectionLevel errorCorrectionLevel;
71@property (nonatomic) int errorCorrectionLength;
72
73- (void)SetErrorCorrectionLevel;
74- (void)dataEncoding;
75- (void)encodeNumericSegment:(int)totalCount;
76- (int)countDigits;
77- (int)countText;
78- (int)countPunctuationWithCurrentTextCount:(int)currentTextCount;
79- (int)countBytes;
80- (void)encodeByteSegment:(int)bytes;
81- (void)encodeTextSegment:(int)totalCount;
82- (void)calculateErrorCorrection:(int *)codewords length:(int)length;
83- (void)codewordToModules:(int)row col:(int)col codeword:(int)codeword matrix:(BOOL **)matrix;
84- (void)encodeWithStringData:(NSString *)stringData;
85- (void)SetDataColumns:(int)dataColumns;
86- (void)SetDataRows:(int)dataRows;
87- (int)dataRows;
88- (int)dataColumns;
89- (int)aspect1to2Column;
90@end
91