public void CreateModifiedJpegTest(bool saveResultToStorage) { string name = "test.jpg"; int quality = 65; string compressionType = "progressive"; bool? fromScratch = null; string outName = $"{name}_specific.jpg"; string folder = TempFolder; string storage = this.TestStorage; this.TestPostRequest( "CreateModifiedJpegTest", saveResultToStorage, $"Input image: {name}; Quality: {quality}; Compression type: {compressionType}", name, outName, delegate(Stream inputStream, string outPath) { var request = new CreateModifiedJpegRequest(inputStream, quality, compressionType, fromScratch, outPath, storage); return(ImagingApi.CreateModifiedJpeg(request)); }, delegate(ImagingResponse originalProperties, ImagingResponse resultProperties, Stream resultStream) { Assert.NotNull(resultProperties.JpegProperties); Assert.NotNull(originalProperties.JpegProperties); Assert.AreEqual(originalProperties.Width, resultProperties.Width); Assert.AreEqual(originalProperties.Height, resultProperties.Height); }, folder, storage); }
/// <summary> /// Update parameters of existing JPEG image. Image data is passed in a request stream. /// </summary> public void CreateModifiedJpegFromRequestBody() { Console.WriteLine("Update parameters of a JPEG image from request body"); using (var inputImageStream = File.OpenRead(Path.Combine(ExampleImagesFolder, SampleImageFileName))) { int? quality = 65; var compressionType = "progressive"; bool? fromScratch = null; string outPath = null; // Path to updated file (if this is empty, response contains streamed image) string storage = null; // We are using default Cloud Storage var modifiedJpgRequest = new CreateModifiedJpegRequest(inputImageStream, quality, compressionType, fromScratch, outPath, storage); Console.WriteLine( $"Call CreateModifiedJpeg with params: quality:{quality}, compression type:{compressionType}"); using (var updatedImage = ImagingApi.CreateModifiedJpeg(modifiedJpgRequest)) { SaveUpdatedSampleImageToOutput(updatedImage, true); } } Console.WriteLine(); }