---
title: NSMultibyteGlyphPacking
framework: appkit
role: symbol
role_heading: Enumeration
path: appkit/nsmultibyteglyphpacking
---

# NSMultibyteGlyphPacking

A constant for glyph packing.

## Declaration

```swift
enum NSMultibyteGlyphPacking
```

## Overview

Overview Cocoa stores all text data as Unicode. The text system converts Unicode into glyph IDs and places them in 1-, 2-, or 4-byte storage depending on the context. To render text, you must convert the storage into a format the text engine understands. The following constants describe the glyph packing schemes the text rendering engine can use. They are used to extract glyphs from a font for making a multibyte (or single-byte) array of glyphs for passing to an interpreter, such as the window server, which expects a big-endian multibyte stream (that is, “packed glyphs”) instead of a pure NSGlyph stream. They’re used by glyphPacking. With Quartz, the engine always expects the format to be in 2-byte short array, so NSNativeShortGlyphPacking is the only format currently in use.

## Topics

### Packing Options

- [NSMultibyteGlyphPacking.nativeShortGlyphPacking](appkit/nsmultibyteglyphpacking/nativeshortglyphpacking.md)

### Initializers

- [init(rawValue:)](appkit/nsmultibyteglyphpacking/init(rawvalue:).md)

## Relationships

### Conforms To

- [BitwiseCopyable](swift/bitwisecopyable.md)
- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [RawRepresentable](swift/rawrepresentable.md)
- [Sendable](swift/sendable.md)
- [SendableMetatype](swift/sendablemetatype.md)

## See Also

### Enumerations

- [Glyph Attributes](appkit/glyph-attributes.md)
- [NSOpenGLGlobalOption](appkit/nsopenglglobaloption.md)
- [Data Entry Types](appkit/data-entry-types.md)
- [Anonymous](appkit/nsbuttontypes-anonymous.md)
- [Additional Writing Directions](appkit/additional-writing-directions.md)
- [Return values for modal operations](appkit/return-values-for-modal-operations.md)
- [Tags of Views in the FontPanel](appkit/tags-of-views-in-the-fontpanel.md)
