dynamsoft-barcode-reader-bundle 11.2.5000__cp312-cp312-win_amd64.whl → 11.4.1000__cp312-cp312-win_amd64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (36) hide show
  1. dynamsoft_barcode_reader_bundle/DynamsoftBarcodeReaderx64.dll +0 -0
  2. dynamsoft_barcode_reader_bundle/DynamsoftCaptureVisionRouterx64.dll +0 -0
  3. dynamsoft_barcode_reader_bundle/DynamsoftCorex64.dll +0 -0
  4. dynamsoft_barcode_reader_bundle/DynamsoftImageProcessingx64.dll +0 -0
  5. dynamsoft_barcode_reader_bundle/DynamsoftLicensex64.dll +0 -0
  6. dynamsoft_barcode_reader_bundle/DynamsoftNeuralNetworkx64.dll +0 -0
  7. dynamsoft_barcode_reader_bundle/DynamsoftUtilityx64.dll +0 -0
  8. dynamsoft_barcode_reader_bundle/Models/Code128Decoder.data +0 -0
  9. dynamsoft_barcode_reader_bundle/Models/Code39ITFDecoder.data +0 -0
  10. dynamsoft_barcode_reader_bundle/Models/DataMatrixQRCodeDeblur.data +0 -0
  11. dynamsoft_barcode_reader_bundle/Models/DataMatrixQRCodeLocalization.data +0 -0
  12. dynamsoft_barcode_reader_bundle/Models/EAN13Decoder.data +0 -0
  13. dynamsoft_barcode_reader_bundle/Models/OneDDeblur.data +0 -0
  14. dynamsoft_barcode_reader_bundle/Models/OneDLocalization.data +0 -0
  15. dynamsoft_barcode_reader_bundle/Models/PDF417Deblur.data +0 -0
  16. dynamsoft_barcode_reader_bundle/Models/PDF417Localization.data +0 -0
  17. dynamsoft_barcode_reader_bundle/_DynamsoftBarcodeReader.cp312-win_amd64.pyd +0 -0
  18. dynamsoft_barcode_reader_bundle/_DynamsoftCaptureVisionRouter.cp312-win_amd64.pyd +0 -0
  19. dynamsoft_barcode_reader_bundle/_DynamsoftCore.cp312-win_amd64.pyd +0 -0
  20. dynamsoft_barcode_reader_bundle/_DynamsoftImageProcessing.cp312-win_amd64.pyd +0 -0
  21. dynamsoft_barcode_reader_bundle/_DynamsoftLicense.cp312-win_amd64.pyd +0 -0
  22. dynamsoft_barcode_reader_bundle/_DynamsoftUtility.cp312-win_amd64.pyd +0 -0
  23. dynamsoft_barcode_reader_bundle/__init__.py +1 -1
  24. dynamsoft_barcode_reader_bundle/core.py +72 -3
  25. dynamsoft_barcode_reader_bundle/cvr.py +21 -11
  26. dynamsoft_barcode_reader_bundle/dbr.py +72 -3
  27. dynamsoft_barcode_reader_bundle/dip.py +2 -2
  28. dynamsoft_barcode_reader_bundle/dnn.py +2 -2
  29. dynamsoft_barcode_reader_bundle/license.py +2 -2
  30. dynamsoft_barcode_reader_bundle/utility.py +35 -5
  31. {dynamsoft_barcode_reader_bundle-11.2.5000.dist-info → dynamsoft_barcode_reader_bundle-11.4.1000.dist-info}/METADATA +5 -3
  32. dynamsoft_barcode_reader_bundle-11.4.1000.dist-info/RECORD +37 -0
  33. {dynamsoft_barcode_reader_bundle-11.2.5000.dist-info → dynamsoft_barcode_reader_bundle-11.4.1000.dist-info}/WHEEL +1 -1
  34. dynamsoft_barcode_reader_bundle-11.2.5000.dist-info/RECORD +0 -33
  35. {dynamsoft_barcode_reader_bundle-11.2.5000.dist-info → dynamsoft_barcode_reader_bundle-11.4.1000.dist-info}/licenses/LICENSE.txt +0 -0
  36. {dynamsoft_barcode_reader_bundle-11.2.5000.dist-info → dynamsoft_barcode_reader_bundle-11.4.1000.dist-info}/top_level.txt +0 -0
@@ -5,4 +5,4 @@ from .dip import *
5
5
  from .license import *
6
6
  from .utility import *
7
7
 
8
- __version__ = "11.2.5000"
8
+ __version__ = "11.4.1000"
@@ -1,4 +1,4 @@
1
- __version__ = "4.0.40.6322"
1
+ __version__ = "4.0.40.7449"
2
2
 
3
3
  import sys
4
4
 
@@ -288,6 +288,7 @@ class EnumRegionObjectElementType(IntEnum):
288
288
  ROET_SOURCE_IMAGE = _DynamsoftCore.ROET_SOURCE_IMAGE
289
289
  ROET_TARGET_ROI = _DynamsoftCore.ROET_TARGET_ROI
290
290
  ROET_ENHANCED_IMAGE = _DynamsoftCore.ROET_ENHANCED_IMAGE
291
+ ROET_AUXILIARY_REGION = _DynamsoftCore.ROET_AUXILIARY_REGION
291
292
  class EnumTransformMatrixType(IntEnum):
292
293
  TMT_LOCAL_TO_ORIGINAL_IMAGE = _DynamsoftCore.TMT_LOCAL_TO_ORIGINAL_IMAGE
293
294
  TMT_ORIGINAL_TO_LOCAL_IMAGE = _DynamsoftCore.TMT_ORIGINAL_TO_LOCAL_IMAGE
@@ -331,7 +332,7 @@ class CoreModule:
331
332
  Returns:
332
333
  str: A string representing the version of the core module.
333
334
  """
334
- return __version__ + " (Algotithm " + _DynamsoftCore.CCoreModule_GetVersion() + ")"
335
+ return __version__ + " (Algorithm " + _DynamsoftCore.CCoreModule_GetVersion() + ")"
335
336
 
336
337
 
337
338
  def __init__(self):
@@ -969,7 +970,9 @@ class CapturedResultItem:
969
970
  Returns:
970
971
  CapturedResultItem: The referenced item in the captured result item.
971
972
  """
972
- return _DynamsoftCore.CCapturedResultItem_GetReferenceItem(self)
973
+ if not hasattr(self, '_ref_item'):
974
+ self._ref_item = _DynamsoftCore.CCapturedResultItem_GetReferenceItem(self)
975
+ return self._ref_item
973
976
 
974
977
  def get_target_roi_def_name(self) -> str:
975
978
  """
@@ -1656,6 +1659,72 @@ class PredetectedRegionElement(RegionObjectElement):
1656
1659
  return _DynamsoftCore.CPredetectedRegionElement_GetLabelName(self)
1657
1660
 
1658
1661
  _DynamsoftCore.CPredetectedRegionElement_register(PredetectedRegionElement)
1662
+
1663
+ class AuxiliaryRegionElement(RegionObjectElement):
1664
+ """
1665
+ The AuxiliaryRegionElement class represents a region element that is auxiliary to a predetected region element.
1666
+ It is a subclass of the CRegionObjectElement.
1667
+
1668
+ Methods:
1669
+ get_name(self) -> str: Gets the name of this auxiliary region.
1670
+ get_confidence(self) -> int: Gets the confidence level of this auxiliary region detection.
1671
+ set_name(self, name: str) -> None: Sets the name/type of this auxiliary region.
1672
+ set_location(self, location: Quadrilateral) -> int: Sets the location of the auxiliary region element.
1673
+ set_confidence(self, confidence: int) -> None: Sets the confidence level of this auxiliary region detection.
1674
+ """
1675
+ def __init__(self):
1676
+ _DynamsoftCore.Class_init(self, _DynamsoftCore.CImageProcessingModule_CreateAuxiliaryRegionElement())
1677
+
1678
+ def get_name(self) -> str:
1679
+ """
1680
+ Gets the name of this auxiliary region.
1681
+
1682
+ Returns:
1683
+ Returns a string representing the region name (e.g., "PortraitZone", "SignatureArea").
1684
+ """
1685
+ return _DynamsoftCore.CAuxiliaryRegionElement_GetName(self)
1686
+
1687
+ def get_confidence(self) -> int:
1688
+ """
1689
+ Gets the confidence level of this auxiliary region detection.
1690
+
1691
+ Returns:
1692
+ Returns the confidence value, typically in the range [0, 100].
1693
+ """
1694
+ return _DynamsoftCore.CAuxiliaryRegionElement_GetConfidence(self)
1695
+
1696
+ def set_name(self, name: str) -> None:
1697
+ """
1698
+ Sets the name/type of this auxiliary region.
1699
+
1700
+ Args:
1701
+ name(str): The region name to set (e.g., "PortraitZone", "SignatureArea").
1702
+ """
1703
+ _DynamsoftCore.CAuxiliaryRegionElement_SetName(self, name)
1704
+
1705
+ def set_location(self, location: Quadrilateral) -> int:
1706
+ """
1707
+ Sets the location of this auxiliary region.
1708
+
1709
+ Args:
1710
+ location(Quadrilateral): A quadrilateral defining the region boundaries.
1711
+
1712
+ Returns:
1713
+ Returns 0 if success, otherwise an error code.
1714
+ """
1715
+ return _DynamsoftCore.CAuxiliaryRegionElement_SetLocation(self, location)
1716
+
1717
+ def set_confidence(self, confidence: int) -> None:
1718
+ """
1719
+ Sets the confidence level of this auxiliary region detection.
1720
+
1721
+ Args:
1722
+ confidence(int): The confidence value to set, typically in the range [0, 100].
1723
+ """
1724
+ return _DynamsoftCore.CAuxiliaryRegionElement_SetConfidence(self, confidence)
1725
+
1726
+ _DynamsoftCore.CAuxiliaryRegionElement_register(AuxiliaryRegionElement)
1727
+
1659
1728
  class IntermediateResultUnit:
1660
1729
  """
1661
1730
  The IntermediateResultUnit class represents an intermediate result unit used in image processing.
@@ -1,4 +1,4 @@
1
- __version__ = "3.2.50.6322"
1
+ __version__ = "3.4.10.7449"
2
2
 
3
3
  if __package__ or "." in __name__:
4
4
  from .core import *
@@ -218,11 +218,9 @@ class CapturedResult(CapturedResultBase):
218
218
  Returns:
219
219
  A list of CapturedResultItem objects with all items in the captured result.
220
220
  """
221
- list = []
222
- count = _DynamsoftCaptureVisionRouter.CCapturedResult_GetItemsCount(self)
223
- for i in range(count):
224
- list.append(_DynamsoftCaptureVisionRouter.CCapturedResult_GetItem(self, i))
225
- return list
221
+ if not hasattr(self, '_items') or self._items is None:
222
+ self._items = _DynamsoftCaptureVisionRouter.CCapturedResult_GetItems(self)
223
+ return self._items
226
224
 
227
225
  def __getitem__(self, index: int) -> CapturedResultItem:
228
226
  return _DynamsoftCaptureVisionRouter.CCapturedResult_GetItem(self, index)
@@ -721,7 +719,7 @@ class IntermediateResultReceiver:
721
719
  return _DynamsoftCaptureVisionRouter.CIntermediateResultReceiver_OnRawTextLinesUnitReceived(self, result, info)
722
720
 
723
721
  def on_logic_lines_unit_received(self, result: "LogicLinesUnit", info: IntermediateResultExtraInfo) -> None:
724
- return _DynamsoftCaptureVisionRouter.CIntermediateResultReceiver_OnLogicLinesUnitReceived(self, result)
722
+ return _DynamsoftCaptureVisionRouter.CIntermediateResultReceiver_OnLogicLinesUnitReceived(self, result, info)
725
723
 
726
724
  def on_enhanced_image_received(self, result: "EnhancedImageUnit", info: IntermediateResultExtraInfo) -> None:
727
725
  return _DynamsoftCaptureVisionRouter.CIntermediateResultReceiver_OnEnhancedImageReceived(self, result, info)
@@ -804,6 +802,7 @@ class CaptureVisionRouter:
804
802
  )
805
803
  self._input = None
806
804
  self._intermediate_result_manager = None
805
+ self._cross_filter = []
807
806
  __destroy__ = _DynamsoftCaptureVisionRouter.delete_CCaptureVisionRouter
808
807
 
809
808
  def init_settings(self, content: str) -> Tuple[int, str]:
@@ -1081,6 +1080,9 @@ class CaptureVisionRouter:
1081
1080
  - error_code (int): The error code indicating the status of the operation.
1082
1081
  - error_message <str>: A descriptive message explaining the error.
1083
1082
  """
1083
+ if any(filter is x for x in self._cross_filter):
1084
+ return (0, "Success.")
1085
+ self._cross_filter.append(filter)
1084
1086
  return _DynamsoftCaptureVisionRouter.CCaptureVisionRouter_AddResultFilter(
1085
1087
  self, filter
1086
1088
  )
@@ -1097,9 +1099,17 @@ class CaptureVisionRouter:
1097
1099
  - error_code (int): The error code indicating the status of the operation.
1098
1100
  - error_message <str>: A descriptive message explaining the error.
1099
1101
  """
1100
- return _DynamsoftCaptureVisionRouter.CCaptureVisionRouter_RemoveResultFilter(
1101
- self, filter
1102
- )
1102
+ index = -1
1103
+ for i, x in enumerate(self._cross_filter):
1104
+ if x is filter:
1105
+ index = i
1106
+ break
1107
+ if index != -1:
1108
+ self._cross_filter.pop(index)
1109
+ return _DynamsoftCaptureVisionRouter.CCaptureVisionRouter_RemoveResultFilter(
1110
+ self, filter
1111
+ )
1112
+ return (0, "Success.")
1103
1113
  def add_capture_state_listener(
1104
1114
  self, listener: CaptureStateListener
1105
1115
  ) -> Tuple[int, str]:
@@ -1322,7 +1332,7 @@ class CaptureVisionRouterModule:
1322
1332
  Returns:
1323
1333
  A string representing the version of the capture vision router module.
1324
1334
  """
1325
- return __version__ + " (Algotithm " + _DynamsoftCaptureVisionRouter.CCaptureVisionRouterModule_GetVersion() + ")"
1335
+ return __version__ + " (Algorithm " + _DynamsoftCaptureVisionRouter.CCaptureVisionRouterModule_GetVersion() + ")"
1326
1336
 
1327
1337
  def __init__(self):
1328
1338
  _DynamsoftCaptureVisionRouter.Class_init(
@@ -1,4 +1,4 @@
1
- __version__ = "11.2.50.6322"
1
+ __version__ = "11.4.10.7449"
2
2
 
3
3
  if __package__ or "." in __name__:
4
4
  from .core import *
@@ -672,6 +672,48 @@ class AztecDetails(BarcodeDetails):
672
672
 
673
673
 
674
674
  _DynamsoftBarcodeReader.CAztecDetails_register(AztecDetails)
675
+ class ECISegment:
676
+ """
677
+ Represents the Extended Channel Interpretation (ECI) information within a barcode.
678
+
679
+ Attributes:
680
+ eci_value (int): ECI assignment number as defined by ISO/IEC 15424.
681
+ charset_encoding (str): Charset encoding name defined by IANA (e.g. "UTF-8", "ISO-8859-1").
682
+ start_index (int): Start index of this ECI segment in the decoded barcode bytes.
683
+ length (int): Length (in bytes) of this segment within the decoded barcode bytes.
684
+ """
685
+ _thisown = property(
686
+ lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag"
687
+ )
688
+ eci_value: int = property(
689
+ _DynamsoftBarcodeReader.CECISegment_eciValue_get,
690
+ _DynamsoftBarcodeReader.CECISegment_eciValue_set,
691
+ doc="ECI assignment number as defined by ISO/IEC 15424.",
692
+ )
693
+ charset_encoding: str = property(
694
+ _DynamsoftBarcodeReader.CECISegment_charsetEncoding_get,
695
+ _DynamsoftBarcodeReader.CECISegment_charsetEncoding_set,
696
+ doc="Charset encoding name defined by IANA (e.g. \"UTF-8\", \"ISO-8859-1\").",
697
+ )
698
+ start_index: int = property(
699
+ _DynamsoftBarcodeReader.CECISegment_startIndex_get,
700
+ _DynamsoftBarcodeReader.CECISegment_startIndex_set,
701
+ doc="Start index of this ECI segment in the decoded barcode bytes.",
702
+ )
703
+ length: int = property(
704
+ _DynamsoftBarcodeReader.CECISegment_length_get,
705
+ _DynamsoftBarcodeReader.CECISegment_length_set,
706
+ doc="Length (in bytes) of this segment within the decoded barcode bytes.",
707
+ )
708
+ def __init__(self):
709
+ _DynamsoftBarcodeReader.Class_init(
710
+ self, _DynamsoftBarcodeReader.new_CECISegment()
711
+ )
712
+
713
+ __destroy__ = _DynamsoftBarcodeReader.delete_CECISegment
714
+
715
+
716
+ _DynamsoftBarcodeReader.CECISegment_register(ECISegment)
675
717
 
676
718
  class BarcodeResultItem(CapturedResultItem):
677
719
  """
@@ -689,6 +731,7 @@ class BarcodeResultItem(CapturedResultItem):
689
731
  get_details(self) -> BarcodeDetails: Gets the details of the decoded barcode result.
690
732
  is_dpm(self) -> bool: Gets whether the decoded barcode is a DPM code.
691
733
  is_mirrored(self) -> bool: Gets whether the decoded barcode is mirrored.
734
+ get_eci_segments(self) -> List[ECISegment]: Gets all the ECI segments in the barcode.
692
735
  """
693
736
  _thisown = property(
694
737
  lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag"
@@ -796,7 +839,20 @@ class BarcodeResultItem(CapturedResultItem):
796
839
  """
797
840
  return _DynamsoftBarcodeReader.CBarcodeResultItem_IsMirrored(self)
798
841
 
842
+ def get_eci_segments(self) -> List[ECISegment]:
843
+ """
844
+ Gets all the ECI segments in the barcode.
799
845
 
846
+ Returns:
847
+ A list of ECISegment objects.
848
+ """
849
+ count = _DynamsoftBarcodeReader.CBarcodeResultItem_GetECISegmentsCount(self)
850
+ result = []
851
+ for i in range(count):
852
+ eci = _DynamsoftBarcodeReader.CBarcodeResultItem_GetECISegment(self, i)
853
+ if eci is not None:
854
+ result.append(eci)
855
+ return result
800
856
  _DynamsoftBarcodeReader.CBarcodeResultItem_register(BarcodeResultItem)
801
857
 
802
858
  class DecodedBarcodesResult(CapturedResultBase):
@@ -923,8 +979,21 @@ class DecodedBarcodeElement(RegionObjectElement):
923
979
  def set_location(self, location: Quadrilateral) -> int:
924
980
  return _DynamsoftBarcodeReader.CDecodedBarcodeElement_SetLocation(self, location)
925
981
 
982
+ def get_eci_segments(self) -> List[ECISegment]:
983
+ """
984
+ Gets all the ECI segments in the barcode.
985
+
986
+ Returns:
987
+ A list of ECISegment objects.
988
+ """
989
+ count = _DynamsoftBarcodeReader.CDecodedBarcodeElement_GetECISegmentsCount(self)
990
+ result = []
991
+ for i in range(count):
992
+ eci = _DynamsoftBarcodeReader.CDecodedBarcodeElement_GetECISegment(self, i)
993
+ if eci is not None:
994
+ result.append(eci)
995
+ return result
926
996
 
927
- # Register CDecodedBarcodeElement in _DynamsoftBarcodeReader:
928
997
  _DynamsoftBarcodeReader.CDecodedBarcodeElement_register(DecodedBarcodeElement)
929
998
  class ExtendedBarcodeResult(DecodedBarcodeElement):
930
999
  _thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
@@ -1141,7 +1210,7 @@ class BarcodeReaderModule:
1141
1210
  Returns:
1142
1211
  A string representing the version of the barcode reader module.
1143
1212
  """
1144
- return __version__ + " (Algotithm " + _DynamsoftBarcodeReader.CBarcodeReaderModule_GetVersion() + ")"
1213
+ return __version__ + " (Algorithm " + _DynamsoftBarcodeReader.CBarcodeReaderModule_GetVersion() + ")"
1145
1214
 
1146
1215
  def __init__(self):
1147
1216
  _DynamsoftBarcodeReader.Class_init(
@@ -1,4 +1,4 @@
1
- __version__ = "3.0.30.6322"
1
+ __version__ = "3.0.30.7449"
2
2
 
3
3
  if __package__ or "." in __name__:
4
4
  from . import _DynamsoftImageProcessing
@@ -21,4 +21,4 @@ class DynamsoftImageProcessingModule:
21
21
  Returns:
22
22
  A string representing the version of the Dynamsoft Image Processing module.
23
23
  """
24
- return __version__ + " (Algotithm " + _DynamsoftImageProcessing.getversion() + ")"
24
+ return __version__ + " (Algorithm " + _DynamsoftImageProcessing.getversion() + ")"
@@ -1,4 +1,4 @@
1
- __version__ = "2.0.30.6322"
1
+ __version__ = "2.0.30.7158"
2
2
 
3
3
  if __package__ or "." in __name__:
4
4
  from . import _DynamsoftNeuralNetwork
@@ -21,4 +21,4 @@ class DynamsoftNeuralNetworkModule:
21
21
  Returns:
22
22
  A string representing the version of the Dynamsoft Neural Network module.
23
23
  """
24
- return __version__ + " (Algotithm " + _DynamsoftNeuralNetwork.getversion() + ")"
24
+ return __version__ + " (Algorithm " + _DynamsoftNeuralNetwork.getversion() + ")"
@@ -1,4 +1,4 @@
1
- __version__ = "4.0.30.6322"
1
+ __version__ = "4.0.30.7449"
2
2
 
3
3
  if __package__ or "." in __name__:
4
4
  from . import _DynamsoftLicense
@@ -133,7 +133,7 @@ class LicenseModule:
133
133
  Returns:
134
134
  A string representing the version of the Dynamsoft License module.
135
135
  """
136
- return __version__ + " (Algotithm " + _DynamsoftLicense.CLicenseModule_GetVersion() + ")"
136
+ return __version__ + " (Algorithm " + _DynamsoftLicense.CLicenseModule_GetVersion() + ")"
137
137
 
138
138
  def __init__(self):
139
139
  _DynamsoftLicense.Class_init(
@@ -1,4 +1,4 @@
1
- __version__ = "2.0.40.6322"
1
+ __version__ = "2.0.40.7449"
2
2
 
3
3
  if __package__ or "." in __name__:
4
4
  from .cvr import *
@@ -44,7 +44,7 @@ class UtilityModule:
44
44
  Returns:
45
45
  A string representing the version of the utility module.
46
46
  """
47
- return __version__ + " (Algotithm " + _DynamsoftUtility.CUtilityModule_GetVersion() + ")"
47
+ return __version__ + " (Algorithm " + _DynamsoftUtility.CUtilityModule_GetVersion() + ")"
48
48
 
49
49
  def __init__(self):
50
50
  _DynamsoftUtility.Class_init(
@@ -219,6 +219,30 @@ class MultiFrameResultCrossFilter(CapturedResultFilter):
219
219
  self, type
220
220
  )
221
221
 
222
+ def set_result_cross_verification_criteria(self, result_item_types: int, frame_window: int, min_consistent_frames: int) -> None:
223
+ """
224
+ This function allows customization of the multi-frame verification parameters,
225
+ controlling how many frames are analyzed and how many consistent results are required.
226
+
227
+ Args:
228
+ result_item_types (int): A bitwise OR combination of one or more values from the EnumCapturedResultItemType enumeration.
229
+ frame_window (int): The number of frames to consider for cross-verification.
230
+ min_consistent_frames (int): The minimum number of frames that must contain consistent results for verification to succeed.
231
+ """
232
+ return _DynamsoftUtility.CMultiFrameResultCrossFilter_SetResultCrossVerificationCriteria(self, result_item_types, frame_window, min_consistent_frames)
233
+
234
+ def get_result_cross_verification_criteria(self, result_item_type: EnumCapturedResultItemType) -> Tuple[int, int]:
235
+ """
236
+ Gets the cross-verification criteria for a specified result item type.
237
+
238
+ Args:
239
+ result_item_type (int): The result item type to query (CapturedResultItemType value).
240
+
241
+ Returns:
242
+ A tuple containing the frame window size and the minimum consistent frames.
243
+ """
244
+ return _DynamsoftUtility.CMultiFrameResultCrossFilter_GetResultCrossVerificationCriteria(self, result_item_type)
245
+
222
246
  _DynamsoftUtility.CMultiFrameResultCrossFilter_register(MultiFrameResultCrossFilter)
223
247
 
224
248
  class ProactiveImageSourceAdapter(ImageSourceAdapter, ABC):
@@ -594,13 +618,19 @@ class ImageIO:
594
618
  elif format == EnumImagePixelFormat.IPF_BGR_888:
595
619
  arr = np.frombuffer(image_bytes, dtype=np.uint8).reshape((height, width, 3))
596
620
  arr = arr[:, :, ::-1]
621
+ elif format == EnumImagePixelFormat.IPF_GRAYSCALED \
622
+ or format == EnumImagePixelFormat.IPF_BINARY \
623
+ or format == EnumImagePixelFormat.IPF_BINARYINVERTED \
624
+ or format == EnumImagePixelFormat.IPF_BINARY_8 \
625
+ or format == EnumImagePixelFormat.IPF_BINARY_8_INVERTED:
626
+ arr = np.frombuffer(image_bytes, dtype=np.uint8).reshape((height, width))
597
627
  else:
598
628
  err = EnumErrorCode.EC_IMAGE_PIXEL_FORMAT_NOT_MATCH
599
629
  if __package__ or "." in __name__:
600
630
  from . import _DynamsoftCore
601
631
  else:
602
632
  import _DynamsoftCore
603
- err_str = _DynamsoftCore.DC_GetErrorString()
633
+ err_str = _DynamsoftCore.DC_GetErrorString(err)
604
634
  arr = None
605
635
  return err, err_str, arr
606
636
 
@@ -785,14 +815,14 @@ class ImageProcessor:
785
815
  """
786
816
  return _DynamsoftUtility.CImageProcessor_ConvertToBinaryGlobal(self, image_data, threshold, invert)
787
817
 
788
- def convert_to_binary_local(self, image_data: ImageData, block_size: int = 0, compensation: int = 0, invert: bool = False) ->ImageData:
818
+ def convert_to_binary_local(self, image_data: ImageData, block_size: int = 0, compensation: int = 10, invert: bool = False) ->ImageData:
789
819
  """
790
820
  Converts a grayscale image to binary image using local (adaptive) binarization.
791
821
 
792
822
  Args:
793
823
  image_data (ImageData): The image data to be converted.
794
824
  block_size (int): Size of the block for local binarization (default is 0).
795
- compensation (int): Adjustment value to modify the threshold (default is 0).
825
+ compensation (int): Adjustment value to modify the threshold (default is 10).
796
826
  invert (bool): If true, invert the binary image (black becomes white and white becomes black).
797
827
 
798
828
  Returns:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: dynamsoft_barcode_reader_bundle
3
- Version: 11.2.5000
3
+ Version: 11.4.1000
4
4
  Summary: Dynamsoft Barcode Reader SDK for Python
5
5
  Home-page: https://www.dynamsoft.com/barcode-reader/overview/?utm_source=pypi
6
6
  Author: Dynamsoft
@@ -15,7 +15,7 @@ Dynamsoft Barcode Reader SDK for Python
15
15
  |version| |python| |pypi|
16
16
 
17
17
  .. |version| image:: https://img.shields.io/pypi/v/dynamsoft_barcode_reader_bundle?color=orange
18
- .. |python| image:: https://img.shields.io/badge/python-3.10%20%7C%203.11%20%7C%203.12%20%7C%203.13-blue
18
+ .. |python| image:: https://img.shields.io/badge/python-3.10%20%7C%203.11%20%7C%203.12%20%7C%203.13%20%7C%203.14-blue
19
19
  .. |pypi| image:: https://img.shields.io/pypi/dm/dynamsoft_barcode_reader_bundle
20
20
 
21
21
 
@@ -50,7 +50,7 @@ which is newly established to aggregate the features of functional products powe
50
50
  Version
51
51
  -------
52
52
 
53
- - 11.2.5000
53
+ - 11.4.1000
54
54
 
55
55
  Supported Platforms
56
56
  -------------------
@@ -63,6 +63,8 @@ Supported Platforms
63
63
 
64
64
  Supported Python Versions
65
65
  -------------------------
66
+ - Python3.14
67
+
66
68
  - Python3.13
67
69
 
68
70
  - Python3.12
@@ -0,0 +1,37 @@
1
+ dynamsoft_barcode_reader_bundle/DynamicPdfx64.dll,sha256=6x0JwiwVXfAbzDjvr1E56DEL9svZnVpVoBBtKLNXsuY,4714416
2
+ dynamsoft_barcode_reader_bundle/DynamsoftBarcodeReaderx64.dll,sha256=HurFCv7sKD6T9ZyiZ9JEL7uitUYhMXTJ_xeDJg_GcxE,6782024
3
+ dynamsoft_barcode_reader_bundle/DynamsoftCaptureVisionRouterx64.dll,sha256=mR6E9K9A_Bs3KbAsHYh-r2OPv93KQgUUTbDAMU1oJrc,771656
4
+ dynamsoft_barcode_reader_bundle/DynamsoftCorex64.dll,sha256=grFOzVkgEvkIC1zO2N2MYmuNvfWftXVqcsrpbhsR9XE,1023048
5
+ dynamsoft_barcode_reader_bundle/DynamsoftImageProcessingx64.dll,sha256=aeQTURQJaiuglwFhUaLbrlK_I8roLcC1VFf8mzcc1Pw,7160392
6
+ dynamsoft_barcode_reader_bundle/DynamsoftLicensex64.dll,sha256=OyY9mPONinzZBoc_G-XnX-vnk1E7E2JjAal-GPmW5nM,2970184
7
+ dynamsoft_barcode_reader_bundle/DynamsoftNeuralNetworkx64.dll,sha256=w6DENyoLTdMwCcwrcr2vNH_GprhXUkaNId_x7vMHJpw,3660360
8
+ dynamsoft_barcode_reader_bundle/DynamsoftUtilityx64.dll,sha256=h_Egf14z8IH-CgeLkXgNSJl6r3GlKe01LwWOD0QS7CA,621128
9
+ dynamsoft_barcode_reader_bundle/_DynamsoftBarcodeReader.cp312-win_amd64.pyd,sha256=oCjm0Znqzma6R0UpVEz70V9qwLlw2ETnnCvTGu9St_8,278528
10
+ dynamsoft_barcode_reader_bundle/_DynamsoftCaptureVisionRouter.cp312-win_amd64.pyd,sha256=PU8KMqqo9j4yQI0l7Vw6LYsbRT3LYxc-evXzia6JBu0,295424
11
+ dynamsoft_barcode_reader_bundle/_DynamsoftCore.cp312-win_amd64.pyd,sha256=9f8E2j3WT9H1PORfmry3wYmTRjk4_C_Zbi0AobyBhC4,340992
12
+ dynamsoft_barcode_reader_bundle/_DynamsoftImageProcessing.cp312-win_amd64.pyd,sha256=_RirJqwFRlFx2xdnoj41ytQDf0qlKMiP76fm5NX2YI0,10752
13
+ dynamsoft_barcode_reader_bundle/_DynamsoftLicense.cp312-win_amd64.pyd,sha256=GcVkBPH66qeB5ALmF7ppf9jDsdwWLP28jtvjneh0DSI,38400
14
+ dynamsoft_barcode_reader_bundle/_DynamsoftUtility.cp312-win_amd64.pyd,sha256=rJlaYwrcimphJACwlSVgWOU2--kbxzh0wNaRTc6AXC4,146944
15
+ dynamsoft_barcode_reader_bundle/__init__.py,sha256=5mwFWJx2QedbcBunM7Hn_98aH13EQQljBFCnKcaN0UI,158
16
+ dynamsoft_barcode_reader_bundle/core.py,sha256=BzbudSXCBWcpaPzt1D-GkaP9YRtqWfmi_8RuXopGf70,115070
17
+ dynamsoft_barcode_reader_bundle/cvr.py,sha256=7B77LPILF3urWua6NXB3EnY58L1mmH1j8Mx6ARKVvgc,66889
18
+ dynamsoft_barcode_reader_bundle/dbr.py,sha256=08_mhWtVu89ITPnmyxoRKTEod2bM9ze5ujHA2V8oQLc,59015
19
+ dynamsoft_barcode_reader_bundle/dip.py,sha256=PjJdWN1K7QwuEXSN38Y-roIvsOtR-0Pln490L9ml7Nc,765
20
+ dynamsoft_barcode_reader_bundle/dnn.py,sha256=yT-iYcMgSs1IkjdwA3UxiICU3LcqJug_BWk76bK9T3Y,747
21
+ dynamsoft_barcode_reader_bundle/license.py,sha256=zu6u_8TGCQo6cS_-DENM_WV5VTtghB5o1shRgb8mYYs,5423
22
+ dynamsoft_barcode_reader_bundle/utility.py,sha256=nhCs1GRgjGNcjqBBH0tbTFk2P9PDgXJL6JCMtF5TtBU,39059
23
+ dynamsoft_barcode_reader_bundle/Models/Code128Decoder.data,sha256=InKC24_9EKSJBk4WRQOT-3GECqAdpPe4oNLWKA1vLv8,649136
24
+ dynamsoft_barcode_reader_bundle/Models/Code39ITFDecoder.data,sha256=8U4ST1zYMAsAmytQYBoBgF30lzd7MRjIARsQr0ehis4,1264984
25
+ dynamsoft_barcode_reader_bundle/Models/DataMatrixQRCodeDeblur.data,sha256=8btAhGj_cduSzI0muXQv5zgGeEM9UbC9TPD7e9OmY3Y,1755183
26
+ dynamsoft_barcode_reader_bundle/Models/DataMatrixQRCodeLocalization.data,sha256=HrU0ZwYxqponmY5eIjtv6sMk_UnrWtflQ7p-Ok_0RmM,998425
27
+ dynamsoft_barcode_reader_bundle/Models/EAN13Decoder.data,sha256=LvOyzH0UMEAFEZXsE0_N3kllxF4V-Yg9pKU3SXpi9LE,652211
28
+ dynamsoft_barcode_reader_bundle/Models/OneDDeblur.data,sha256=uNM2NFdLZKgV16xqCj_KeR1CbLTaNua-1gLw8F7dPcQ,1758189
29
+ dynamsoft_barcode_reader_bundle/Models/OneDLocalization.data,sha256=WNOEheKpD6pwBzIodlHgoiQ2r7p1QQqKWKrgFM3hBv4,1121723
30
+ dynamsoft_barcode_reader_bundle/Models/PDF417Deblur.data,sha256=61f190r6fEUe1uLY0yrJnUIVCo_q4NAdaW0zNVQNyxs,1804020
31
+ dynamsoft_barcode_reader_bundle/Models/PDF417Localization.data,sha256=BWDn9dHzzsawU-BfZZ6iKiUE7sqGJXlURATE1gmTddY,998076
32
+ dynamsoft_barcode_reader_bundle/Templates/DBR-PresetTemplates.json,sha256=bT2DUzGzvoLBlLgLAlWZnF0snwsEkDxQwncfLgRk3PM,18927
33
+ dynamsoft_barcode_reader_bundle-11.4.1000.dist-info/licenses/LICENSE.txt,sha256=F0zanq492cE0SFBfXJnfpF0l26IKDIVk2_6B0tDleYA,54
34
+ dynamsoft_barcode_reader_bundle-11.4.1000.dist-info/METADATA,sha256=Rr9oxZ_ngE1O_6F3GBTrSatAbSc2-JVGJrzTknUd3X8,4931
35
+ dynamsoft_barcode_reader_bundle-11.4.1000.dist-info/WHEEL,sha256=4SIlGrTWEevUMa-6zmQ9aBHcYatnnG9aOHYILIJiCXU,102
36
+ dynamsoft_barcode_reader_bundle-11.4.1000.dist-info/top_level.txt,sha256=ANZI7fujUpH3xOwwBwVGUmxhXkXpJaNyLC3Kj3RgZ34,163
37
+ dynamsoft_barcode_reader_bundle-11.4.1000.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (80.9.0)
2
+ Generator: setuptools (80.10.2)
3
3
  Root-Is-Purelib: false
4
4
  Tag: cp312-cp312-win_amd64
5
5
 
@@ -1,33 +0,0 @@
1
- dynamsoft_barcode_reader_bundle/DynamicPdfx64.dll,sha256=6x0JwiwVXfAbzDjvr1E56DEL9svZnVpVoBBtKLNXsuY,4714416
2
- dynamsoft_barcode_reader_bundle/DynamsoftBarcodeReaderx64.dll,sha256=_qTmr75I3nz5dQ10j1Iyh3hTvgsghxep6CEgNJZNzSk,6399048
3
- dynamsoft_barcode_reader_bundle/DynamsoftCaptureVisionRouterx64.dll,sha256=RzMLAlusQLLjywLoaAYLtskQdZaOk5neyY31Abl97dg,765512
4
- dynamsoft_barcode_reader_bundle/DynamsoftCorex64.dll,sha256=Yhnn3zloRJhvVoJvNn70VzkVcEzoXQcZwsEWqevtI8o,1025096
5
- dynamsoft_barcode_reader_bundle/DynamsoftImageProcessingx64.dll,sha256=WY7A5zh4G023eS43awGbzrxLxx21lNfkmaS-xW7LrPM,7133256
6
- dynamsoft_barcode_reader_bundle/DynamsoftLicensex64.dll,sha256=dUhSJbxC49ohbUm2sN2OqrG3XSUoOVokSZNo_N8JvA0,2972232
7
- dynamsoft_barcode_reader_bundle/DynamsoftNeuralNetworkx64.dll,sha256=AdlpdxHp3ib94svPIDAjwW4XdhcvCr4AfApujRq0aLA,3475016
8
- dynamsoft_barcode_reader_bundle/DynamsoftUtilityx64.dll,sha256=yK6h6BfeRkDhxtpuHgsrWqh7NJ5dbcbR8bYp9to5BbY,615496
9
- dynamsoft_barcode_reader_bundle/_DynamsoftBarcodeReader.cp312-win_amd64.pyd,sha256=zdr_CugjtbaBCtfM9rv5pYS08WQWLWK50yVXysD-MUM,265728
10
- dynamsoft_barcode_reader_bundle/_DynamsoftCaptureVisionRouter.cp312-win_amd64.pyd,sha256=G63R-rH7pDiBf1-s6AqBNTeVGH2-ma6yeu-utt_db9w,290816
11
- dynamsoft_barcode_reader_bundle/_DynamsoftCore.cp312-win_amd64.pyd,sha256=_nMuV9S-qkNL4iNuq10FvKbDAuqlG3S6GtKI_XNQIAY,335360
12
- dynamsoft_barcode_reader_bundle/_DynamsoftImageProcessing.cp312-win_amd64.pyd,sha256=JvH_ORj8-Jyz9EA5EsSuEBkMfvWUegG6OlyHk9-j52o,10752
13
- dynamsoft_barcode_reader_bundle/_DynamsoftLicense.cp312-win_amd64.pyd,sha256=TWn_eXVz0tn5jyaqT-CECZDRTPn5nddijKvkV_qQeU8,38400
14
- dynamsoft_barcode_reader_bundle/_DynamsoftUtility.cp312-win_amd64.pyd,sha256=4RS1_oTIc1WVqd8k1cZ49KcLKeUsMqQFTCpahYhAssE,143872
15
- dynamsoft_barcode_reader_bundle/__init__.py,sha256=vkRLnboUP7HLDCPQIQjtuBBGlhyXBSPrVmTFiOcOov8,158
16
- dynamsoft_barcode_reader_bundle/core.py,sha256=um8tVXK6x4ZBpFLz4TC7ko-YsGalXSgvB0UV9uJdHCs,112291
17
- dynamsoft_barcode_reader_bundle/cvr.py,sha256=rQyiGzMtOo9HjIOUDMVv1DHcFpoSM_5kdnlKnJxwWhE,66514
18
- dynamsoft_barcode_reader_bundle/dbr.py,sha256=M7eps-NXuu-TBD0a8-uRa46MLwAZXr1JA4ykJU35ock,56103
19
- dynamsoft_barcode_reader_bundle/dip.py,sha256=gwv6IjqKbsPBgIYDljE7PDZipm9z1ZaDjYmlyqdo0Vw,765
20
- dynamsoft_barcode_reader_bundle/dnn.py,sha256=V9hgBCkuJHyK56fAeluZ8_pVH2yxMpJYtGgnv7yQYJI,747
21
- dynamsoft_barcode_reader_bundle/license.py,sha256=KmtW6AxajU31ju16NGj4PtlzaEL_sY0dUqjI0kfA1fo,5423
22
- dynamsoft_barcode_reader_bundle/utility.py,sha256=RVzPm3jogv61NmSpaCmR37JlRKmBytx2kk_g6ltJJoY,37162
23
- dynamsoft_barcode_reader_bundle/Models/Code128Decoder.data,sha256=n-QdonspEfOfc5bOczeo_lGuZbqI7Y8u9boAZ4G5QbM,649098
24
- dynamsoft_barcode_reader_bundle/Models/DataMatrixQRCodeLocalization.data,sha256=RH4A6NoLD9aMz2xZ_k03Eyss4rtqYMrwOcQd5oSn40w,998392
25
- dynamsoft_barcode_reader_bundle/Models/EAN13Decoder.data,sha256=z9_XmjsD2f2RTQSxHKjNlJuC_nh3IIaFNSVsN5-pIRQ,652176
26
- dynamsoft_barcode_reader_bundle/Models/OneDDeblur.data,sha256=7feeJdJtfhDHKAaVzfZu_irwKUwz0mNfJvo3cgPR4rc,1758196
27
- dynamsoft_barcode_reader_bundle/Models/OneDLocalization.data,sha256=IefEN5N2NunE5NpvudVbd4nR_o1o2N0xRMJhYbYh0yk,1121730
28
- dynamsoft_barcode_reader_bundle/Templates/DBR-PresetTemplates.json,sha256=bT2DUzGzvoLBlLgLAlWZnF0snwsEkDxQwncfLgRk3PM,18927
29
- dynamsoft_barcode_reader_bundle-11.2.5000.dist-info/licenses/LICENSE.txt,sha256=F0zanq492cE0SFBfXJnfpF0l26IKDIVk2_6B0tDleYA,54
30
- dynamsoft_barcode_reader_bundle-11.2.5000.dist-info/METADATA,sha256=y2dBPSkKULtWRPWwCcUw_KC3yhBHdiigHGNJ0Xr2omU,4901
31
- dynamsoft_barcode_reader_bundle-11.2.5000.dist-info/WHEEL,sha256=8UP9x9puWI0P1V_d7K2oMTBqfeLNm21CTzZ_Ptr0NXU,101
32
- dynamsoft_barcode_reader_bundle-11.2.5000.dist-info/top_level.txt,sha256=ANZI7fujUpH3xOwwBwVGUmxhXkXpJaNyLC3Kj3RgZ34,163
33
- dynamsoft_barcode_reader_bundle-11.2.5000.dist-info/RECORD,,