• Articles
  • API Documentation
Search Results for

    Show / Hide Table of Contents
    • SixLabors.ImageSharp
      • ByteOrder
      • Color
      • ColorMatrix
      • Configuration
      • DenseMatrix<T>
      • GeometryUtilities
      • GraphicOptionsDefaultsExtensions
      • GraphicsOptions
      • IDeepCloneable
      • IDeepCloneable<T>
      • Image
      • ImageExtensions
      • ImageFormatException
      • ImageFrame
      • ImageFrameCollection
      • ImageFrameCollectionExtensions
      • ImageFrameCollection<TPixel>
      • ImageFrame<TPixel>
      • ImageInfo
      • ImageProcessingException
      • Image<TPixel>
      • IndexedImageFrame<TPixel>
      • InvalidImageContentException
      • Matrix3x2Extensions
      • MetadataExtensions
      • Number
      • PixelAccessorAction<TPixel>
      • PixelAccessorAction<TPixel1, TPixel2>
      • PixelAccessorAction<TPixel1, TPixel2, TPixel3>
      • PixelAccessor<TPixel>
      • Point
      • PointF
      • Rational
      • ReadOrigin
      • Rectangle
      • RectangleF
      • SignedRational
      • Size
      • SizeF
      • UnknownImageFormatException
    • SixLabors.ImageSharp.Advanced
      • AdvancedImageExtensions
      • IConfigurationProvider
      • IImageVisitor
      • IImageVisitorAsync
      • IRowIntervalOperation
      • IRowIntervalOperation<TBuffer>
      • IRowOperation
      • IRowOperation<TBuffer>
      • ParallelExecutionSettings
      • ParallelRowIterator
    • SixLabors.ImageSharp.ColorSpaces
      • CieLab
      • CieLch
      • CieLchuv
      • CieLuv
      • CieXyy
      • CieXyz
      • Cmyk
      • Hsl
      • Hsv
      • HunterLab
      • Illuminants
      • LinearRgb
      • Lms
      • Rgb
      • RgbWorkingSpaces
      • YCbCr
    • SixLabors.ImageSharp.ColorSpaces.Companding
      • GammaCompanding
      • LCompanding
      • Rec2020Companding
      • Rec709Companding
      • SRgbCompanding
    • SixLabors.ImageSharp.ColorSpaces.Conversion
      • CieXyChromaticityCoordinates
      • ColorSpaceConverter
      • ColorSpaceConverterOptions
      • GammaWorkingSpace
      • IChromaticAdaptation
      • LWorkingSpace
      • LmsAdaptationMatrix
      • Rec2020WorkingSpace
      • Rec709WorkingSpace
      • RgbPrimariesChromaticityCoordinates
      • RgbWorkingSpace
      • SRgbWorkingSpace
      • VonKriesChromaticAdaptation
    • SixLabors.ImageSharp.Compression.Zlib
      • DeflateCompressionLevel
    • SixLabors.ImageSharp.Diagnostics
      • MemoryDiagnostics
      • UndisposedAllocationDelegate
    • SixLabors.ImageSharp.Formats
      • DecoderOptions
      • IImageDecoder
      • IImageEncoder
      • IImageFormat
      • IImageFormatConfigurationModule
      • IImageFormatDetector
      • IImageFormat<TFormatMetadata>
      • IImageFormat<TFormatMetadata, TFormatFrameMetadata>
      • ISpecializedDecoderOptions
      • ISpecializedImageDecoder<T>
      • ImageDecoder
      • ImageEncoder
      • ImageFormatManager
      • PixelTypeInfo
      • QuantizingImageEncoder
      • SpecializedImageDecoder<T>
    • SixLabors.ImageSharp.Formats.Bmp
      • BmpBitsPerPixel
      • BmpConfigurationModule
      • BmpDecoder
      • BmpDecoderOptions
      • BmpEncoder
      • BmpFileMarkerType
      • BmpFormat
      • BmpImageFormatDetector
      • BmpInfoHeaderType
      • BmpMetadata
      • RleSkippedPixelHandling
    • SixLabors.ImageSharp.Formats.Gif
      • GifColorTableMode
      • GifConfigurationModule
      • GifDecoder
      • GifDisposalMethod
      • GifEncoder
      • GifFormat
      • GifFrameMetadata
      • GifImageFormatDetector
      • GifMetadata
      • IGifExtension
    • SixLabors.ImageSharp.Formats.Jpeg
      • JpegConfigurationModule
      • JpegDecoder
      • JpegDecoderOptions
      • JpegDecoderResizeMode
      • JpegEncoder
      • JpegEncodingColor
      • JpegFormat
      • JpegImageFormatDetector
      • JpegMetadata
    • SixLabors.ImageSharp.Formats.Jpeg.Components.Encoder
      • HuffmanSpec
    • SixLabors.ImageSharp.Formats.Pbm
      • PbmColorType
      • PbmComponentType
      • PbmConfigurationModule
      • PbmDecoder
      • PbmEncoder
      • PbmEncoding
      • PbmFormat
      • PbmImageFormatDetector
      • PbmMetadata
    • SixLabors.ImageSharp.Formats.Png
      • PngBitDepth
      • PngBlendMethod
      • PngChunkFilter
      • PngColorType
      • PngConfigurationModule
      • PngCrcChunkHandling
      • PngDecoder
      • PngDecoderOptions
      • PngDisposalMethod
      • PngEncoder
      • PngFilterMethod
      • PngFormat
      • PngFrameMetadata
      • PngImageFormatDetector
      • PngInterlaceMode
      • PngMetadata
      • PngTransparentColorMode
    • SixLabors.ImageSharp.Formats.Png.Chunks
      • PngTextData
    • SixLabors.ImageSharp.Formats.Qoi
      • QoiChannels
      • QoiColorSpace
      • QoiConfigurationModule
      • QoiEncoder
      • QoiFormat
      • QoiImageFormatDetector
      • QoiMetadata
    • SixLabors.ImageSharp.Formats.Tga
      • TgaBitsPerPixel
      • TgaCompression
      • TgaConfigurationModule
      • TgaDecoder
      • TgaEncoder
      • TgaFormat
      • TgaImageFormatDetector
      • TgaImageType
      • TgaImageTypeExtensions
      • TgaMetadata
    • SixLabors.ImageSharp.Formats.Tiff
      • TiffBitsPerPixel
      • TiffBitsPerSample
      • TiffConfigurationModule
      • TiffDecoder
      • TiffEncoder
      • TiffFormat
      • TiffFormatType
      • TiffFrameMetadata
      • TiffImageFormatDetector
      • TiffMetadata
    • SixLabors.ImageSharp.Formats.Tiff.Compression
      • FaxCompressionOptions
    • SixLabors.ImageSharp.Formats.Tiff.Compression.Decompressors
      • LzwString
    • SixLabors.ImageSharp.Formats.Tiff.Constants
      • TiffCompression
      • TiffInkSet
      • TiffNewSubfileType
      • TiffPhotometricInterpretation
      • TiffPlanarConfiguration
      • TiffPredictor
      • TiffSampleFormat
      • TiffSubfileType
    • SixLabors.ImageSharp.Formats.Webp
      • BackgroundColorHandling
      • WebpBitsPerPixel
      • WebpBlendMethod
      • WebpConfigurationModule
      • WebpDecoder
      • WebpDecoderOptions
      • WebpDisposalMethod
      • WebpEncoder
      • WebpEncodingMethod
      • WebpFileFormatType
      • WebpFormat
      • WebpFrameMetadata
      • WebpImageFormatDetector
      • WebpMetadata
      • WebpTransparentColorMode
    • SixLabors.ImageSharp.Memory
      • AllocationOptions
      • Buffer2DExtensions
      • Buffer2DRegion<T>
      • Buffer2D<T>
      • IMemoryGroup<T>
      • InvalidMemoryOperationException
      • MemoryAllocator
      • MemoryAllocatorExtensions
      • MemoryAllocatorOptions
      • RowInterval
      • SimpleGcMemoryAllocator
    • SixLabors.ImageSharp.Metadata
      • ImageFrameMetadata
      • ImageMetadata
      • PixelResolutionUnit
    • SixLabors.ImageSharp.Metadata.Profiles.Cicp
      • CicpColorPrimaries
      • CicpMatrixCoefficients
      • CicpProfile
      • CicpTransferCharacteristics
    • SixLabors.ImageSharp.Metadata.Profiles.Exif
      • EncodedString
      • EncodedString.CharacterCode
      • ExifDataType
      • ExifOrientationMode
      • ExifParts
      • ExifProfile
      • ExifTag
      • ExifTag<TValueType>
      • IExifValue
      • IExifValue<TValueType>
    • SixLabors.ImageSharp.Metadata.Profiles.Icc
      • IccColorSpaceType
      • IccDeviceAttribute
      • IccPrimaryPlatformType
      • IccProfile
      • IccProfileClass
      • IccProfileFlag
      • IccProfileHeader
      • IccProfileId
      • IccProfileTag
      • IccRenderingIntent
      • IccTagDataEntry
      • IccTypeSignature
      • IccVersion
      • InvalidIccProfileException
    • SixLabors.ImageSharp.Metadata.Profiles.Iptc
      • IptcProfile
      • IptcTag
      • IptcTagExtensions
      • IptcValue
    • SixLabors.ImageSharp.Metadata.Profiles.Xmp
      • XmpProfile
    • SixLabors.ImageSharp.PixelFormats
      • A8
      • Abgr32
      • Argb32
      • Bgr24
      • Bgr565
      • Bgra32
      • Bgra4444
      • Bgra5551
      • Byte4
      • HalfSingle
      • HalfVector2
      • HalfVector4
      • IPackedVector<TPacked>
      • IPixel
      • IPixel<TSelf>
      • L16
      • L8
      • La16
      • La32
      • NormalizedByte2
      • NormalizedByte4
      • NormalizedShort2
      • NormalizedShort4
      • PixelAlphaCompositionMode
      • PixelAlphaRepresentation
      • PixelBlender<TPixel>
      • PixelColorBlendingMode
      • PixelConversionModifiers
      • PixelOperations<TPixel>
      • Rg32
      • Rgb24
      • Rgb48
      • Rgba1010102
      • Rgba32
      • Rgba64
      • RgbaVector
      • Short2
      • Short4
    • SixLabors.ImageSharp.Processing
      • AdaptiveThresholdExtensions
      • AffineTransformBuilder
      • AnchorPositionMode
      • AutoOrientExtensions
      • BackgroundColorExtensions
      • BinaryDitherExtensions
      • BinaryThresholdExtensions
      • BinaryThresholdMode
      • BlackWhiteExtensions
      • BokehBlurExtensions
      • BoxBlurExtensions
      • BrightnessExtensions
      • ColorBlindnessExtensions
      • ColorBlindnessMode
      • ContrastExtensions
      • CropExtensions
      • DetectEdgesExtensions
      • DitherExtensions
      • DrawImageExtensions
      • EntropyCropExtensions
      • FilterExtensions
      • FlipExtensions
      • FlipMode
      • GaussianBlurExtensions
      • GaussianSharpenExtensions
      • GlowExtensions
      • GrayscaleExtensions
      • GrayscaleMode
      • HistogramEqualizationExtensions
      • HueExtensions
      • IImageProcessingContext
      • InvertExtensions
      • KnownDitherings
      • KnownEdgeDetectorKernels
      • KnownFilterMatrices
      • KnownQuantizers
      • KnownResamplers
      • KodachromeExtensions
      • LightnessExtensions
      • LomographExtensions
      • MedianBlurExtensions
      • OilPaintExtensions
      • OpacityExtensions
      • PadExtensions
      • PixelRowDelegateExtensions
      • PixelRowOperation
      • PixelRowOperation<T>
      • PixelateExtensions
      • PolaroidExtensions
      • ProcessingExtensions
      • ProjectiveTransformBuilder
      • QuantizeExtensions
      • ResizeExtensions
      • ResizeMode
      • ResizeOptions
      • RotateExtensions
      • RotateFlipExtensions
      • RotateMode
      • SaturateExtensions
      • SepiaExtensions
      • SkewExtensions
      • SwizzleExtensions
      • TaperCorner
      • TaperSide
      • TransformExtensions
      • TransformSpace
      • VignetteExtensions
    • SixLabors.ImageSharp.Processing.Processors
      • CloningImageProcessor
      • CloningImageProcessor<TPixel>
      • ICloningImageProcessor
      • ICloningImageProcessor<TPixel>
      • IImageProcessor
      • IImageProcessor<TPixel>
      • ImageProcessor<TPixel>
    • SixLabors.ImageSharp.Processing.Processors.Binarization
      • AdaptiveThresholdProcessor
      • BinaryThresholdProcessor
    • SixLabors.ImageSharp.Processing.Processors.Convolution
      • BokehBlurProcessor
      • BorderWrappingMode
      • BoxBlurProcessor
      • EdgeDetector2DKernel
      • EdgeDetector2DProcessor
      • EdgeDetectorCompassKernel
      • EdgeDetectorCompassProcessor
      • EdgeDetectorKernel
      • EdgeDetectorProcessor
      • GaussianBlurProcessor
      • GaussianSharpenProcessor
      • MedianBlurProcessor
    • SixLabors.ImageSharp.Processing.Processors.Dithering
      • ErrorDither
      • IDither
      • IPaletteDitherImageProcessor<TPixel>
      • OrderedDither
      • PaletteDitherProcessor
    • SixLabors.ImageSharp.Processing.Processors.Drawing
      • DrawImageProcessor
    • SixLabors.ImageSharp.Processing.Processors.Effects
      • IPixelRowDelegate
      • OilPaintingProcessor
      • PixelateProcessor
    • SixLabors.ImageSharp.Processing.Processors.Filters
      • AchromatomalyProcessor
      • AchromatopsiaProcessor
      • BlackWhiteProcessor
      • BrightnessProcessor
      • ContrastProcessor
      • DeuteranomalyProcessor
      • DeuteranopiaProcessor
      • FilterProcessor
      • GrayscaleBt601Processor
      • GrayscaleBt709Processor
      • HueProcessor
      • InvertProcessor
      • KodachromeProcessor
      • LightnessProcessor
      • LomographProcessor
      • OpacityProcessor
      • PolaroidProcessor
      • ProtanomalyProcessor
      • ProtanopiaProcessor
      • SaturateProcessor
      • SepiaProcessor
      • TritanomalyProcessor
      • TritanopiaProcessor
    • SixLabors.ImageSharp.Processing.Processors.Normalization
      • AdaptiveHistogramEqualizationProcessor
      • AdaptiveHistogramEqualizationSlidingWindowProcessor
      • AutoLevelProcessor
      • GlobalHistogramEqualizationProcessor
      • HistogramEqualizationMethod
      • HistogramEqualizationOptions
      • HistogramEqualizationProcessor
    • SixLabors.ImageSharp.Processing.Processors.Overlays
      • BackgroundColorProcessor
      • GlowProcessor
      • VignetteProcessor
    • SixLabors.ImageSharp.Processing.Processors.Quantization
      • ColorMatchingMode
      • DefaultPixelSamplingStrategy
      • ExtensivePixelSamplingStrategy
      • IPixelSamplingStrategy
      • IQuantizer
      • IQuantizer<TPixel>
      • OctreeQuantizer
      • OctreeQuantizer<TPixel>
      • PaletteQuantizer
      • QuantizeProcessor
      • QuantizerConstants
      • QuantizerOptions
      • QuantizerUtilities
      • WebSafePaletteQuantizer
      • WernerPaletteQuantizer
      • WuQuantizer
    • SixLabors.ImageSharp.Processing.Processors.Transforms
      • AffineTransformProcessor
      • AutoOrientProcessor
      • BicubicResampler
      • BoxResampler
      • CropProcessor
      • CubicResampler
      • DegenerateTransformException
      • EntropyCropProcessor
      • FlipProcessor
      • IResampler
      • IResamplingTransformImageProcessor<TPixel>
      • ISwizzler
      • LanczosResampler
      • NearestNeighborResampler
      • ProjectiveTransformProcessor
      • ResizeProcessor
      • RotateProcessor
      • SkewProcessor
      • SwizzleProcessor<TSwizzler>
      • TriangleResampler
      • WelchResampler

    Struct Rational

    Represents a number that can be expressed as a fraction.

    Implements
    IEquatable<Rational>
    Inherited Members
    object.Equals(object, object)
    object.GetType()
    object.ReferenceEquals(object, object)
    Namespace: SixLabors.ImageSharp
    Assembly: SixLabors.ImageSharp.dll
    Syntax
    public readonly struct Rational : IEquatable<Rational>
    Remarks

    This is a very simplified implementation of a rational number designed for use with metadata only.

    Constructors

    | Edit this page View Source

    Rational(double)

    Initializes a new instance of the Rational struct.

    Declaration
    public Rational(double value)
    Parameters
    Type Name Description
    double value

    The double to create the instance from.

    | Edit this page View Source

    Rational(double, bool)

    Initializes a new instance of the Rational struct.

    Declaration
    public Rational(double value, bool bestPrecision)
    Parameters
    Type Name Description
    double value

    The double to create the instance from.

    bool bestPrecision

    Whether to use the best possible precision when parsing the value.

    | Edit this page View Source

    Rational(uint)

    Initializes a new instance of the Rational struct.

    Declaration
    public Rational(uint value)
    Parameters
    Type Name Description
    uint value

    The uint to create the rational from.

    | Edit this page View Source

    Rational(uint, uint)

    Initializes a new instance of the Rational struct.

    Declaration
    public Rational(uint numerator, uint denominator)
    Parameters
    Type Name Description
    uint numerator

    The number above the line in a vulgar fraction showing how many of the parts indicated by the denominator are taken.

    uint denominator

    The number below the line in a vulgar fraction; a divisor.

    | Edit this page View Source

    Rational(uint, uint, bool)

    Initializes a new instance of the Rational struct.

    Declaration
    public Rational(uint numerator, uint denominator, bool simplify)
    Parameters
    Type Name Description
    uint numerator

    The number above the line in a vulgar fraction showing how many of the parts indicated by the denominator are taken.

    uint denominator

    The number below the line in a vulgar fraction; a divisor.

    bool simplify

    Specified if the rational should be simplified.

    Properties

    | Edit this page View Source

    Denominator

    Gets the denominator of a number.

    Declaration
    public uint Denominator { get; }
    Property Value
    Type Description
    uint
    | Edit this page View Source

    Numerator

    Gets the numerator of a number.

    Declaration
    public uint Numerator { get; }
    Property Value
    Type Description
    uint

    Methods

    | Edit this page View Source

    Equals(Rational)

    Indicates whether the current object is equal to another object of the same type.

    Declaration
    public bool Equals(Rational other)
    Parameters
    Type Name Description
    Rational other

    An object to compare with this object.

    Returns
    Type Description
    bool

    true if the current object is equal to the other parameter; otherwise, false.

    | Edit this page View Source

    Equals(object?)

    Indicates whether this instance and a specified object are equal.

    Declaration
    public override bool Equals(object? obj)
    Parameters
    Type Name Description
    object obj

    The object to compare with the current instance.

    Returns
    Type Description
    bool

    true if obj and this instance are the same type and represent the same value; otherwise, false.

    Overrides
    ValueType.Equals(object)
    | Edit this page View Source

    FromDouble(double)

    Converts the specified double to an instance of this type.

    Declaration
    public static Rational FromDouble(double value)
    Parameters
    Type Name Description
    double value

    The double to convert to an instance of this type.

    Returns
    Type Description
    Rational

    The Rational.

    | Edit this page View Source

    FromDouble(double, bool)

    Converts the specified double to an instance of this type.

    Declaration
    public static Rational FromDouble(double value, bool bestPrecision)
    Parameters
    Type Name Description
    double value

    The double to convert to an instance of this type.

    bool bestPrecision

    Whether to use the best possible precision when parsing the value.

    Returns
    Type Description
    Rational

    The Rational.

    | Edit this page View Source

    GetHashCode()

    Returns the hash code for this instance.

    Declaration
    public override int GetHashCode()
    Returns
    Type Description
    int

    A 32-bit signed integer that is the hash code for this instance.

    Overrides
    ValueType.GetHashCode()
    | Edit this page View Source

    ToDouble()

    Converts a rational number to the nearest double.

    Declaration
    public double ToDouble()
    Returns
    Type Description
    double

    The double.

    | Edit this page View Source

    ToSingle()

    Converts a rational number to the nearest float.

    Declaration
    public float ToSingle()
    Returns
    Type Description
    float

    The float.

    | Edit this page View Source

    ToString()

    Returns the fully qualified type name of this instance.

    Declaration
    public override string ToString()
    Returns
    Type Description
    string

    The fully qualified type name.

    Overrides
    ValueType.ToString()
    | Edit this page View Source

    ToString(IFormatProvider)

    Converts the numeric value of this instance to its equivalent string representation using the specified culture-specific format information.

    Declaration
    public string ToString(IFormatProvider provider)
    Parameters
    Type Name Description
    IFormatProvider provider

    An object that supplies culture-specific formatting information.

    Returns
    Type Description
    string

    The string

    Operators

    | Edit this page View Source

    operator ==(Rational, Rational)

    Determines whether the specified Rational instances are considered equal.

    Declaration
    public static bool operator ==(Rational left, Rational right)
    Parameters
    Type Name Description
    Rational left

    The first Rational to compare.

    Rational right

    The second Rational to compare.

    Returns
    Type Description
    bool

    The bool

    | Edit this page View Source

    operator !=(Rational, Rational)

    Determines whether the specified Rational instances are not considered equal.

    Declaration
    public static bool operator !=(Rational left, Rational right)
    Parameters
    Type Name Description
    Rational left

    The first Rational to compare.

    Rational right

    The second Rational to compare.

    Returns
    Type Description
    bool

    The bool

    Implements

    IEquatable<T>
    • Edit this page
    • View Source
    In this article
    Back to top Generated by DocFX