Χαρακτηριστικά και Λειτουργίες
Χαρακτηριστικά και Λειτουργίες
Aspose.BarCode FOSS για Python παρέχει ένα υψηλού επιπέδου API για τη δημιουργία επτά συμβολισμών barcode με επιλογές κωδικοποίησης ανά συμβολισμό και ελέγχους απόδοσης. Αυτή η σελίδα είναι η κύρια αναφορά για όλες τις περιοχές χαρακτηριστικών.
Υποστηριζόμενοι Συμβολισμοί
Η βιβλιοθήκη υποστηρίζει επτά συμβολισμούς μέσω αφιερωμένων βοηθητικών συναρτήσεων και του γενικού σημείου εισόδου generate():
| Symbology | Τύπος | Helper | Κλάση Options |
|---|---|---|---|
| Code 128 | 1D | code128() | Code128Options |
| Code 39 | 1D | code39() | Code39Options |
| EAN-13 | 1D | ean13() | Ean13Options |
| EAN-8 | 1D | ean8() | Ean8Options |
| QR Code | 2D | qr() | QrOptions |
| UPC-A | 1D | upca() | UpcaOptions |
| UPC-E | 1D | upce() | UpceOptions |
import aspose_barcode_foss as barcode
# Per-symbology helpers
bc_128 = barcode.code128("ABC123")
bc_qr = barcode.qr("https://example.com")
# Generic API
bc_gen = barcode.generate("ean13", "590123412345")Λειτουργίες Κωδικοποίησης Code 128
Code128Options ελέγχει ποια σύνολα χαρακτήρων Code 128 χρησιμοποιεί ο κωδικοποιητής. Η ιδιότητα encode_mode δέχεται μια τιμή enum Code128EncodeMode:
AUTO— επιλέγει αυτόματα την πιο συμπαγή κωδικοποίησηCODE_A,CODE_B,CODE_C— περιορισμός σε ένα μόνο σύνολο χαρακτήρωνCODE_AB,CODE_AC,CODE_BC— επιτρέπει εναλλαγή μεταξύ δύο συνόλων χαρακτήρων
from aspose_barcode_foss import Code128Options, Code128EncodeMode
bc = barcode.code128(
"1234567890",
encode=Code128Options(encode_mode=Code128EncodeMode.CODE_C),
)Κωδικοποίηση Code 39
Code39Options ελέγχει εάν ο κωδικοποιητής χρησιμοποιεί το βασικό σύνολο 43 χαρακτήρων ή την επέκταση Full ASCII:
full_ascii— ορίστε σεTrueγια κωδικοποίηση του πλήρους εύρους 128 χαρακτήρων ASCII χρησιμοποιώντας ζεύγη αλλαγήςadd_check_digit— προσθέτει ένα ψηφίο ελέγχου modulo-43
from aspose_barcode_foss import Code39Options
bc = barcode.code39(
"Hello",
encode=Code39Options(full_ascii=True, add_check_digit=True),
)Διαμόρφωση QR Code
QrOptions παρέχει τη μεγαλύτερη διαμόρφωση μεταξύ όλων των συμβολισμών:
| Ιδιότητα | Τύπος | Values |
|---|---|---|
error_correction_level | QrErrorCorrectionLevel | L (7%), M (15%), Q (25%), H (30%) |
encoding_mode | QrEncodeMode | AUTO, NUMERIC, ALPHANUMERIC, BYTE, KANJI |
version | int | 1–40 (ελέγχει το μέγεθος του συμβόλου) |
mask | int | 0–7 (χειροκίνητη επιλογή προτύπου μάσκας) |
from aspose_barcode_foss import QrOptions, QrErrorCorrectionLevel, QrEncodeMode
bc = barcode.qr(
"https://example.com/product/12345",
encode=QrOptions(
error_correction_level=QrErrorCorrectionLevel.Q,
encoding_mode=QrEncodeMode.BYTE,
),
)Ψηφία ελέγχου EAN και UPC
Ean13Options, Ean8Options, UpcaOptions και UpceOptions έχουν καθένα μια allow_check_digit_input property. Από προεπιλογή, η βιβλιοθήκη υπολογίζει αυτόματα τη check digit. Ορίστε allow_check_digit_input=True αν τα δεδομένα σας το περιλαμβάνουν ήδη.
from aspose_barcode_foss import Ean13Options
# Automatic check digit (12 digits in, library appends the 13th)
bc = barcode.ean13("590123412345")
# Pre-computed check digit (13 digits, library validates)
bc2 = barcode.ean13(
"5901234123457",
encode=Ean13Options(allow_check_digit_input=True),
)Έλεγχοι Απόδοσης
RenderOptions ισχύει για όλες τις symbologies και ελέγχει την οπτική έξοδο. Περάστε το στο to_svg() ή to_png():
| Ιδιότητα | Τύπος | Περιγραφή |
|---|---|---|
scale | float | Ομοιόμορφος πολλαπλασιαστής κλίμακας |
dpi | int | Ανάλυση για έξοδο PNG |
module_width | float | Πλάτος μιας μονάδας barcode |
module_height | float | Ύψος μιας μονάδας barcode |
quiet_zone | float | Κενό γεμίσματος γύρω από το barcode |
foreground_color | str | Δεκαεξαδικό χρώμα για τις μπάρες (π.χ., "#000000") |
background_color | str | Δεκαεξαδικό χρώμα για το φόντο |
transparent_background | bool | Διαφανές φόντο για PNG |
show_text | bool | Εμφάνιση κειμένου που διαβάζεται από άνθρωπο κάτω από το barcode |
font_family | str | Γραμματοσειρά για κείμενο που διαβάζεται από άνθρωπο |
font_size | float | Μέγεθος γραμματοσειράς για κείμενο που διαβάζεται από άνθρωπο |
from aspose_barcode_foss import RenderOptions
bc = barcode.upca("01234567890")
png = bc.to_png(options=RenderOptions(
scale=3.0,
dpi=300,
foreground_color="#1a1a1a",
background_color="#ffffff",
show_text=True,
))Μορφές Εξόδου
| Μορφή | Μέθοδος | Τύπος Επιστροφής |
|---|---|---|
| SVG | to_svg() | str |
| PNG | to_png() | bytes |
Και οι δύο μέθοδοι δέχονται ένα προαιρετικό RenderOptions παράμετρο.
Διαχείριση Σφαλμάτων
Όλη η επικύρωση των επιλογών encode γίνεται κατά το χρόνο parse. Η βιβλιοθήκη εγείρει typed exceptions πριν ξεκινήσει η κωδικοποίηση:
| Exception | Όταν Εμφανίζεται |
|---|---|
InvalidInputError | Τα δεδομένα περιέχουν χαρακτήρες που δεν υποστηρίζονται από τη συμβολική γραφή |
EncodingError | Η κωδικοποίηση αποτυγχάνει (π.χ., τα δεδομένα υπερβαίνουν τη χωρητικότητα) |
SymbologyNotFoundError | Μη αναγνωρισμένο όνομα συμβολικής γραφής περάστηκε στο generate() |
UnsupportedCapabilityError | Το ζητούμενο χαρακτηριστικό δεν είναι διαθέσιμο για αυτή τη συμβολική γραφή |
Όλες οι κλάσεις εξαιρέσεων κληρονομούν από το BarcodeError.
from aspose_barcode_foss import InvalidInputError
try:
bc = barcode.ean13("ABC")
except InvalidInputError as e:
print(f"Invalid input: {e}")Επικύρωση Εισόδου
Κάθε συμβολική γλώσσα έχει ένα αφιερωμένο InputParser που επικυρώνει τα δεδομένα πριν την κωδικοποίηση. Ο parser ελέγχει το σύνολο χαρακτήρων, το μήκος και τις απαιτήσεις μορφής που είναι ειδικές για κάθε συμβολική γλώσσα. Τα Code128InputParser, Code39InputParser, Ean13InputParser, Ean8InputParser, QrInputParser, UpcaInputParser και UpceInputParser χρησιμοποιούνται εσωτερικά από τις αντίστοιχες βοηθητικές συναρτήσεις τους.
Αντικείμενο Barcode
Το αντικείμενο Barcode που επιστρέφεται από όλες τις βοηθητικές συναρτήσεις παρέχει:
to_svg(options)— απόδοση σε συμβολοσειρά SVGto_png(options)— απόδοση σε bytes PNGrender(renderer, options)— απόδοση χρησιμοποιώντας μια συγκεκριμένη υλοποίησηRenderersymbol— τοEncodedSymbolπου περιέχει τη μήτρα του module και τα μεταδεδομέναprofile— τοSymbologyProfileμε προεπιλογές και δυνατότητες
API Reference Περίληψη
| Κλάση | Περιγραφή |
|---|---|
Barcode | Δημόσιο αντικείμενο barcode με to_svg() και to_png() |
Code128Options | Επιλογές κωδικοποίησης για Code 128 (encode_mode) |
Code39Options | Επιλογές κωδικοποίησης για Code 39 (full_ascii, add_check_digit) |
QrOptions | Επιλογές κωδικοποίησης για QR Code (error_correction_level, encoding_mode, version, mask) |
Ean13Options | Επιλογές κωδικοποίησης για EAN-13 (allow_check_digit_input) |
Ean8Options | Επιλογές κωδικοποίησης για EAN-8 (allow_check_digit_input) |
UpcaOptions | Επιλογές κωδικοποίησης για UPC-A (allow_check_digit_input) |
UpceOptions | Επιλογές κωδικοποίησης για UPC-E (allow_check_digit_input, number_system) |
RenderOptions | Οπτικοί έλεγχοι εξόδου (κλίμακα, DPI, χρώματα, κείμενο) |
EncodeOptions | Βασικός τύπος για επιλογές κωδικοποίησης ειδικές για τη συμβολολογία |
BarcodeError | Βασική εξαίρεση για τη βιβλιοθήκη barcode |