Nous avons une application Silverlight qui doit charger un certain nombre de fichiers .png. Nous pouvons charger les images correctement, mais Silverlight ne supporte pas la lecture des données de pixels de la classe Image. Quelqu'un peut-il suggérer une solution simple pour obtenir ces données? Notre meilleur pari actuel serait une bibliothèque de chargement .png de tierce partie, mais nous avons du mal à en trouver une appropriée.Obtention de données de pixels .png dans Silverlight
Répondre
Le décodage PNG est difficile à trouver.
J'ai écrit un article pour MSDN qui comprend un code source ouvert que j'ai bricolé à partir de Joe Stegman, FluxCapacity, et quelques autres. Il inclut le décodage PNG (ainsi que GIF, JPG et BMP) pour ceux de ce thread qui recherchent cela.
http://www.microsoft.com/youshapeit/msdn/ExpertKnowledge/2008-10/InnovateWithSilverlight2.aspx
Si vous ne vous inquiétez pas pour ma mise en œuvre pour Silverlight, vous pouvez aller directement à ce que je modifié pour le décodage PNG: http://sourceforge.net/projects/pr2/
Cheers!
Mise à jour: On dirait qu'ils n'offrent plus le code source sur le site, donc je republié le contenu ici: http://dimebrain.com/2009/01/innovate-with-silverlight-2-article-code-available.html
Il n'y a pas de classes intégrées pour la manipulation/génération d'imagettes basées sur des pixels dans Silverlight. Vous devez implémenter votre propre encodeur/décodeur PNG qui fonctionne sur un tableau d'octets contenant les informations d'image. Joe Stegman a implémenté un tel encodeur que vous devriez vérifier. Il a obtenu beaucoup d'informations sur les "images modifiables" dans Silverlight au http://blogs.msdn.com/jstegman/. Il fait des choses comme appliquer des filtres aux images, générer des mandrins et plus encore.
Ce blog discuter d'un codeur JPEG Silverilght (FJCore) vous pouvez utiliser pour redimensionner et recompresser les photos Taille du client: http://fluxcapacity.net/2008/07/14/fjcore-to-the-rescue/
Un autre outil est « Fluxify » qui vous permet de redimensionner et de télécharger des photos à l'aide Silverilght 2. Présent à
Alors oui, le traitement d'image côté client peut certainement être fait dans Silverilght 2. Happy hacking!
Malheureusement, il semble que http://fluxtools.net est maintenant une ferme de liens. –
Merci - J'ai vu le blog Joe Stegman. C'est très pratique, mais le décodeur qu'il n'a pas est un PNG. Nous utilisons des fichiers PNG car nous avons besoin de transparence. Le lien FluxTools semble également être cassé. Je cherche toujours (sans succès) pour un décodeur PNG je peux tomber dans Silverlight.
Une option qui peut être plus facile (selon les circonstances) consiste à enregistrer les données de couleur et les données de transparence séparément, puis à appliquer par programme la transparence à l'image une fois chargée. De cette façon, vous pouvez enregistrer l'image en tant que gif 8 bits représentant le canal alpha, plus un fichier jpg ou bmp ou autre pour les données de couleur.
Dimebrain - ce lien msdn que vous avez fourni ne dispose pas d'un lien valide pour le code source - est-il possible que vous ayez un lien vers la source qui fonctionne?
- 1. Comment charger une image de ressource png dans Silverlight?
- 2. Obtention de XAML de l'écran en cours dans silverlight 2
- 3. URL de données/PNG de UIImage
- 4. Programmation de pixels suite
- 5. Liaison de données JSON dans Silverlight
- 6. Service de données ado.net intermédiaire dans Silverlight
- 7. Obtention de données à partir d'un DataGrid
- 8. Exportation de données ou de code vers A .png
- 9. Utilisation de blocs dans un fichier PNG
- 10. Chargement PNG 32 bits dans .NET
- 11. ressources Intégrer (png, jpg, mp3, wmv, etc) dans le fichier silverlight xap et référence de XAML
- 12. Obtention de données dans une instance Windows Workflow
- 13. Sélection de la liaison de données Silverlight?
- 14. liaison de données de base silverlight
- 15. Algorithmes de traitement des pixels
- 16. Propriétés de dépendance et contexte de données dans Silverlight 3
- 17. Appels de services de données ADO.NET synchrones dans Silverlight
- 18. Liaison de données de contrôle utilisateur dans Silverlight/MVVM
- 19. Reconstruction de données de tracé de lecture de couleurs de pixels à partir de fichiers image
- 20. Conversion de pixels en courbes de Bézier dans Actionscript 3
- 21. Obtention de données supplémentaires pour une entité de domaine
- 22. Obtention de données XML à partir de la 3ème fonction?
- 23. Silverlight Unit Testing (liaison de données, MVVM)
- 24. Prism (2) Silverlight Données de référence
- 25. Comment copier les données de pixels d'une texture dans un bitmap (direct3d)?
- 26. Comment connecter la base de données dans les applications Silverlight
- 27. Personnalisation des points de données dans les graphiques Silverlight
- 28. Combobox dans un formulaire de données Silverlight 3.0
- 29. Affichage d'une structure de données dynamique dans Silverlight DataGrid
- 30. Comment effacer tous les formulaires/données de grille dans Silverlight?
Salut, Le lien vous votre article ne fonctionne plus. Y a-t-il un autre endroit où je peux le trouver? Merci. – Sorskoot
Bonjour, c'est mis à jour maintenant. On dirait que c'est allé au seau d'archives assez rapidement. –