public void LargeImageTest(bool interpolate) { // this is a test of the DrawImage function; don't add pointless backgrounds to your plots var plotModel = CreateTestModel1(); var pixelData = new OxyColor[5, 5]; for (int i = 0; i < pixelData.GetLength(0); i++) { for (int j = 0; j < pixelData.GetLength(1); j++) { pixelData[i, j] = OxyColor.FromArgb(255, 128, (byte)((i * 255) / pixelData.GetLength(0)), (byte)((j * 255) / pixelData.GetLength(1))); } } var oxyImage = OxyImage.Create(pixelData, ImageFormat.Png); var imageAnnotation = new ImageAnnotation() { ImageSource = oxyImage, X = new PlotLength(-1, PlotLengthUnit.RelativeToViewport), Y = new PlotLength(-1, PlotLengthUnit.RelativeToViewport), Width = new PlotLength(3, PlotLengthUnit.RelativeToViewport), Height = new PlotLength(3, PlotLengthUnit.RelativeToViewport), HorizontalAlignment = HorizontalAlignment.Left, VerticalAlignment = VerticalAlignment.Top, Interpolate = interpolate }; plotModel.Annotations.Add(imageAnnotation); var fileName = Path.Combine(this.outputDirectory, $"LargeImage{(interpolate ? "Interpolated" : "Pixelated")}.png"); var exporter = new PngExporter { Width = 400, Height = 300 }; using (var stream = File.OpenWrite(fileName)) { exporter.Export(plotModel, stream); } Assert.IsTrue(File.Exists(fileName)); }