Comment modifier les options standard dans l’interface utilisateur d’aperçu avant impression (HTML)

[ Cet article est destiné aux développeurs de Windows 8.x et Windows Phone 8.x qui créent des applications Windows Runtime. Si vous développez une application pour Windows 10, voir la Documentation ]

Ce didacticiel montre comment personnaliser les options d’impression affichées dans l’interface utilisateur d’aperçu avant impression.

Par défaut, l’interface utilisateur d’aperçu avant impression affiche les options suivantes :

colorMode copies orientation

 

En plus des paramètres précédents, Windows fournit plusieurs autres options d’impression usuelles que vous pouvez ajouter à l’interface utilisateur d’aperçu avant impression. Les autres options usuelles sont les suivantes.

binding collation duplex holePunch
inputBin mediaSize mediaType nUp
printQuality staple    

 

Ces options sont définies dans la classe standardPrintTaskOptions. Vous pouvez ajouter ou supprimer des options dans la liste d’options affichées dans l’interface utilisateur d’aperçu avant impression. Vous pouvez également modifier l’ordre dans lequel elles apparaissent et définir les paramètres par défaut qui sont proposés à l’utilisateur.

Toutefois, les modifications que vous apportez par le biais de cette méthode affectent uniquement l’interface utilisateur d’aperçu avant impression. L’utilisateur peut toujours accéder à l’ensemble des options prises en charge par l’imprimante en cliquant sur Autres paramètres dans l’interface utilisateur d’aperçu avant impression.

Bien que votre application puisse spécifier les options d’impression à afficher, seules celles qui sont prises en charge par l’imprimante sélectionnée sont affichées dans l’interface utilisateur d’aperçu avant impression. L’interface utilisateur d’aperçu avant impression n’affiche pas les options qui ne sont pas prises en charge par l’imprimante sélectionnée.

Feuille de route : comment cette rubrique s’articule-t-elle par rapport aux autres ? Voir :

Ce que vous devez savoir

Technologies

Prérequis

  • Vous devez vous familiariser avec le code HTML, le langage JavaScript, les événements Windows et la gestion des événements.
  • Vous avez installé Microsoft Visual Studio.
  • Vous avez installé une imprimante.
  • Vous devez disposer d’une application du Windows Store à laquelle vous voulez ajouter un bouton d’impression. Si vous ne disposez pas de votre propre application, vous pouvez télécharger l’exemple d’application Exemple d’impression et utiliser cette application.
  • Votre application doit déjà prendre en charge l’impression Windows de base. Si ce n’est pas le cas, voir la rubrique Démarrage rapide : impression à partir de votre application pour découvrir comment ajouter la prise en charge de l’impression Windows de base à votre application.

Instructions

Étape 1: Ouvrir votre application dans Visual Studio

La procédure décrite dans ce didacticiel fait référence à l’application PrintSampleJS de l’exemple d’application Exemple d’impression. Si vous personnalisez l’interface utilisateur d’aperçu avant impression de votre propre application, ouvrez cette dernière dans Visual Studio à la place de l’exemple d’application Exemple d’impression.

  1. Ouvrez l’exemple d’application Exemple d’impression et téléchargez l’exemple en JavaScript sur votre ordinateur.
  2. Dans Visual Studio, cliquez sur File > Open Project et accédez au dossier contenant le fichier solution de l’exemple d’application que vous avez téléchargé à l’étape précédente.
  3. Sélectionnez le fichier solution PrintSampleJS, puis cliquez sur Ouvrir.

Étape 2: Générer et tester l’application

  1. Cliquez sur Générer > Générer la solution pour générer l’application sur laquelle vous travaillez. Assurez-vous qu’il n’y a aucun message d’erreur dans le volet Sortie en bas de l’écran.
  2. Cliquez sur Déboguer > Exécuter sans débogage.
  3. Après quelques secondes, vérifiez que l’application Print JS Sample apparaît à l’écran.
  4. Si l’application s’exécute sans erreur, revenez à Visual Studio, puis cliquez sur Déboguer > Arrêter le débogage.

Étape 3: Définir les options d’impression à afficher

Une fois l’écran de l’application chargé, il s’inscrit au contrat d’impression. La définition du gestionnaire d’événements PrintTaskRequested fait partie de ce processus d’inscription. Le code nécessaire pour personnaliser les options affichées dans l’interface utilisateur d’aperçu avant impression est ajouté au gestionnaire d’événements PrintTaskRequested.

Modifiez le gestionnaire d’événements PrintTaskRequested de manière à inclure les instructions printTask.options qui configurent les paramètres d’impression que vous voulez afficher dans l’interface utilisateur d’aperçu avant impression.

  1. Recherchez le gestionnaire d’événements PrintTaskRequested dans l’application. Dans l’exemple d’application Exemple d’impression, le gestionnaire d’événements PrintTaskRequested de base ressemble à cet exemple.

    function onPrintTaskRequested(printEvent) {
        var printTask = printEvent.request.createPrintTask("Print Sample", function (args) {
            args.setSource(MSApp.getHtmlPrintDocumentSource(document));
    
            // Register the handler for print task completion event
            printTask.oncompleted = onPrintTaskCompleted;
        });
    }
    
    function onPrintTaskCompleted(printTaskCompletionEvent) {
        // Notify the user about the failure
        if (printTaskCompletionEvent.completion === Windows.Graphics.Printing.PrintTaskCompletion.failed) {
            WinJS.log && WinJS.log("Failed to print.", "sample", "error");
        }
    }
    
  2. Ajoutez les options d’impression que vous voulez afficher dans l’interface utilisateur d’aperçu avant impression. Les options apparaissent verticalement dans l’interface utilisateur d’aperçu avant impression dans l’ordre dans lequel vous les ajoutez. La première option que vous ajoutez apparaît en haut. Viennent ensuite les autres options dans l’ordre.

    Remarque  Ce code est issu du fichier scenario3.js de l’exemple d’application Exemple d’impression. Si vous ajoutez ce code à votre application, attribuez les options d’impression que vous voulez présenter à l’utilisateur dans l’interface utilisateur d’aperçu avant impression.

     

    Important  Le fait d’appeler printTask.options.displayedOptions.clear() supprime toutes les options d’impression de l’interface utilisateur d’aperçu avant impression à l’exception du lien Autres paramètres. Veillez à utiliser la méthode append pour spécifier les options que vous voulez afficher dans l’interface utilisateur d’aperçu avant impression.

     

    function onPrintTaskRequested(printEvent) {
        var printTask = printEvent.request.createPrintTask("Print Sample", function (args) {
            args.setSource(MSApp.getHtmlPrintDocumentSource(document));
    
            // Choose the printer options to be shown.
            // The order in which the options are appended determines the order in which they appear in the UI
            printTask.options.displayedOptions.clear();
            printTask.options.displayedOptions.append(Windows.Graphics.Printing.StandardPrintTaskOptions.copies);
            printTask.options.displayedOptions.append(Windows.Graphics.Printing.StandardPrintTaskOptions.mediaSize);
            printTask.options.displayedOptions.append(Windows.Graphics.Printing.StandardPrintTaskOptions.orientation);
            printTask.options.displayedOptions.append(Windows.Graphics.Printing.StandardPrintTaskOptions.duplex);
    
            // Preset the default value of the printer option
            printTask.options.mediaSize = Windows.Graphics.Printing.PrintMediaSize.northAmericaLegal;
    
            // Register the handler for print task completion event
            printTask.oncompleted = onPrintTaskCompleted;
        });
    }
    
  3. Générez et testez votre application comme décrit précédemment.

Remarques

Pour obtenir d’autres scénarios d’impression dans les applications du Windows Store, voir l’exemple d’application Exemple d’impression.

Rubriques associées

Exemple d’impression d’application du Windows Store

Démarrage rapide : impression à partir de votre application

Meilleures pratiques pour le développement d’applications du Windows Store offrant des fonctionnalités d’impression