private static void testJpegOutput(JpegImage jpeg, CompressionParameters parameters, string jpegFileName) { using (FileStream output = new FileStream(jpegFileName, FileMode.Create)) jpeg.WriteJpeg(output, parameters); FileAssert.AreEqual(jpegFileName, Tester.MapExpectedPath(jpegFileName)); }
private static void testBitmapOutput(JpegImage jpeg, string bitmapFileName) { using (FileStream output = new FileStream(bitmapFileName, FileMode.Create)) jpeg.WriteBitmap(output); FileAssert.AreEqual(bitmapFileName, Tester.MapExpectedPath(bitmapFileName)); }
private static void testJpegFromBitmap(Bitmap bmp, string jpegFileName) { using (JpegImage jpeg = new JpegImage(bmp)) { Assert.AreEqual(jpeg.Width, bmp.Width); Assert.AreEqual(jpeg.Height, bmp.Height); Assert.AreEqual(jpeg.ComponentsPerSample, 3);//Number of components in Bitmap using (FileStream output = new FileStream(jpegFileName, FileMode.Create)) jpeg.WriteJpeg(output); } FileAssert.AreEqual(jpegFileName, Tester.MapExpectedPath(jpegFileName)); }
public void TestCompressorWithContextRows() { using (MemoryStream stream = new MemoryStream()) { jpeg_compress_struct compressor = new jpeg_compress_struct(new jpeg_error_mgr()); compressor.Image_height = 100; compressor.Image_width = 100; compressor.In_color_space = J_COLOR_SPACE.JCS_GRAYSCALE; compressor.Input_components = 1; compressor.jpeg_set_defaults(); compressor.Dct_method = J_DCT_METHOD.JDCT_IFAST; compressor.Smoothing_factor = 94; compressor.jpeg_set_quality(75, true); compressor.jpeg_simple_progression(); compressor.Density_unit = DensityUnit.Unknown; compressor.X_density = (short)96; compressor.Y_density = (short)96; compressor.jpeg_stdio_dest(stream); compressor.jpeg_start_compress(true); byte[][] rowForDecompressor = new byte[1][]; int bytesPerPixel = 1; while (compressor.Next_scanline < compressor.Image_height) { byte[] row = new byte[100 * bytesPerPixel]; // wasteful, but gets you 0 bytes every time - content is immaterial. rowForDecompressor[0] = row; compressor.jpeg_write_scanlines(rowForDecompressor, 1); } compressor.jpeg_finish_compress(); byte[] bytes = stream.ToArray(); string filename = "TestCompressorWithContextRows.jpg"; File.WriteAllBytes(Tester.MapOutputPath(filename), bytes); FileAssert.AreEqual(Tester.MapExpectedPath(filename), Tester.MapOutputPath(filename)); } }