Мне нужно автоматически распечатать созданный файл PDF. Сначала я сохраняю его на сервере после создания файла PDF, а затем загружаю на клиентский компьютер. Мне нужно распечатать файл PDF, загруженный с клиентского компьютера. Есть ли способ, которым я мог бы получить точный файл местоположения, где файл PDF сохраняется после загрузки? Есть ли способ, которым я могу напечатать PDF-файл напрямую с помощью клиентского / локального принтера? На данный момент я использовал spire pdf, и проблема в том, что он использует принтер сервера, и мне нужно исправить его, чтобы использовать клиентский / локальный принтер.
Коды:
window.location.href = "/Orders/Download?file=" + encodeURIComponent(data.fileName);
Контроллер:
[HttpGet]
[DeleteFileAttribute] //Action Filter, it will auto delete the file after download
public ActionResult Download(string file)
{
//get the temp folder and file path in server
string fullPath = Path.Combine(Server.MapPath("~/Content/PDF"), file);
try
{
PdfDocument doc = new PdfDocument();
doc.LoadFromFile(fullPath);
doc.PrinterName = "HP Deskjet Ink Adv 2010 K010";
//Use the default printer to print all the pages
doc.PrintDocument.Print();
}
catch (Exception e)
{
var message = e.Message;
}
return File(fullPath, "application/pdf", file);
}
Является ли этот код загрузкой pdf-файла в раздел «Загрузки клиента / пользователя», или в том месте, где пользователь установил местоположение для загрузки, и он также будет печатать, однако использует принтер сервера, который является проблемой.