Как изменить стандартные параметры пользовательского интерфейса предварительного просмотра (HTML)

[ Эта статья адресована разработчикам приложений среды выполнения Windows для Windows 8.x и Windows Phone 8.x. При разработке приложений для Windows 10 см. раздел последняя документация]

В этом руководстве описывается настройка параметров печати пользовательского интерфейса предварительного просмотра.

По умолчанию в пользовательском интерфейсе предварительного просмотра отображены следующие параметры:

colorMode copies orientation

 

В дополнение к ним Windows предоставляет ряд общих параметров принтера, которые вы можете добавить в пользовательский интерфейс предварительного просмотра. Эти общие параметры описаны здесь.

binding collation duplex holePunch
inputBin mediaSize mediaType nUp
printQuality staple    

 

Эти параметры определены в классе standardPrintTaskOptions. Вы можете добавить или удалить параметры из списка вариантов, отображаемых в пользовательском интерфейсе предварительного просмотра. Можно также менять порядок отображения параметров и задавать значения по умолчанию, которые будут показаны пользователю.

Но изменения, внесенные этим способом, повлияют только на пользовательский интерфейс предварительного просмотра. Пользователь всегда сможет получить доступ ко всем параметрам, поддерживаемым принтером, щелкнув ссылку Дополнительные параметры в пользовательском интерфейсе предварительного просмотра.

Несмотря на то что в вашем приложении можно определить отображение любых параметров печати, в пользовательском интерфейсе предварительного просмотра будут показаны только те из них, которые поддерживаются выбранным принтером. Параметры, не поддерживаемые принтером, показаны не будут.

Схема: каким образом эта тема связана с другими? См:

Что необходимо знать

Технологии

Необходимые условия

  • Вы должны быть знакомы с HTML, JavaScript, событиями Windows и обработкой событий.
  • На вашем компьютере должна быть установлена Microsoft Visual Studio.
  • В системе должен быть установлен принтер.
  • У вас должно быть приложение Магазина Windows, в которое вы хотите добавить кнопку печати. Если у вас нет собственного приложения, вы можете скачать и использовать образец приложения "Образец печати".
  • Приложение должно поддерживать основные возможности печати Windows. Если это не так, см. Краткое руководство: печать из приложения, чтобы узнать, как добавить в свою программу поддержку основных возможностей печати Windows.

Инструкции

Этап 1: Открытие приложения в Visual Studio

Процедура, описанная в этом руководстве, относится к приложению PrintSampleJS из примера Print Sample. Если вы настраиваете пользовательский интерфейс предварительного просмотра для собственного приложения, то в Visual Studio вместо примера Print Sample нужно открыть ваше приложение.

  1. Откройте образец приложения "Образец печати" и скачайте пример JavaScript на свой компьютер.
  2. В Visual Studio щелкните File (Файл) > Open Project (Открыть проект) и перейдите в папку с файлом решения примера приложения, скачанного на предыдущем этапе.
  3. Выберите файл решения PrintSampleJS и нажмите кнопку Открыть.

Этап 2: Создание и тестирование приложения

  1. Чтобы выполнить сборку приложения, над которым вы работаете, щелкните Сборка > Собрать решение. Убедитесь, что на панели Вывод в нижней части экрана нет сообщений об ошибках.
  2. Выберите пункты меню Отладка > Запуск без отладки.
  3. Убедитесь, что через несколько секунд на экране отобразится программа Print JS Sample (Пример печати на JavaScript).
  4. Если приложение выполняется без ошибок, вернитесь в Visual Studio и выберите Отладка > Остановить отладку.

Этап 3: Определение параметров печати для отображения

При загрузке экрана приложения выполняется регистрация для контракта "Печать". Часть этой регистрации включает в себя определение обработчика событий PrintTaskRequested. Код для настройки параметров, отображаемых в пользовательском интерфейсе предварительного просмотра, добавляется в обработчик событий PrintTaskRequested.

Измените обработчик событий PrintTaskRequested, включив инструкции printTask.options для настройки параметров печати, которые будут отображаться в пользовательском интерфейсе предварительного просмотра.

  1. Найдите обработчик событий PrintTaskRequested в приложении. В образце приложения "Образец печати" основной обработчик событий PrintTaskRequested выглядит как в этом примере.

    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. Добавьте параметры печати, которые должны отображаться в пользовательском интерфейсе предварительного просмотра. Параметры будут располагаться по вертикали в порядке их добавления. Первый добавленный параметр будет располагаться вверху, а остальные — по порядку за ним.

    Примечание  Этот код взят из файла scenario3.jsобразца приложения "Образец печати". Если вы добавляете этот код в свое приложение, назначьте параметры печати, которые пользователь увидит в интерфейсе предварительного просмотра.

     

    Важно  Вызов метода printTask.options.displayedOptions.clear() удаляет все параметры печати из пользовательского интерфейса предварительного просмотра, оставляя только ссылку Дополнительные параметры. Обязательно используйте метод append для параметров, которые должны отображаться в пользовательском интерфейсе предварительного просмотра.

     

    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. Создайте и протестируйте ваше приложение в соответствии с приведенным выше описанием.

Замечания

Другие сценарии печати в приложениях Магазина Windows представлены в примере приложения Print Sample.

Связанные разделы

Пример печати из приложения Магазина Windows

Краткое руководство: печать из приложения

Рекомендации по разработке приложений Магазина Windows с поддержкой печати