Struct Rectangle
Stores a set of four integers that represent the location and size of a rectangle.
Implements
Inherited Members
Namespace: SixLabors.ImageSharp
Assembly: SixLabors.ImageSharp.dll
Syntax
public struct Rectangle : IEquatable<Rectangle>Remarks
This struct is fully mutable. This is done (against the guidelines) for the sake of performance, as it avoids the need to create new values for modification operations.
Constructors
| Improve this Doc View SourceRectangle(Point, Size)
Initializes a new instance of the Rectangle struct.
Declaration
public Rectangle(Point point, Size size)Parameters
| Type | Name | Description | 
|---|---|---|
| Point | point | The Point which specifies the rectangles point in a two-dimensional plane. | 
| Size | size | The SixLabors.ImageSharp.Rectangle.Size which specifies the rectangles height and width. | 
Rectangle(Int32, Int32, Int32, Int32)
Initializes a new instance of the Rectangle struct.
Declaration
public Rectangle(int x, int y, int width, int height)Parameters
| Type | Name | Description | 
|---|---|---|
| Int32 | x | The horizontal position of the rectangle. | 
| Int32 | y | The vertical position of the rectangle. | 
| Int32 | width | The width of the rectangle. | 
| Int32 | height | The height of the rectangle. | 
Fields
| Improve this Doc View SourceEmpty
Represents a Rectangle that has X, Y, Width, and Height values set to zero.
Declaration
public static readonly Rectangle EmptyField Value
| Type | Description | 
|---|---|
| Rectangle | 
Properties
| Improve this Doc View SourceBottom
Gets the y-coordinate of the bottom edge of this Rectangle.
Declaration
public readonly int Bottom { get; }Property Value
| Type | Description | 
|---|---|
| Int32 | 
Height
Gets or sets the height of this Rectangle.
Declaration
public int Height { readonly get; set; }Property Value
| Type | Description | 
|---|---|
| Int32 | 
Left
Gets the x-coordinate of the left edge of this Rectangle.
Declaration
public readonly int Left { get; }Property Value
| Type | Description | 
|---|---|
| Int32 | 
Right
Gets the x-coordinate of the right edge of this Rectangle.
Declaration
public readonly int Right { get; }Property Value
| Type | Description | 
|---|---|
| Int32 | 
Top
Gets the y-coordinate of the top edge of this Rectangle.
Declaration
public readonly int Top { get; }Property Value
| Type | Description | 
|---|---|
| Int32 | 
Width
Gets or sets the width of this Rectangle.
Declaration
public int Width { readonly get; set; }Property Value
| Type | Description | 
|---|---|
| Int32 | 
X
Gets or sets the x-coordinate of this Rectangle.
Declaration
public int X { readonly get; set; }Property Value
| Type | Description | 
|---|---|
| Int32 | 
Y
Gets or sets the y-coordinate of this Rectangle.
Declaration
public int Y { readonly get; set; }Property Value
| Type | Description | 
|---|---|
| Int32 | 
Methods
| Improve this Doc View SourceCeiling(RectangleF)
Converts a RectangleF to a Rectangle by performing a ceiling operation on all the coordinates.
Declaration
public static Rectangle Ceiling(RectangleF rectangle)Parameters
| Type | Name | Description | 
|---|---|---|
| RectangleF | rectangle | The rectangle. | 
Returns
| Type | Description | 
|---|---|
| Rectangle | The Rectangle. | 
Center(Rectangle)
Returns the center point of the given Rectangle.
Declaration
public static Point Center(Rectangle rectangle)Parameters
| Type | Name | Description | 
|---|---|---|
| Rectangle | rectangle | The rectangle. | 
Returns
| Type | Description | 
|---|---|
| Point | The Point. | 
Contains(Point)
Determines if the specified point is contained within the rectangular region defined by this Rectangle .
Declaration
public bool Contains(Point point)Parameters
| Type | Name | Description | 
|---|---|---|
| Point | point | The point. | 
Returns
| Type | Description | 
|---|---|
| Boolean | The Boolean. | 
Contains(Rectangle)
Determines if the rectangular region represented by rectangle is entirely contained
within the rectangular region represented by this Rectangle .
Declaration
public bool Contains(Rectangle rectangle)Parameters
| Type | Name | Description | 
|---|---|---|
| Rectangle | rectangle | The rectangle. | 
Returns
| Type | Description | 
|---|---|
| Boolean | The Boolean. | 
Contains(Int32, Int32)
Determines if the specfied point is contained within the rectangular region defined by this Rectangle.
Declaration
public bool Contains(int x, int y)Parameters
| Type | Name | Description | 
|---|---|---|
| Int32 | x | The x-coordinate of the given point. | 
| Int32 | y | The y-coordinate of the given point. | 
Returns
| Type | Description | 
|---|---|
| Boolean | The Boolean. | 
Deconstruct(out Int32, out Int32, out Int32, out Int32)
Deconstructs this rectangle into four integers.
Declaration
public void Deconstruct(out int x, out int y, out int width, out int height)Parameters
| Type | Name | Description | 
|---|---|---|
| Int32 | x | The out value for X. | 
| Int32 | y | The out value for Y. | 
| Int32 | width | The out value for the width. | 
| Int32 | height | The out value for the height. | 
Equals(Rectangle)
Declaration
public bool Equals(Rectangle other)Parameters
| Type | Name | Description | 
|---|---|---|
| Rectangle | other | 
Returns
| Type | Description | 
|---|---|
| Boolean | 
Equals(Object)
Declaration
public override bool Equals(object obj)Parameters
| Type | Name | Description | 
|---|---|---|
| Object | obj | 
Returns
| Type | Description | 
|---|---|
| Boolean | 
Overrides
| Improve this Doc View SourceFromLTRB(Int32, Int32, Int32, Int32)
Creates a new Rectangle with the specified location and size.
Declaration
public static Rectangle FromLTRB(int left, int top, int right, int bottom)Parameters
| Type | Name | Description | 
|---|---|---|
| Int32 | left | The left coordinate of the rectangle. | 
| Int32 | top | The top coordinate of the rectangle. | 
| Int32 | right | The right coordinate of the rectangle. | 
| Int32 | bottom | The bottom coordinate of the rectangle. | 
Returns
| Type | Description | 
|---|---|
| Rectangle | The Rectangle. | 
GetHashCode()
Declaration
public override int GetHashCode()Returns
| Type | Description | 
|---|---|
| Int32 | 
Overrides
| Improve this Doc View SourceInflate(Rectangle, Int32, Int32)
Creates a Rectangle that is inflated by the specified amount.
Declaration
public static Rectangle Inflate(Rectangle rectangle, int x, int y)Parameters
| Type | Name | Description | 
|---|---|---|
| Rectangle | rectangle | The rectangle. | 
| Int32 | x | The amount to inflate the width by. | 
| Int32 | y | The amount to inflate the height by. | 
Returns
| Type | Description | 
|---|---|
| Rectangle | A new Rectangle. | 
Inflate(Size)
Inflates this Rectangle by the specified amount.
Declaration
public void Inflate(Size size)Parameters
| Type | Name | Description | 
|---|---|---|
| Size | size | The size. | 
Inflate(Int32, Int32)
Inflates this Rectangle by the specified amount.
Declaration
public void Inflate(int width, int height)Parameters
| Type | Name | Description | 
|---|---|---|
| Int32 | width | The width. | 
| Int32 | height | The height. | 
Intersect(Rectangle)
Creates a Rectangle that represents the intersection between this Rectangle and the rectangle.
Declaration
public void Intersect(Rectangle rectangle)Parameters
| Type | Name | Description | 
|---|---|---|
| Rectangle | rectangle | The rectangle. | 
Intersect(Rectangle, Rectangle)
Creates a rectangle that represents the intersection between a and
b. If there is no intersection, an empty rectangle is returned.
Declaration
public static Rectangle Intersect(Rectangle a, Rectangle b)Parameters
| Type | Name | Description | 
|---|---|---|
| Rectangle | a | The first rectangle. | 
| Rectangle | b | The second rectangle. | 
Returns
| Type | Description | 
|---|---|
| Rectangle | The Rectangle. | 
IntersectsWith(Rectangle)
Declaration
public bool IntersectsWith(Rectangle rectangle)Parameters
| Type | Name | Description | 
|---|---|---|
| Rectangle | rectangle | The other Rectange. | 
Returns
| Type | Description | 
|---|---|
| Boolean | The Boolean. | 
Offset(Point)
Adjusts the location of this rectangle by the specified amount.
Declaration
public void Offset(Point point)Parameters
| Type | Name | Description | 
|---|---|---|
| Point | point | The point. | 
Offset(Int32, Int32)
Adjusts the location of this rectangle by the specified amount.
Declaration
public void Offset(int dx, int dy)Parameters
| Type | Name | Description | 
|---|---|---|
| Int32 | dx | The amount to offset the x-coordinate. | 
| Int32 | dy | The amount to offset the y-coordinate. | 
Round(RectangleF)
Converts a RectangleF to a Rectangle by performing a round operation on all the coordinates.
Declaration
public static Rectangle Round(RectangleF rectangle)Parameters
| Type | Name | Description | 
|---|---|---|
| RectangleF | rectangle | The rectangle. | 
Returns
| Type | Description | 
|---|---|
| Rectangle | The Rectangle. | 
ToString()
Declaration
public override string ToString()Returns
| Type | Description | 
|---|---|
| String | 
Overrides
| Improve this Doc View SourceTransform(Rectangle, Matrix3x2)
Transforms a rectangle by the given matrix.
Declaration
public static RectangleF Transform(Rectangle rectangle, Matrix3x2 matrix)Parameters
| Type | Name | Description | 
|---|---|---|
| Rectangle | rectangle | The source rectangle. | 
| Matrix3x2 | matrix | The transformation matrix. | 
Returns
| Type | Description | 
|---|---|
| RectangleF | A transformed rectangle. | 
Truncate(RectangleF)
Converts a RectangleF to a Rectangle by performing a truncate operation on all the coordinates.
Declaration
public static Rectangle Truncate(RectangleF rectangle)Parameters
| Type | Name | Description | 
|---|---|---|
| RectangleF | rectangle | The rectangle. | 
Returns
| Type | Description | 
|---|---|
| Rectangle | The Rectangle. | 
Union(Rectangle, Rectangle)
Creates a rectangle that represents the union between a and b.
Declaration
public static Rectangle Union(Rectangle a, Rectangle b)Parameters
| Type | Name | Description | 
|---|---|---|
| Rectangle | a | The first rectangle. | 
| Rectangle | b | The second rectangle. | 
Returns
| Type | Description | 
|---|---|
| Rectangle | The Rectangle. | 
Operators
| Improve this Doc View SourceEquality(Rectangle, Rectangle)
Compares two Rectangle objects for equality.
Declaration
public static bool operator ==(Rectangle left, Rectangle right)Parameters
| Type | Name | Description | 
|---|---|---|
| Rectangle | left | The Rectangle on the left side of the operand. | 
| Rectangle | right | The Rectangle on the right side of the operand. | 
Returns
| Type | Description | 
|---|---|
| Boolean | True if the current left is equal to the  | 
Implicit(Rectangle to RectangleF)
Creates a RectangleF with the coordinates of the specified Rectangle.
Declaration
public static implicit operator RectangleF(Rectangle rectangle)Parameters
| Type | Name | Description | 
|---|---|---|
| Rectangle | rectangle | The rectangle. | 
Returns
| Type | Description | 
|---|---|
| RectangleF | 
Implicit(Rectangle to Vector4)
Declaration
public static implicit operator Vector4(Rectangle rectangle)Parameters
| Type | Name | Description | 
|---|---|---|
| Rectangle | rectangle | The rectangle. | 
Returns
| Type | Description | 
|---|---|
| Vector4 | 
Inequality(Rectangle, Rectangle)
Compares two Rectangle objects for inequality.
Declaration
public static bool operator !=(Rectangle left, Rectangle right)Parameters
| Type | Name | Description | 
|---|---|---|
| Rectangle | left | The Rectangle on the left side of the operand. | 
| Rectangle | right | The Rectangle on the right side of the operand. | 
Returns
| Type | Description | 
|---|---|
| Boolean | True if the current left is unequal to the  |