<!--
{
  "availability" : [
    "iOS: 11.0.0 -",
    "iPadOS: 11.0.0 -",
    "macCatalyst: 13.1.0 -",
    "macOS: 10.13.0 -",
    "tvOS: 11.0.0 -",
    "visionOS: 1.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "CoreImage",
  "identifier" : "/documentation/CoreImage/CIDataMatrixCodeDescriptor",
  "metadataVersion" : "0.1.0",
  "role" : "Class",
  "symbol" : {
    "kind" : "Class",
    "modules" : [
      "Core Image"
    ],
    "preciseIdentifier" : "c:objc(cs)CIDataMatrixCodeDescriptor"
  },
  "title" : "CIDataMatrixCodeDescriptor"
}
-->

# CIDataMatrixCodeDescriptor

A concrete subclass the Core Image Barcode Descriptor that represents an Data Matrix code symbol.

```
class CIDataMatrixCodeDescriptor
```

## Overview

A Data Matrix code symbol is a 2D barcode format defined by the ISO/IEC 16022:2006(E) standard.
It encodes data in square or rectangular symbol with solid lines on the left and bottom sides

## Topics

### Creating a Descriptor

[`-  initWithPayload:rowCount:columnCount:eccVersion:`](/documentation/CoreImage/CIDataMatrixCodeDescriptor/init(payload:rowCount:columnCount:eccVersion:))

Initializes a Data Matrix code descriptor for the given payload and parameters.

[`+  descriptorWithPayload:rowCount:columnCount:eccVersion:`](/documentation/CoreImage/CIDataMatrixCodeDescriptor/descriptorWithPayload:rowCount:columnCount:eccVersion:)

Creates a Data Matrix code descriptor for the given payload and parameters.

### Examining a Descriptor

[`errorCorrectedPayload`](/documentation/CoreImage/CIDataMatrixCodeDescriptor/errorCorrectedPayload-swift.property)

The error-corrected payload containing the data encoded in the Data Matrix code symbol.

[`rowCount`](/documentation/CoreImage/CIDataMatrixCodeDescriptor/rowCount-swift.property)

The number of rows in the Data Matrix code symbol.

[`columnCount`](/documentation/CoreImage/CIDataMatrixCodeDescriptor/columnCount-swift.property)

The number of columns in the Data Matrix code symbol.

[`eccVersion`](/documentation/CoreImage/CIDataMatrixCodeDescriptor/eccVersion-swift.property)

The error correction version of the Data Matrix code symbol.

### Error Correction Constants

[`ECCVersion`](/documentation/CoreImage/CIDataMatrixCodeDescriptor/ECCVersion-swift.enum)

Constants indicating the Data Matrix code ECC version.

## Relationships

### Conforms To

[`CVarArg`](/documentation/Swift/CVarArg)

[`NSObjectProtocol`](/documentation/ObjectiveC/NSObjectProtocol)

[`NSSecureCoding`](/documentation/Foundation/NSSecureCoding)

[`Equatable`](/documentation/Swift/Equatable)

[`Hashable`](/documentation/Swift/Hashable)

[`CustomStringConvertible`](/documentation/Swift/CustomStringConvertible)

[`CustomDebugStringConvertible`](/documentation/Swift/CustomDebugStringConvertible)

[`NSCopying`](/documentation/Foundation/NSCopying)

[`NSCoding`](/documentation/Foundation/NSCoding)

### Inherits From

[`CIBarcodeDescriptor`](/documentation/CoreImage/CIBarcodeDescriptor)

---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)