我们希望使用 .NET 和任何可用的 IE DLL 或任何其他文档查看器以编程方式打印 MHT 文档。我们还希望将此打印限制在文档的第一页。如果 MHT 文件中有多个框架,我们希望打印显示为在网页中显示的样子。欣赏这方面的任何经历。
谢谢
我们希望使用 .NET 和任何可用的 IE DLL 或任何其他文档查看器以编程方式打印 MHT 文档。我们还希望将此打印限制在文档的第一页。如果 MHT 文件中有多个框架,我们希望打印显示为在网页中显示的样子。欣赏这方面的任何经历。
谢谢
我们可以将 Universal Document Coverter 配置为默认打印机,并使用 IE 对象调用打印,如下面的代码所示。但是,具有多个帧的 MHT 文档最终会为每个帧生成多个图像。我们还需要将此打印限制在文档的第一页。感谢您对使用任何其他可用的 IE DLL 的任何想法,这些 DLL 可用于避免多帧问题并将打印限制在文档的第一页。
using System;
using System.Collections.Generic;
using System.Text;
using SHDocVw;
using System.Threading;
namespace htmconverter
{
class Program
{
static void Main(string[] args)
{
object missingValue = Type.Missing;
InternetExplorer iexp = new InternetExplorer();
iexp.Navigate("file://c:/c.mht", ref missingValue, ref missingValue, ref missingValue, ref missingValue);
// while(OLECMDID.OLECMDID_PRINT!=OLECMDF.OLECMDF_SUPPORTED)
iexp.ExecWB(OLECMDID.OLECMDID_PRINT, OLECMDEXECOPT.OLECMDEXECOPT_DONTPROMPTUSER, ref missingValue, ref missingValue);
Thread.Sleep(2000);
}
}
}