<!--
{
  "availability" : [
    "iOS: 13.0.0 -",
    "iPadOS: 13.0.0 -",
    "macCatalyst: 13.0.0 -",
    "macOS: 10.15.0 -",
    "tvOS: 13.0.0 -",
    "visionOS: 1.0.0 -",
    "watchOS: 6.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "SwiftUI",
  "identifier" : "/documentation/SwiftUI/View/clipShape(_:style:)",
  "metadataVersion" : "0.1.0",
  "role" : "Instance Method",
  "symbol" : {
    "kind" : "Instance Method",
    "modules" : [
      "SwiftUI"
    ],
    "preciseIdentifier" : "s:7SwiftUI4ViewPAAE9clipShape_5styleQrqd___AA9FillStyleVtAA0E0Rd__lF"
  },
  "title" : "clipShape(_:style:)"
}
-->

# clipShape(_:style:)

Sets a clipping shape for this view.

```
nonisolated func clipShape<S>(_ shape: S, style: FillStyle = FillStyle()) -> some View where S : Shape
```

## Parameters

`shape`

The clipping shape to use for this view. The `shape` fills
the view’s frame, while maintaining its aspect ratio.

`style`

The fill style to use when rasterizing `shape`.

## Return Value

A view that clips this view to `shape`, using `style` to
define the shape’s rasterization.

## Discussion

Use `clipShape(_:style:)` to clip the view to the provided shape. By
applying a clipping shape to a view, you preserve the parts of the view
covered by the shape, while eliminating other parts of the view. The
clipping shape itself isn’t visible.

For example, this code applies a circular clipping shape to a `Text`
view:

```
Text("Clipped text in a circle")
    .frame(width: 175, height: 100)
    .foregroundColor(Color.white)
    .background(Color.black)
    .clipShape(Circle())
```

The resulting view shows only the portion of the text that lies within
the bounds of the circle.

![A screenshot of text clipped to the shape of a](images/com.apple.SwiftUI/SwiftUI-View-clipShape@2x.png)

---

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)