30 octobre 2024

Nokia Imaging SDK en 3 lignes, ou presque

SDK Imaging NokiaVoici un petit retour d’expérience que je vous fais part. Ce week-end j’ai décidé de regarder enfin ce Nokia Imaging SDK et pour commencer, j’ai souhaité simplement appliquer un filtre sur une image.

Le challenge semble donc très facile.

On crée un ou plusieurs FilterEffect et on fait un rendu dans un WriteableBitmap avec WriteableBitmapRenderer.

Et voilà ! J’espère que ce tuto vous a plus ?

//on définit le style à appliquer
var filterEffect = new FilterEffect(MonimageStream);
filterEffect.Filters = new[] { new CartoonFilter() };

//Rendu de l'image dans un WriteableBitmap
var ImageRendu = new WriteableBitmap(800,480);
var renderer = new WriteableBitmapRenderer(filterEffect, ImageRendu, OutputOption.PreserveAspectRatio);
await renderer.RenderAsync();
this.imagerendu.Source = ImageRendu;

A bientôt !

Quoi vous êtes encore là ?


Ah, vous avez peut être eu aussi une erreur System.IndexOutOfRangeException:… ?

Et bien oui c’est tout bête pour un expert mais faut penser rembobiner le Stream avant ! :

MonimageStream.Seek(0, SeekOrigin.Begin);

Bon amusement !

Euh…. oui ?


Hum vous avez eu cette erreur ? {System.ArgumentException: The parameter is incorrect at Nokia.Graphics.Imaging.Bitmap..ctor(Size size, ColorMode colorMode, UInt32 scanline, IBuffer data)... »

Et bien il faut le savoir mais il faut absolument mettre un Height et un Width à l’image sinon le SDK tente de faire un rendu sur 0x0 :

<Image x:Name="imagerendu"  Height="480" Width="800"  >

C’est qui le champion ?


Mais c’est Yan Verdavaine ! Un grand merci à lui qui m’aide beaucoup sur tout le coté dév Photo sur Windows Phone !

Voilà mon petit retour d’expérience sur les deux problèmes qui m’ont bloqué ce week-end sur l’utilisation du SKD Imagine et j’espère que cela vous aidera peut être !