Часто задаваемые вопросы: TBarCode DLL / TBarCode Library
Как лучше всего создать и отрисовать штрихкод?
Как лучше всего создать и отрисовать штрихкод?
В общем случае мы рекомендуем такую процедуру для вызовов API:
- Задайте все свойства штрихкода: тип, текст, режим размера, ширину модуля, ориентацию, DPI и т.д.
- Вызовите BCCreate() - после этого не изменяйте никакие свойства.
- Для линейных (не многострочных) штрихкодов выберите желаемую высоту (самостоятельно!)
- Подготовьте ограничивающий прямоугольник: используйте ширину по умолчанию и желаемую высоту (шаг 3). При необходимости поверните прямоугольник (поменяйте местами ширину и высоту для 90/270°).
- Получите размер штрихкода: BCGetBarcodeSize() - используйте подготовленный (повёрнутый) ограничивающий прямоугольник (шаг 4).
- Теперь задайте ширину и высоту прямоугольника отрисовки, используя значения размера, возвращённые на шаге 5. Также учитывайте здесь ориентацию.
- Отрисуйте штрихкод с этим прямоугольником.
Следует ли использовать определённую ширину модуля?
Мы рекомендуем по возможности использовать пользовательскую ширину модуля - настройка ширины узкого штриха даёт вам больше контроля над выводом. Это также позволяет соответствовать конкретным требованиям к этикеткам и разрешению вывода принтера. Есть одно исключение: для почтовых штрихкодов, где размер штрихкода должен находиться в точном диапазоне, может быть достаточно ограничивающего прямоугольника.
Примеры значений ширины модуля (соответствие 300 dpi):
- Линейные типы: 0,254 мм, 0,339 мм
- PDF417: 0,254 мм (высота строки установлена на 0,762 мм)
- 2D-матричные коды: 0,508 мм
Для растрового вывода ширину модуля можно адаптировать к разрешению растрового изображения (например, 96 dpi). Здесь можно использовать вызов API BCGetOptimalBitmapSize (см. также FAQ об оптимальном размере растрового изображения).