Drukarz dokumentów Aspose.Words dla .NET
Aspose.Words Document Printer dla .NET umożliwia programistom przesyłanie dokumentów bezpośrednio do drukarki – lokalnej lub sieciowej – bez wyświetlania interfejsu użytkownika.Integruje się z ramą drukującą .Net w celu dostarczenia wiarygodnych, wysokiej lojalności wyników Word, PDF, HTML, ODT i innych formatów w środowiskach desktopowych, serwerowych i chmurowych.
Instalacja i ustawienie
- Instalacja pakietu NuGet
Aspose.Words
do Twojego projektu .NET. - Zastosuj licencję na starcie, aby uniknąć ograniczeń oceny ( Licencjonowanie według zużycia ).
- Aby uzyskać pełne szczegóły, zobacz Instalacja przewodnik .
wspierane platformy
- System operacyjny: Windows, Linux, macOS
- Ramy: .NET Framework 4.x, .Net Core 5/6+, Mono
- IDEs: Visual Studio 2010–2022, Xamarin, MonoDevelop
Szybki start: drukowanie dokumentu Word
using Aspose.Words;
using System.Drawing.Printing;
var doc = new Document("Document.docx");
// Select a printer
string printerName = PrinterSettings.InstalledPrinters[0].ToString();
// Print silently
doc.Print(printerName);
Ten przykład drukuje dokument na pierwszym dostępnym drukarce bez promptu UI.
Charakterystyka i funkcjonalność
Wspierane formaty
Wszystkie formaty obsługiwane przez Aspose.Words można wydrukować bezpośrednio: DOCX, DOC, RTF, PDF, HTML/MHTML, ODT, EPUB, TXT, Markdown, obrazy i więcej.
Wybór i konfiguracja drukarki
- Wybierz dowolny zainstalowany drukarki według nazwy lub wróć do domyślnego systemu.
- Kontrola rozmiar papieru, przewód drukarki, tryb dupleksowy, orientacja i jakość druku za pośrednictwem
PrinterSettings
. - Kompatybilny zarówno z lokalnymi, jak i sieciowymi drukarkami.
Cichy, bezprzewodowy druk
- Związek z .NET
StandardPrintController
Wstrzymanie dialogów. - Idealny dla bezgłównych serwerów, usług tła oraz aplikacji ASP.NET.
- Zapobiega blokowaniu UI podczas nieoczekiwanych przepływów pracy.
Rozmiar strony i kontrola kopiowania
- Drukuj wszystkie strony lub określone rzędy.
- Wsparcie dla dziwnych/tylko stron, wielu kopii i kolacji.
- W pełni zintegrowane z .NET Printing API.
Ustawienie strony i layout
- Dostosuj marginesy, orientację (portret / krajobraz) i skalowanie przed wysłaniem.
- Dynamicznie dostosuj ustawienia strony do szablonów bez zmiany treści źródłowej.
Duplex i kolacja
- Umożliwia drukowanie dwustronne (długie lub krótkie wiązanie).
- Fine-tune kolacja i opcje staplingu w zależności od sprzętu.
Drukowanie Batch i Async
- Przeglądaj kilka dokumentów w jednym procesie.
- Wykonaj niesynchronne prace bez blokowania głównego paska.
- Monitorowanie statusu za pomocą wydarzeń / zwrotów i przepływu wstrząsu.
Błąd i logowanie
- Zidentyfikuj błędy w drukarce (papier, status offline, out-of-paper).
- Integruj z ramami logowania, aby złapać diagnostyki pracy: nazwę drukarki, nazwisko dokumentu, kody błędu.
Przykład: drukowanie konkretnych stron za pomocą dupleksu
using Aspose.Words;
using System.Drawing.Printing;
var doc = new Document("Report.pdf");
var settings = new PrinterSettings
{
PrinterName = "HP LaserJet",
FromPage = 1,
ToPage = 5,
Copies = 2,
Duplex = Duplex.Vertical
};
// Print silently with defined settings
doc.Print(settings);
Typowe zastosowania
- Raporty automatyczne: drukowanie faktur, umów i raportów na stronie serwera.
- **Batch workflows: ** etykiety, bilety lub tagy w linii produkcyjnej.
- Tylne prace w tle: zintegrowane z usługami wymagającymi nieoczekiwanego drukowania.
Najlepsze praktyki
- Ponowne użycie pojedynczego
PrinterSettings
Obiekt powtarzających się prac. - Potwierdź dostępność drukarki przed wysyłaniem paczek.
- Wdrożenie logiki odwrotu dla odzyskiwanych błędów drukarek.
- Utrzymanie danych dokumentów w pamięci (streams lub SSD) dla szybszych cyklów drukowania.
- Zharmonizuj standardowe szablony dokumentu z standardami drukarek (rozmiar papieru, marginy).
- Zawsze potwierdź wcześnie ustawienie licencji, aby uniknąć znaków wodnych lub granic kolejności.
FAQ
**Czy to wymaga Microsoft Office lub Acrobat?**Drukowanie jest napędzane przez silnik renderowania Aspose.Words i APIs drukowania .NET.
**Czy mogę wydrukować pliki PDF bezpośrednio?**Tak i tak. PDF Jest wspierany w sposób native.
**Czy mogę wydrukować tylko wybrane strony?**Tak – użyj PrinterSettings.FromPage
/ ToPage
lub PageRange
Obiekty.
**Czy mogę monitorować status pracy?**Zarejestruj się, aby wydrukować wydarzenia i złapać diagnostyki pracy w dziennikach.
**Czy jest to thread-safe?**Tak, każdy Document
Przykłady można wydrukować równocześnie na różnych filarach.