le problème est le suivant:manipulation bitmap efficace dans WPF (C#)
J'ai un bitmap rendu dans un tableau d'octets (avec l'en-tête bitmap). Maintenant, je veux manipuler le contenu d'un bitmap. Pour cela, j'ai besoin d'envelopper ce tableau avec une classe de haut niveau, disons BitmapImage
. Je veux éviter de copier le tableau, ou sa partie de données etc. Je veux simplement forcer .NET à interpréter mon tableau d'octets comme BitmapImage. Je veux changer le contenu en rendant quelques choses à RenderTargetBitmap
, puis interpréter ses bits de données comme les bits de mon image. Pour le rendu, je dois utiliser la paire standard DrawingContext, DrawingVisual
. Ainsi, ce serait génial si je pouvais TRAVAILLER sur la partie de données de mon tableau d'octets et rendre mon image finale à ce sous-tableau. Ensuite, je n'ai pas eu besoin d'effectuer de copie et la performance serait géniale.
Comment accélérer le calcul et obtenir des résultats à couper le souffle? :-)
Merci d'avance pour les réponses!
Vive
Yup, j'ai pensé à WriteableBitmap, mais comment rendre DrawingVisual à cela, sans copier les données en arrière et en avant? Je voudrais éviter la copie pour des raisons de performance ... Que suggérez-vous? – Jamie
Pour autant que je sache, ce n'est pas possible sans copie. Puis-je demander ce que vous aimeriez accomplir? Vous voulez fusionner DrawingVisual (graphique vectoriel) avec une image? Peut-être que vous pouvez le placer au-dessus de cette image (utiliser Canvas Zindex par exemple) de sorte qu'il ressemblera à une image –
Oui, je veux fusionner DrawingVisual avec une image (que j'ai actuellement comme tableau d'octets) ... – Jamie