How to import an PNG file with vtkImageImport?

Hi,
I tried with following code snippet but got a wrong image rendered.

        MemoryStream ms1 = new MemoryStream();
        Image image = Image.FromFile(@"D:\visual studio 2015\Projects\VTKImageBufferRender\VTKImageBufferRender\administrator.png");
        image.Save(ms1, System.Drawing.Imaging.ImageFormat.Png);

        GCHandle hObject = GCHandle.Alloc(ms1.GetBuffer(), GCHandleType.Pinned);
        IntPtr buffer = hObject.AddrOfPinnedObject();

        if (hObject.IsAllocated)
        {
            hObject.Free();
        }

        vtkImageImport imageImport = vtkImageImport.New();
        imageImport.SetDataSpacing(1, 1, 1);
        imageImport.SetDataOrigin(0, 0, 0);
         imageImport.SetWholeExtent(0, image.Width - 1, 0, image.Height - 1, 0, 0);
        imageImport.SetDataExtentToWholeExtent();
        imageImport.SetDataScalarTypeToUnsignedChar();
        imageImport.SetNumberOfScalarComponents(4);
        imageImport.SetImportVoidPointer(buffer);
        imageImport.Update();

        // Create an actor
        vtkImageActor actor = vtkImageActor.New();
        actor.SetInputData(imageImport.GetOutput());

        // Setup renderer
        vtkRenderer renderer = vtkRenderer.New();
        renderer.AddActor(actor);
        renderer.ResetCamera();

        // Setup render window
        vtkRenderWindow renderWindow = vtkRenderWindow.New();
        renderWindow.AddRenderer(renderer);

        // Setup render window interactor
        vtkRenderWindowInteractor renderWindowInteractor = vtkRenderWindowInteractor.New();
        vtkInteractorStyleImage style = vtkInteractorStyleImage.New();

        renderWindowInteractor.SetInteractorStyle(style);

        // Render and start interaction
        renderWindowInteractor.SetRenderWindow(renderWindow);
        renderWindow.Render();
        renderWindowInteractor.Initialize();

        renderWindowInteractor.Start();

Original PNG file:
image

Rendered Image inside VTK window
image

Wouldn’t it be easier to just use the vtkPNGReader class?
https://vtk.org/doc/release/7.1/html/classvtkPNGReader.html

Yes,vtkPNGReader should be working. But I just want to know how to do this with vtkImageImport. I think I’ve found the root cause. Thanks anyway.