веб-браузерная печать - PullRequest
3 голосов
/ 24 августа 2009

Привет
Я использую элемент управления веб-браузера C # WPF для отображения html-файла на локальном компьютере. Я добавил функцию печати в свое приложение, выполнив команду печати элемента управления веб-браузера, но по умолчанию Internet Explorer выполняет печать файла URL в нижней части экрана, могу ли я включить печать верхнего и нижнего колонтитула для моего контроля? Есть ли у WebBrowser возможность контролировать предварительный просмотр? Иногда распечатывается распечатанная страница, может кто-то помочь разобраться в чем проблема.
Спасибо большое !!!

1 Ответ

15 голосов
/ 24 августа 2009

Я сделал это один раз (извините, у меня сейчас нет кода приложения), и я сделал это, играя с регистром: проверьте эту статью MS .

Я советую вам где-то хранить текущие значения ключей и восстанавливать их после того, как вы закончите печать.

EDIT

string keyName = @"Software\Microsoft\Internet Explorer\PageSetup";
using (RegistryKey key = Registry.CurrentUser.OpenSubKey(keyName, true)) {
    if (key != null) {
          string old_footer = key.GetValue("footer");
          string old_header = key.GetValue("header");
          key.SetValue("footer", "");
          key.SetValue("header", "");
          Print();
          key.SetValue("footer", old_footer);
          key.SetValue("header", old_header);
    }
}

О сокращаемых страницах

Я не уверен, правильно ли я понял, в чем проблема ... в приложении, о котором я говорил ранее, у меня была проблема с разрезанием таблиц пополам, поэтому я играл с CSS break после * Свойство 1017 * (см. Также перерыв до ) для принудительного разрыва страницы с указанием специальных стилей для носителя принтера. Надеюсь, это поможет ...

...