编程语言
首页 > 编程语言> > c#-如何使用WebBrowser控件打印CSS应用的背景图像

c#-如何使用WebBrowser控件打印CSS应用的背景图像

作者:互联网

我在winforms中使用webbrowser控件,并且发现我在CSS中应用的背景图像未包含在打印输出中.

是否有办法使Web浏览器也打印显示的文档的背景?

编辑:
由于我想以编程方式执行此操作,因此选择了以下解决方案:

using Microsoft.Win32;

...

RegistryKey regKey = Registry.CurrentUser
                    .OpenSubKey("Software")
                    .OpenSubKey("Microsoft")
                    .OpenSubKey("Internet Explorer")
                    .OpenSubKey("Main");

//Get the current setting so that we can revert it after printjob
var defaultValue = regKey.GetValue("Print_Background");
regKey.SetValue("Print_Background", "yes");

//Do the printing

//Revert the registry key to the original value
regKey.SetValue("Print_Background", defaultValue);

处理此问题的另一种方法可能是只读取该值,并在打印之前通知用户自己调整此值.我必须同意这样调整注册表不是一个好习惯,因此我愿意提出任何建议.

感谢您的所有反馈

解决方法:

如果要更改重要的系统设置,请确保先阅读当前设置并在完成后将其还原.

首先,我认为这是一种非常不好的做法,但是如果您必须这样做,那就好些.

Registry.LocalMachine

另外,尝试更改LocalUser而不是LocalMachine-这样,如果您的应用程序崩溃了(并且会崩溃),那么您只会使用户感到困惑,而不是每个使用计算机的人都感到困惑.

标签:printing,registry,webbrowser-control,c,net
来源: https://codeday.me/bug/20191108/2005099.html