# `GSGlyph copyWithOptions:`

*Instance Method*

Creates a detached copy with selected layer and editing content.

## Declaration

```swift
func copy(options: GSGlyphCopyOptions = []) -> Any
```

```objc
- (id) copyWithOptions:(GSGlyphCopyOptions) options;
```

```python
copyWithOptions_(options: GSGlyphCopyOptions) -> object
```

## Parameters

- `options` — The content and initialization behavior to use for the copy.

## Discussion

Most glyph-level metadata is copied regardless of the options. The options select the layer kinds and optional data to include. A custom color requires [`GSGlyphCopyOptions.GSGlyphCopyExtras`](/Core/GlyphsCore/GSGlyphCopyOptions/GSGlyphCopyExtras), and glyph-local axes require [`GSGlyphCopyOptions.GSGlyphCopySpecialLayers`](/Core/GlyphsCore/GSGlyphCopyOptions/GSGlyphCopySpecialLayers). The returned glyph has no parent.

## See Also

### Copying and Equality

- [`GSGlyph isEqualToGlyph:`](/Core/GlyphsCore/GSGlyph/isEqualToGlyph:) — Whether another glyph has matching layer contents and core glyph settings.

