Grafiken und Multimedia

Windows Presentation Foundation (WPF) bietet Unterstützung für Multimedia, Vektorgrafiken, Animation und Inhaltskomposition, wodurch Entwickler auf einfache Weise interessante Benutzeroberflächen und Benutzerinhalte erstellen können. Mit Microsoft Visual Studio können Sie Vektorgrafiken oder komplexe Animationen erstellen und Medien in die Anwendungen integrieren.

In diesem Thema werden die Grafik-, Animations- und Medienfeatures von WPF vorgestellt, mit denen Sie den Anwendungen Grafiken, Übergangseffekte, Sound und Video hinzufügen können.

HinweisHinweis

Es wird dringend davon abgeraten, WPF-Typen in einem Windows-Dienst zu verwenden.Wenn Sie versuchen, WPF-Typen in einem Windows-Dienst zu verwenden, funktioniert der Dienst möglicherweise nicht wie erwartet.

Dieses Thema enthält folgende Abschnitte.

  • Neue Grafik- und Multimediafunktionen in WPF 4
  • Grafiken und Rendering
  • 3D-Rendering
  • Animation
  • Medien
  • Verwandte Abschnitte

Neue Grafik- und Multimediafunktionen in WPF 4

Mehrere Änderungen wurden im Hinblick auf Grafiken und Animationen vorgenommen.

  • Layoutrundung

    Wenn ein Objektrand in die Mitte eines Pixelgeräts fällt, kann das DPI-unabhängige Grafiksystem Renderingartefakte erstellen, z. B. verschwommene oder semitransparente Ränder. Frühere Versionen der WPF haben die Pixelausrichtung für diese Fälle verwendet. Silverlight 2 hat die Layoutrundung eingeführt, die eine andere Möglichkeit bietet, um Elemente so zu verschieben, dass Ränder auf ganzen Pixelgrenzen liegen. WPF unterstützt jetzt die Layoutrundung mit der angefügten UseLayoutRounding-Eigenschaft auf FrameworkElement.

  • Zwischengespeicherte Komposition

    Mit den neuen Klassen BitmapCache und BitmapCacheBrush können Sie einen komplexen Teil der visuellen Struktur als Bitmap zwischenspeichern und die Renderingzeit dadurch erheblich optimieren. Die Bitmap reagiert weiterhin auf Benutzereingabe, z. B. Mausklicks, und Sie können sie wie jeden Pinsel auf anderen Elementen zeichnen.

  • Unterstützung von Pixel Shader 3

    WPF 4 erweitert die in WPF 3.5 SP1 eingeführte ShaderEffect-Unterstützung und ermöglicht es Anwendungen, Effekte mit Pixel Shader (PS) Version 3.0 zu schreiben. Das PS 3.0-Shadermodell ist ausgereifter als PS 2.0 und ermöglicht noch mehr Effekte auf unterstützter Hardware.

  • Beschleunigungsfunktionen

    Sie können Animationen mit Beschleunigungsfunktionen verbessern, die Ihnen zusätzliche Kontrolle über das Verhalten von Animationen geben. Sie können z. B. eine ElasticEase für eine Animation übernehmen, um der Animation ein Federverhalten zuzuweisen. Weitere Informationen finden Sie unter den Beschleunigungstypen im System.Windows.Media.Animation-Namespace.

Grafiken und Rendering

WPF bietet Unterstützung für hochwertige 2D-Grafiken. Zu den Funktionen zählen Pinsel, Geometrien, Bilder, Formen und Transformationen. Weitere Informationen finden Sie unter Grafiken. Das Rendering von visuellen Elementen basiert auf der Visual-Klasse. Die Struktur von visuellen Objekten auf dem Bildschirm wird durch die visuelle Struktur beschrieben. Weitere Informationen finden Sie unter Übersicht über das WPF-Grafikrendering.

2D-Formen

WPF enthält eine Bibliothek häufig verwendeter vektorbasierter 2-D-Formen wie Rechtecke und Ellipsen, die in der folgenden Abbildung dargestellt sind.

Ellipsen und Rechtecke

Diese systeminternen WPF-Formen sind mehr als nur Formen: Es handelt sich um programmierbare Elemente, die viele der Features implementieren, die Sie von den gebräuchlichsten Steuerelementen erwarten, etwa Tastatur- und Mauseingaben. Im folgenden Beispiel wird gezeigt, wie das MouseUp-Ereignis behandelt wird, das durch Klicken auf ein Ellipse-Element ausgelöst wird.

<Window
  xmlns="https://schemas.microsoft.com/winfx/2006/xaml/presentation"
  xmlns:x="https://schemas.microsoft.com/winfx/2006/xaml"
  x:Class="Window1" >
  <Ellipse Fill="LightBlue" MouseUp="ellipseButton_MouseUp" />
</Window>
public partial class Window1  : Window
{
    void ellipseButton_MouseUp(object sender, MouseButtonEventArgs e)
    {
        MessageBox.Show("You clicked the ellipse!");
    }
}
Partial Public Class Window1
    Inherits Window
    Private Sub ellipseButton_MouseUp(ByVal sender As Object, ByVal e As MouseButtonEventArgs)
        MessageBox.Show("You clicked the ellipse!")
    End Sub
End Class

In der folgenden Abbildung wird die Ausgabe für das vorangehende XAML-Markup und Code-Behind dargestellt.

Ein Fenster mit dem Text "you clicked the ellipse!"

Weitere Informationen finden Sie unter Übersicht über Formen und die grundlegenden Funktionen zum Zeichnen in WPF. Ein einführendes Beispiel finden Sie unter Beispiel für Formelemente.

2D-Geometrien

Wenn die von WPF bereitgestellten 2-D-Formen nicht ausreichen, können Sie mit der WPF-Unterstützung für Geometrien und Pfade eigene Formen erstellen. In der folgenden Abbildung wird verdeutlicht, wie Sie mit Geometrien Formen, etwa einen Zeichenpinsel, erstellen und andere WPF-Elemente ausschneiden können.

Verschiedene Einsatzbereiche eines Pfades

Weitere Informationen finden Sie unter Übersicht über die Geometrie. Ein einführendes Beispiel finden Sie unter Beispiele zu Geometrie.

2D-Effekte

WPF stellt eine Bibliothek von 2-D-Klassen bereit, mit denen Sie eine Vielzahl von Effekten erstellen können. Die 2-D-Renderingfunktion von WPF bietet die Möglichkeit, UI-Elemente, die Farbverläufe, Bitmaps, Zeichnungen und Videos aufweisen, zu zeichnen und durch Drehen, Skalieren und Neigen zu bearbeiten. Die folgende Abbildung zeigt ein Beispiel für die vielen Effekte, die Sie mit WPF-Pinseln erreichen können.

Darstellung unterschiedlicher Pinsel

Weitere Informationen finden Sie unter Übersicht über WPF-Pinsel. Ein einführendes Beispiel finden Sie unter Beispiel für Pinsel.

3D-Rendering

WPF enthält eine Reihe von 3-D-Renderingfunktionen, die in der 2-D-Grafikunterstützung in WPF integriert sind, damit Sie Layout, UI und Datenvisualisierung noch ansprechender gestalten können. Mit WPF können Sie sogar 2-D-Bilder auf den Oberflächen von 3-D-Formen rendern, was in der folgenden Abbildung veranschaulicht wird.

Bildschirmabbildung für Visual3D-Beispiel

Weitere Informationen finden Sie unter Übersicht über 3D-Grafiken. Ein einführendes Beispiel finden Sie unter Beispiel zu 3D-Festkörpern.

Animation

Mit Animation können Sie Steuerelemente und Elemente wachsen, bewegen, drehen sowie ein- und ausblenden lassen und z. B. interessante Seitenübergänge erzeugen. Da Sie mitWPF die meisten Eigenschaften animieren können, können Sie nicht nur die meisten WPF-Objekte animieren, sondern Sie können WPF auch verwenden, um benutzerdefinierte Objekte, die Sie erstellen, zu animieren.

Bilder eines animierten Cubes

Weitere Informationen finden Sie unter Übersicht über Animationen. Ein einführendes Beispiel finden Sie unter Beispielsammlung zu Animationen.

Medien

Bilder, Video und Audio bieten eine umfangreiche Medienunterstützung, um Informationen zu vermitteln und für Benutzerfreundlichkeit zu sorgen.

Bilder

Bilder, dazu zählen Symbole, Hintergründe und sogar Teile von Animationen, sind ein Hauptbestandteil der meisten Anwendungen. Da Sie häufig Bilder verwenden müssen, bietet WPF die Möglichkeit, sie auf vielfältige Weise einzusetzen. In der folgenden Abbildung wird lediglich eine der Möglichkeiten dargestellt.

Bildschirmabbildung für Formatierungsbeispiel

Weitere Informationen finden Sie unter Übersicht über die Bildverarbeitung.

Video und Audio

Ein Hauptfeature der Grafikfunktionen von WPF besteht in der systemeigenen Unterstützung für die Arbeit mit Multimedia, z. B. Video und Audio. Das folgende Beispiel zeigt, wie ein Media Player in eine Anwendung eingefügt wird.

<MediaElement Source="media\numbers.wmv" Width="450" Height="250" />

Mit dem MediaElement können Video und Audio wiedergegeben werden. Es lässt sich so erweitern, dass benutzerdefinierte UIs leicht erstellt werden können.

Weitere Informationen finden Sie unter Übersicht über Multimedia.

Siehe auch

Referenz

System.Windows.Media

System.Windows.Media.Animation

System.Windows.Media.Media3D

Konzepte

Optimieren der Leistung: 2D-Grafiken und Bildverarbeitung

Übersicht über Formen und die grundlegenden Funktionen zum Zeichnen in WPF

Übersicht über das Zeichnen mit Volltonfarben und Farbverläufen

Zeichnen mit Bildern, Zeichnungen und visuellen Elementen

Weitere Ressourcen

Animation und zeitliche Steuerung

3D-Grafiken

Multimedia

Änderungsprotokoll

Datum

Versionsgeschichte

Grund

Dezember 2010

Ein fehlendes Visual Basic-Beispiel wurde hinzugefügt.

Korrektur inhaltlicher Fehler.