Ваш вопрос состоит из трех элементов:
- Какой размер сделать растровым изображением для печати на высоте 300 мм.
- Как получить растровое изображение до этого размера
- Как дополнить отпечаток правильным количеством пробела, если он недостаточно высок.
Какой размер сделать растровое изображение
Сколько пикселей я хочу дляПечать 300 мм?
Чтобы определить, сколько точек создает изображение определенного размера на бумаге (в миллиметрах), вам необходимо знать, с какой плотностью оно будет напечатано (измеряется в «DPI» или «DPMM»).).Для термопринтеров это не выбирается пользователем, и вы можете найти метрику в технических характеристиках вашего принтера.
Например, в листе данных DPP-250 указана плотность8x8 DPMM, что означает 8 точек на миллиметр по вертикали и 8 точек на миллиметр по горизонтали.
300mm × 8 dots/mm = 2400 dots
На том же принтере ширина печати составляет 48 мм (384 точки), поэтому вы должны стремиться создатьИзображение размером 384x2400 пикселей для отправки на принтер с печатью 48x300 мм.
Пока эта часть не работает, вы можете удалить Android и драйвер принтера из стека.Автономные инструменты командной строки могут конвертировать изображения в ESC / POS-код для отладки, поэтому возьмите с собой ноутбук, twg / png2escpos и USB-кабель к принтеру, чтобы увидеть, как различны размерыизображения отображаются на вашем принтере.
Я не знаю, насколько этот принтер похож на ваш, отрегулируйте эти цифры в соответствии с данными вашего принтера.
Как получить растровое изображение такого размера
Если View
делает Bitmap
неправильного размера, вам следует либо масштабировать его, либо сгенерировать что-то правильного размера на заднем плане.Сфокусируйтесь на , масштабируя ширину, сохраняя соотношение сторон, а затем добавляя нижнюю часть с пробелами (либо на изображении, либо в виде серии пустых строк).
Есть другие ответы наStackOverflow, который решает проблему масштабирования изображения лучше, чем я, , например, этот .
Как дополнить печать правильным количеством пробелов
Для заполнения вы правыиспользовать пустые строки вместо расширения изображения, потому что быстрее печатать пустую строку!
Межстрочный интервал по умолчанию не указан в таблице данных, которую я связал.Если вы хотите получить оценку, используйте 32 точки (4 мм), но для точного ответа вам нужно будет напечатать несколько строк подчеркивания и измерить расстояние между ними.
Обратите внимание, что это не всегда возможночтобы добавить приращения от 32 до круглых 300 мм, либо:
- Добавьте к изображению приблизительно правильное количество пустых строк и будьте довольны приближением, либо
- Добавьтеизображение с пробелом, кратным 32 пикселям, затем добавьте пустые строки.
Как только вы масштабируете изображение до 384 пикселей в ширину и узнаете расстояние между строками, это не изменится между устройствами.
Например, чтобы дополнить изображение высотой 1234 пикселя 32-пиксельными пустыми строками, чтобы сделать его 2400 пикселем, вам потребуется около 36 строк: строк:
(2400 dots - 1234 dots) ÷ 32 dots/line ≈ 36 lines
Сноваэти цифры не для вашего принтера, настройте их на основе ваших собственных данных и измерения высоты линии, как описано выше.