Матричные принтеры — это устройства, которые до сих пор находят применение в различных областях, таких как печать чеков, наклеек и других документов, требующих высокой надежности. В современных приложениях на платформе .NET часто используется библиотека FastReport для генерации отчетов. В этой статье мы рассмотрим, как интегрировать матричный принтер в процесс создания и вывода отчетов с использованием FastReport .NET.
Хоть матричные принтеры являются “пережитком прошлого” по мнению большинства людей, но на самом деле их используют довольно часто и в разных сферах.
Прежде чем начать работу с матричным принтером в FastReport .NET, необходимо убедиться, что принтер установлен и правильно настроен в операционной системе. Матричные принтеры обычно поддерживают PCL (Printer Command Language) или ESC/P (Epson Standard Code for Printers) протоколы, которые используются для отправки команд на принтер.
Давайте разберем функционал печати в FastReport.NET. Для того, чтобы начать печать отчета, нам необходимо перейти в Preview отчета и нажать кнопку «Печать». Далее у нас появится окно печати, в котором мы можем:
Стоит отметить, что мы можем перейти в «Настройки». В этом случае у нас появится окно настроек печати, но данные настройки являются системными. Иначе говоря, FastReport .NET не имеет к ним отношения. Также данные настройки «подтягиваются» из самой системы. Можно выставить значения по умолчанию в Windows, и они будут также применимы к этому окну.
В целом, мы можем уже приступить к печати, если нас устраивают настройки. Давайте попробуем настроить печать с помощью кода.
Для начала нам необходимо создать проект и подключить NuGet пакет FastReport.NET последней версии. Также нам понадобится готовый отчет, который мы создали в дизайнере. Первым делом загружаем ранее созданный нами отчет:
using FastReport;
// Создаем объект отчета
Report report = new Report();
// Загружаем отчет из файла
report.Load("path_to_your_report.frx");
Перед тем как отправить отчет на печать, нужно настроить параметры печати. В FastReport можно указать принтер, на котором будет произведена печать, а также настроить некоторые параметры страницы, такие как ориентация и масштаб.
// Получаем список доступных принтеров
PrintSettings printSettings = report.PrintSettings;
// Устанавливаем имя принтера (например, "Epson LQ-590")
printSettings.Printer = "Epson LQ-590";
// Устанавливаем ориентацию страницы (Portrait/Landscape)
printSettings.Landscape = false; // Портретная ориентация
// Устанавливаем масштаб
printSettings.Zoom = 100; // 100% масштаб
Теперь можно отправить отчет на печать. FastReport предоставляет метод Print() для выполнения этой задачи:
// Выполняем печать отчета
report.Print();
Матричные принтеры имеют свои особенности, которые следует учитывать при создании отчетов:
Давайте создадим отчет-чек, который будет соблюдать нашим требованиям. Запускаем дизайнер, создаем новый пустой шаблон. Переходим в настройки страницы, а после задаем высоту и ширину.
Далее перемещаемся в раздел «Поля» и задаем отступы. Нам нужны отступы 1.27см – 2.28см.
Теперь переходим на страницу нашего отчета. Мы сделаем простой чек и будем использовать шрифт Courier New.
Наш отчёт готов и теперь его можно отправлять на печать в матричный принтер.
Использование матричного принтера в FastReport .NET открывает новые возможности для создания и вывода отчетов в приложениях на платформе .NET. Следуя приведенным выше шагам, вы сможете успешно интегрировать матричный принтер в процесс работы с FastReport и обеспечить качественную и надежную печать отчетов.