2009-07-07 2 views
5

Ich entwickle eine Anwendung, die 16-Bit-Graustufenbilder anzeigt. Die Benutzeroberfläche für die Anwendung wurde ursprünglich mit Win Forms erstellt, und da Win Forms 16-Bit-Graustufen nicht unterstützt, habe ich ein benutzerdefiniertes openGL-Steuerelement geschrieben, um das Bild anzuzeigen. In den letzten paar Monaten haben wir die Benutzeroberfläche in WPF konvertiert, aber weiterhin die OpenGL-Bildanzeige über einen WindowsFormsHost verwendet.16-Bit-Graustufen-Bildanzeige in WPF

WPF ist DirectX-basiert, daher wäre es sinnvoll, von openGL wegzukommen, aber unterstützt WPF nativ 16-Bit-Graustufenbilder? Oder muss ich ein DirectX-Steuerelement erstellen?

Das openGL-Steuerelement wird nicht nur zum Anzeigen der Bilddaten verwendet. Mit der Steuerung kann der Benutzer das Bild auf verschiedene Arten bearbeiten (spiegeln, drehen, zoomen, schwenken, beschneiden usw.); sowie das Bild mit Anmerkungen versehen (Linien, Rechtecke, Messwinkel usw. zeichnen). Wenn ich WPF einfach zum Anzeigen des Bildes verwende, wie kann ich auch WPF verwenden und mit Anmerkungen versehen? Außerdem verwende ich einen Shader, um eine Farbzuordnung der Bildstruktur vorzunehmen. Ist so etwas mit WPF möglich oder muss ich die Bilddaten vor der Anzeige manuell farblich zuordnen?

Ich habe noch nie DirectX verwendet, also ist es beim Schreiben einer DirectX-Steuerung notwendig, wie schwierig es ist, zu lernen und zu implementieren, was ich brauche?

Antwort