Capturing screenshots in .NET MAUI

Screenshots, as the name implies, are photos that are taken of the screen of our device and allow us to capture exactly the scenario that we want in an application. In this case, we will learn how to implement that in our .NET MAUI applications in a super easy way!

Let’s start!

To take Screenshots .NET MAUI gives us the ISscreenshot interface which is exposed through the Screenshot.Default property which is available in the Microsoft.Maui.Media namespace.

📸 Capturing the screenshot

There is a property that helps us confirm that our device supports this functionality:

🔹 IsCaptureSupported: Returns a bool value – Gets a value indicating whether the capturing screenshots are supported.

But also, we have the method that has the most responsibility for making all of this happen:

🔹 CaptureAsync: Returns an ISscreenshotResult. – It’s responsible for capturing the screenshot of the current application. As a result, we have access to different informations about this one, such as width and height.

🔹Stream: IScreenshotResult also has a Stream property that is used to convert the screenshot to an image object.

Joining all the points explained above, we would finally have an example of a method that takes a Screenshot and returns it as an ImageSource, let’s see it in the following code block:

⚠ Example extracted from the official documentation.

🚫 Limitations

Not all views support screen-level capture, such as an OpenGL view.

I hope this article has been helpful to you! 🙋‍♀️

See you next time!💚💕

Spanish post: https://es.askxammy.com/capturando-screenshots-en-net-maui/

Referencias: https://docs.microsoft.com/en-us/dotnet/maui/platform-integration/device-media/screenshot?WT.mc_id=DT-MVP-50033

Tagged ,

Leave a Reply

Your email address will not be published. Required fields are marked *