У меня есть небольшая программа, которая отображает сторонние сгенерированные HTML-страницы. На самом деле это просто оболочка вокруг заблокированного компонента TWebBrowser (который, я считаю, просто оболочка IE).
Клиент также хочет распечатать эти страницы, но метод печати TWebBrowser не отображает весь CSS. Например, когда клиент использует блоки цвета фона, я просто получаю цвет фона. Это можно увидеть на некоторых веб-сайтах, когда вы заставляете IE печатать страницы, и часть форматирования CSS-типа исчезает.
Сначала я убедил себя (глупо), что проблема была в том, что CSS был внешней ссылкой, но после того, как я сделал CSS внутренним для файла .HTML, проблема осталась.
Есть ли какой-либо компонент или метод, который я могу использовать для вывода на печать, который включает это форматирование CSS? Я задавался вопросом о том, чтобы сначала попытаться превратить страницу браузера в PDF (что позже принесло бы и мне другие преимущества), но я также не вижу очевидного способа сделать это.
Полагаю, на самом деле я говорю - вывод на печать из IE отстой, есть ли способ получить лучшее приближение к тому, что вы видите на экране? : -)
edit: Хорошо, перенес это. Я могу убедить печатный вывод включить цветовые элементы CSS, благодаря предложениям Уилла и Onnodb - мой образец страницы печатается нормально, и, учитывая, что пользователь понимает важность подхода к настройке реестра, он счастлив пойти по этому пути ( будет использоваться не более чем на полдюжины рабочих столов в закрытом офисе корпоративного типа).
Моя проблема сейчас (которая сама может стать новым постом ввода / вывода) заключается в том, что в их HTML / CSS есть что-то, что убивает IE. Firefox с радостью распечатает все это отлично (как и Safari), но IE 7 и 8 покажут предварительный просмотр страниц, но умрут во время «реальной» печати.
Учитывая, что замена TWebBrowser на какой-то TGeckoBrowser (!) , вероятно, доставляет больше хлопот, чем стоит (и может не слететь с клиентом), мне придется попробовать и выяснить, какой бит (неприятного, запутанного) кода форматирования вызывает проблему. Там множество DIV со смесью относительных и абсолютных положений ...: -)