Direct2D-Druck in Windows Store-Apps (DirectX und C++)

Applies to Windows only

In diesen Themen erfahren Sie, wie Sie Inhalte in einer Windows Store-App mit DirectX und C++ per Direct2D-Druckfunktion drucken. Es wird vorausgesetzt, dass Sie bereits mit dem Schreiben von Code in C++ vertraut sind. Der Schwerpunkt der Themen liegt daher auf den speziellen Verfahren zum Drucken in Windows Store-Apps mit DirectX.

Inhalt dieses Abschnitts

ThemaBeschreibung

Schnellstart: Hinzufügen der Druckfunktion zur App

Möglicherweise möchten Sie Ihrer mit DirectX und C++ erstellten Windows Store-App eine Direct2D-Druckfunktion hinzufügen. Im Folgenden zeigen wir Ihnen, wie es funktioniert.

So wird's gemacht: Formatieren von Inhalten für die Direct2D-Druckfunktion

Hier erfahren Sie, wie Sie Inhalte für die Direct2D-Druckfunktion in Windows Store-Apps mit DirectX und C++ formatieren.

So wird's gemacht: Abrufen und Ändern von Direct2D-Druckeinstellungen

Hier wird erläutert, wie Sie Direct2D-Druckeinstellungen in Windows Store-Apps mit C++ und DirectX abrufen und festlegen.

 

Übersicht

Ab Windows 8 können Sie Ihrer Windows Store-App mit DirectX eine Direct2D-Druckfunktion hinzufügen, um beim Drucken von Inhalten ähnlich wie bei der Ausgabe auf dem Bildschirm vorgehen zu können. Für die Druckfunktion können Sie auf Ihre Kenntnisse und den Großteil des Codes für die Direct2D-Anzeige zurückgreifen.

Damit in einer Windows Store-App unter Verwendung von DirectX und C++ gedruckt werden kann, müssen folgende Voraussetzungen erfüllt sein:

  • Die App muss eine Multithread-Direct2D-Factory zum Behandeln mehrerer Threads verwenden.
  • Die App muss sich für den Vertrag für "Drucken" registrieren.
  • Die App muss formatierte Inhalte für die Seitenansicht bereitstellen.
  • Die App muss formatierte Inhalte zum Drucken bereitstellen.

Verwenden einer Multithread-Direct2D-Factory zum Behandeln mehrerer Threads

In Windows Store-Apps wird die Druckfunktion immer in einem separaten Thread aufgerufen. Um genau zu sein, verwenden Apps jeweils einen eigenen Thread zum Anzeigen, zum Drucken und zum Anzeigen einer Vorschau von Inhalten. Eine Behandlung von Direct2D-Ressourcen in mehreren Threads setzt voraus, dass Ihre App die Multithread-Direct2D-Factory verwendet, um Ressourcenkonflikte zu vermeiden und die Synchronisierung der Ressourcen zu gewährleisten. Weitere Informationen zur Direct2D-Factory finden Sie unter Multithread-Direct2D-Apps.

Registrieren für den Vertrag für "Drucken"

Zur Verwendung der Windows-Druckfunktion muss sich Ihre App für den Vertrag für "Drucken" registrieren. Dazu gehört auch, dass das PrintManager-Objekt abgerufen und dem PrintTaskRequested-Ereignis zugeordnet wird.

Nach dem Registrieren für den Vertrag für "Drucken" kann von Ihrer App die standardmäßige Druckoberfläche von Windows verwendet oder die Benutzeroberfläche durch Hinzufügen oder Entfernen von Druckoptionen angepasst werden.

Bereitstellen von formatierten Inhalten für die Seitenansicht

Die Druckfunktion von Windows stellt für alle Apps, die für den Vertrag für "Drucken" registriert sind, ein Vorschaufeature bereit. Verwenden Sie die Seitenansichtsfunktionen der Druckfunktion von Windows, anstatt den Inhalt der Seitenansicht in Ihrer Windows Store-App anzuzeigen. Weitere Informationen zur Druckfunktion von Windows finden Sie unter Drucken (Windows Store-Apps mit C#/VB/C++ und XAML).

Bereitstellen von formatierten Inhalten zum Drucken

Nach dem Registrieren der App für den Vertrag für "Drucken" löst Windows Druckereignisse aus, die verschiedenen Aspekten des Druckvorgangs entsprechen. Ihre App muss die für das jeweilige Ereignis benötigten Inhalte formatieren und zurückgeben. Inhalt kann für das Drucken gerendert werden, indem dieselben APIs genutzt werden, mit denen der Inhalt auch für die Anzeige gerendert wird.

Workflow für den Direct2D-Druck

Der Workflow für die Direct2D-Druckfunktion beginnt, wenn Benutzer den Charm "Geräte" und einen Drucker auswählen. In Windows wird dann ein Druckdialogfeld für Windows Store-Apps angezeigt, in dem Benutzer die Druckeinstellungen ändern können. Daraufhin generiert die App Vorschaubilder, die Benutzern im Druckdialogfeld angezeigt werden. Benutzer können das Druckdialogfeld schließen, um den Workflow zu beenden, oder auf die Schaltfläche Drucken klicken, um der App mitzuteilen, dass gedruckt werden soll. Diese Abbildung zeigt den Workflow für den Direct2D-Druckvorgang.

Workflow für den Direct2D-Druck

Verwandte Themen

Druck und Befehlslisten
ID2D1PrintControl interface
Schnellstart: Hinzufügen einer Direct2D-Druckfunktion zur App
So wird's gemacht: Formatieren von Inhalten für die Direct2D-Druckfunktion
So wird's gemacht: Abrufen und Ändern von Direct2D-Druckeinstellungen
Verbessern der Leistung von Direct2D-Apps

 

 

Anzeigen:
© 2015 Microsoft