当 IMG 图像不存在时,C# WebBrowser.Print() 不会打印特定的 HTML 文件



我正在尝试使用 WebBrowser 控件 Print(( 方法从一个非常基本的 C# 表单应用程序打印,但对于特定的 HTML 文件,似乎什么也没发生。打印与其他HTML文件配合使用正常,唯一的区别是有问题的html文件包含具有不存在图像的图像。我希望忽略不存在的图像并打印文件,但没有打印,甚至没有发生异常。

即使文件具有不存在的引用(例如图像(,我如何以某种方式管理打印?我有什么解决方法?

浏览器仿真已经设置为IE11,并且已经尝试了ExecWB,似乎没有任何效果。

HTML:(图像.jpg不存在(

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<HTML>
<head>
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="viewport" content="width=device-width">
</head>
<BODY>
<div class="page">
<table class="table"><tbody><tr><td class="nobotpadding">
<div class="per-details">
<span class="med-text blue mr10">
test text
<img src="/img/image.jpg" alt="" width="14" height="14">
</span>
</div></td></tr></tbody></table>
</div></BODY></HTML>

C#:(加载和打印是窗体上的不同按钮。

public void Load()
{
    webBrowser1.Navigate(localhtmlfile);
}
public void Print()
{
    webBrowser1.Print();
}

你可以做这样的事情:htmlfilewithimg:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<HTML>
<head>
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="viewport" content="width=device-width">
</head>
<BODY>
<div class="page">
<table class="table"><tbody><tr><td class="nobotpadding">
<div class="per-details">
<span class="med-text blue mr10">
test text
<img src="/img/image.jpg" alt="" width="14" height="14">
</span>
</div></td></tr></tbody></table>
</div></BODY></HTML>

The htmlFilewithoutimg:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<HTML>
<head>
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="viewport" content="width=device-width">
</head>
<BODY>
<div class="page">
<table class="table"><tbody><tr><td class="nobotpadding">
<div class="per-details">
<span class="med-text blue mr10">
test text
</span>
</div></td></tr></tbody></table>
</div></BODY></HTML>

在 C# 代码中,尝试进入图片内部查看是否有具有图片名称的文件,如果没有图片,则使用第二个 htmlfile喜欢:

public void Load()
{
    try
    {
        Path.GetFileName("img/img");
        webBrowser1.Navigate(htmlfilewithimg);
    }
    catch(Exception ex)
    {
        webBrowser1.Navigate(htmlfilewithoutimg);
    }
}
public void Print()
{
    webBrowser1.Print();
}

相关内容

  • 没有找到相关文章

最新更新