コード例 #1
0
 public void Decode_DetectsCorrectColorType <TPixel>(TestImageProvider <TPixel> provider, JpegColorType expectedColorType)
     where TPixel : unmanaged, IPixel <TPixel>
 {
     using (Image <TPixel> image = provider.GetImage(JpegDecoder))
     {
         JpegMetadata meta = image.Metadata.GetJpegMetadata();
         Assert.Equal(expectedColorType, meta.ColorType);
     }
 }
コード例 #2
0
        public void EncodeBaseline_WorksWithDiscontiguousBuffers <TPixel>(TestImageProvider <TPixel> provider, JpegColorType colorType)
            where TPixel : unmanaged, IPixel <TPixel>
        {
            ImageComparer comparer = colorType == JpegColorType.YCbCrRatio444
                ? ImageComparer.TolerantPercentage(0.1f)
                : ImageComparer.TolerantPercentage(5f);

            provider.LimitAllocatorBufferCapacity().InBytesSqrt(200);
            TestJpegEncoderCore(provider, colorType, 100, comparer);
        }
コード例 #3
0
        public void Encode_PreservesColorType <TPixel>(TestImageProvider <TPixel> provider, JpegColorType expectedColorType)
            where TPixel : unmanaged, IPixel <TPixel>
        {
            // arrange
            using Image <TPixel> input = provider.GetImage(JpegDecoder);
            using var memoryStream = new MemoryStream();

            // act
            input.Save(memoryStream, JpegEncoder);

            // assert
            memoryStream.Position = 0;
            using var output      = Image.Load <Rgba32>(memoryStream);
            JpegMetadata meta = output.Metadata.GetJpegMetadata();

            Assert.Equal(expectedColorType, meta.ColorType);
        }
コード例 #4
0
 public void EncodeBaseline_WithSmallImages_IsNotBoundToSinglePixelType <TPixel>(TestImageProvider <TPixel> provider, JpegColorType colorType, int quality)
     where TPixel : unmanaged, IPixel <TPixel> => TestJpegEncoderCore(provider, colorType, quality, comparer : ImageComparer.Tolerant(0.06f));
コード例 #5
0
 public void EncodeBaseline_IsNotBoundToSinglePixelType <TPixel>(TestImageProvider <TPixel> provider, JpegColorType colorType, int quality)
     where TPixel : unmanaged, IPixel <TPixel> => TestJpegEncoderCore(provider, colorType, quality);
コード例 #6
0
 public void EncodeBaseline_WithSmallImages_WorksWithDifferentSizes <TPixel>(TestImageProvider <TPixel> provider, JpegColorType colorType, int quality)
     where TPixel : unmanaged, IPixel <TPixel> => TestJpegEncoderCore(provider, colorType, quality, comparer : ImageComparer.Tolerant(0.12f));
コード例 #7
0
 public void EncodeBaseline_WorksWithDifferentSizes <TPixel>(TestImageProvider <TPixel> provider, JpegColorType colorType, int quality)
     where TPixel : unmanaged, IPixel <TPixel> => TestJpegEncoderCore(provider, colorType, quality);
コード例 #8
0
 public void EncodeBaseline_CalliphoraPartial <TPixel>(TestImageProvider <TPixel> provider, JpegColorType colorType, int quality)
     where TPixel : unmanaged, IPixel <TPixel> => TestJpegEncoderCore(provider, colorType, quality);