我有一个托管在服务器“A”(SA)上的 Web 应用程序和一个托管在服务器“B”(SB)上的用于打印的 Web 服务。SA 创建需要打印的图像并将其发送给 SB。这样做时,打印速度相当慢,大约 15 秒。但是,如果我使用远程桌面作为用户从托管在 SA 上的应用程序的 webconfig 登录到 SB,那么它将在不到两秒的时间内打印出来。当我登录它时,它似乎正在启动某些东西,这使它打印得更快。知道这可能是什么吗?是否有一种方法可以让我在未登录的情况下保持快速打印?
编辑:正在打印的图像大小约为 20 KB。
这是托管在 SB 上的服务的代码:
public void PrintImage(Stream printImage, string printServer, string printer)
{
string printerName = String.Format(@"\\{0}\{1}", printServer, printer);
Image image = Image.FromStream(printImage);
PrintDocument printDocument = new PrintDocument();
PrinterSettings settings = new PrinterSettings();
settings.PrinterName = printerName;
printDocument.PrinterSettings = settings;
printDocument.PrintPage += (s, e) =>
{
e.Graphics.DrawImage(image, 0, 0);
};
printDocument.Print();
}
感谢您花时间阅读本文:)