Принтер Star tsp100, чтобы он вырезал страницу (разрыв страницы)

#c# #java #html #printing

#c# #java #HTML #печать

Вопрос:

Я пишу инструмент для печати чеков, который будет печатать квитанции на принтерах чеков Star TSP100 futurePRNT futurePRNT. Я пытаюсь заставить его выполнять двойную печать при транзакциях по кредитным картам (клиентская и бизнес-копия), но я не могу понять, как заставить принтер разрезать ее пополам. Используемый мной метод печати квитанций генерирует их все сразу и отправляет на принтер.

Квитанция представлена в формате HTML и полностью хранится в div с id =»receiptBody(1 или 2)»

Я окружил каждое тело квитанции таблицей и заставил ее идеально вырезать квитанцию в моей среде localhost, но когда она выталкивается на мой сервер, она перестает работать. Это структура моей квитанции.

 <table> <tr> <td>
    <div id="receiptBody1"> ... receipt content ... </div>
</td></tr></table>

<table> <tr> <td>
    <div id="receiptBody2"> ... receipt content ... </div>
</td></tr></table>
  

Я проверил, что весь HTML-код правильный, и он нормально печатается с моего сервера (форматирование и содержимое), за исключением того, что принтер просто не вырезает его. Я не понимаю, почему он вырезает ее на моем локальном хостинге, хотя

Мне просто интересно, есть ли другие люди, делающие квитанции для этого принтера через HTML, которые знают, как заставить его вырезать.

Я использую C # для создания квитанций (используя mvc) и java-апплет для быстрой печати их на принтере.

Или, если кто-нибудь может сказать мне, как (через javascript) распечатать две копии текущей страницы. Как make window.print() распечатайте две копии как отдельные задания печати, чтобы принтер автоматически вырезал их.

Ответ №1:

По-видимому, в прошлый раз, когда я пробовал это, я забыл включить ключевое слово always.

 <div style="page-break-after:always"></div>
  

В конце концов, это все-таки сработало. Просто нужно убедиться, что div всегда закрыт, иначе он не будет вырезан. В качестве альтернативы, возможно, более безопасным подходом является использование:

 <div style="page-break-before:always"></div>
  

Таким образом, если вы случайно забудете закрыть его, я полагаю, что он все равно вырежет страницу.

Комментарии:

1. Я попробовал это, принтер останавливается… но НЕ вырезает. Он вырезает только в конце. Есть ли другая настройка?

2. Мне нужно было изменить тип вырезания страницы -> Частичное вырезание

3. @Acquire у вас есть руководство по веб-ссылкам или код для печати на star tsp100 в html с использованием c #? заранее спасибо