Часто задаваемые вопросы: TBarCode DLL / TBarCode Library
Как получить оптимальный размер растрового изображения (минимизация ошибок квантования)?
Как получить оптимальный размер растрового изображения (минимизация ошибок квантования)?
Чтобы получить оптимальный размер растрового изображения, обеспечивающий точное выравнивание штрихов по пиксельной сетке, вы можете использовать функцию BCGetOptimalBitmapSize(). Эта функция рассчитывает идеальные размеры на основе коэффициента масштабирования и скорректированного DPI. Вот пошаговое описание процесса:
- Используйте режим размера bounding rectangle (по умолчанию в библиотеке).
- Задайте DPI с помощью BCSetDPI.
- Укажите желаемую высоту (особенно важно для линейных кодов) в pRect. Ширина может быть значением-заполнителем.
- Есть коэффициент масштабирования, позволяющий настраивать целевой размер по осям X и Y. Этот коэффициент влияет на ширину модуля.
- Затем запросите оптимизированный общий размер растрового изображения, вызвав TBarCode Library 11: BCGetOptimalBitmapSize.
- Результирующий размер указан в пикселях, при этом ширина модуля уже выровнена по пиксельной сетке, чтобы уменьшить эффекты квантования. Также учитываются коэффициенты масштабирования. Используйте этот размер для BCSaveImage(..) или BitmapToFile(..).
- Для пользовательской отрисовки (BCDrawCB) вам нужно преобразовать возвращённые значения пикселей в 0,001 [мм]. Если ваша библиотека отрисовки работает в пикселях, убедитесь, что выполняется обратное преобразование в пиксели с учётом DPI.