powered by simpleCommunicator - 2.0.36     © 2025 Programmizd 02
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Принтер этикеток, сетевой. Как напечатать.
25 сообщений из 40, страница 1 из 2
Принтер этикеток, сетевой. Как напечатать.
    #40125453
fraks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть принтер этикеток Honeywell PC42D с ethernet-интерфейсом.
При установке драйверов, можно печатать из "родного" дизайнера этикеток BarTender UltraLite .
Но это не то что нужно.
Печатать нужно из приложения на Delphi7, на этот принтер, через сеть.

Принтер понимает несколько языков, в т.ч. ZPL II.
Как формировать этикетку на этом языке - примерно понятно, и если тестовую этикетку на ZPL послать на принтер через его web-интерфейс, через раздел "Службы" - "Отправить команды принтера" - то получается такая же этикетка как ее можно проверить на сервисе http://labelary.com/viewer.html

Проблема в том что этот же код этикетки непонятно как отправить из Delphi.

Печатаю таким кодом:

Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
uses
  ... Printers;

procedure TFrmTest.Label_Print;
var
  F: system.text;
  i: integer;
begin
  Printer.PrinterIndex := 0; // это нужный нам принтер
  Printer.Title := 'Этикетка';
  AssignPrn(F);
  //
  Rewrite(F);
  for i := 0 to Memo2.Lines.Count-1 do begin
    WriteLn(F, Memo2.Lines[i]);
  end;//for
  CloseFile(F);
  //
  ShowMessage('Ok');
end;


но драйвер добавляет всякой отсебятины, в результате на принтере вылазит не этикетка а ее код, в виде текста.
Плюс к этому, в ряде случаев, (но прочему-то не в 100%), портятся настройки сделанные на принтере, заменяясь на те которые сделаны в драйвере.

Если в драйвере сделать печать в файл, то в файле оказывается такая фигня:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
'Seagull:2.1:DP
INPUT OFF
VERBOFF
INPUT ON
SYSVAR(48) = 0
ERROR 15,"FONT NOT FOUND"
ERROR 18,"DISK FULL"
ERROR 26,"PARAMETER TOO LARGE"
ERROR 27,"PARAMETER TOO SMALL"
ERROR 37,"CUTTER DEVICE NOT FOUND"
ERROR 1003,"FIELD OUT OF LABEL"
SYSVAR(35)=0
OPEN "tmp:setup.sys" FOR OUTPUT AS #1
PRINT#1,"Printing,Media,Print Area,Media Margin (X),0"
PRINT#1,"Printing,Media,Clip Default,On"
CLOSE #1
SETUP "tmp:setup.sys"
KILL "tmp:setup.sys"
CLIP ON
CLIP BARCODE ON
LBLCOND 3,2
CLL
OPTIMIZE "BATCH" ON
PP42,232:PRBUF 2034
@ ¦ Мю ю}	}	||	| 		{ю
{юz	z
z	y	yx
xvу 'у 0
J
		H

G	
	G
	G
G 	H
IHGFF
F
F			G

HIу 'у 0'



&		%
			%		
				$		
	!	$ 		 	$
		$				$
	
	$
		$			$


	
	$


%
%



&			'WLVMюVNюч 'ч A






	 !ю
		 	 	ю 	(			#				!		!	 		!	!	!	!		
!	!		
	


	

		


50;40<ю41=юч 'ч XG



7		6
		5			5			
 	



			


	





	
								
	

 ь ь ш 'шю ю

y	y
	yю			yю 		‚
Ѓ|zyyю

yю
z
z|у 'ую ю
y	y		z	{	
{ 		|}ю~юy
y	yy
	yy
LAYOUT RUN ""
PF
PRINT KEY OFF


Как бы воспользоваться "драйвером без драйвера", т.е. что бы от него брался только спулер и протокол передачи по сети, и все что я посылаю на принтер передавалось бы 1:1 без отсебятины.
...
Рейтинг: 0 / 0
Принтер этикеток, сетевой. Как напечатать.
    #40125454
fraks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вроде бы этот принтер умеет в lpr , но попытка открыть его по самбе ничего не открывает, и совершенно непонятно где узнать имя очереди.

Есть еще какой-то протокол Net1 в котором дефолтный пор 9100, но ничего про него найти не смог.
...
Рейтинг: 0 / 0
Принтер этикеток, сетевой. Как напечатать.
    #40125455
fraks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Печатать из Word, FastReport и прочего - не предлагать :)
Нужно закинуть задание на языке ZPL на принтер, из Delphi.
...
Рейтинг: 0 / 0
Принтер этикеток, сетевой. Как напечатать.
    #40125457
alekcvp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fraks
Вроде бы этот принтер умеет в lpr , но попытка открыть его по самбе ничего не открывает, и совершенно непонятно где узнать имя очереди.

В свойствах драйвера или в документации обычно. Кроме того, некторые принтеры умеют включать/отключать протоколы в настройках.
fraks
Есть еще какой-то протокол Net1 в котором дефолтный пор 9100, но ничего про него найти не смог.

Порт 9100 похож на Raw.
...
Рейтинг: 0 / 0
Принтер этикеток, сетевой. Как напечатать.
    #40125463
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fraks
Печатать из Word, FastReport и прочего - не предлагать :)

Ну и зря.

ЗЫ. Нужно перевести принтер в нужный режим. Или там посмотри https://github.com/TheDelphiCoder/Zebra
...
Рейтинг: 0 / 0
Принтер этикеток, сетевой. Как напечатать.
    #40125465
fraks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нашел как поставить драйвер "Generic/Next Only".
Уже лучше, но все равно не работает. :)
С этим драйвером код на ZPL передается в принтер без отсебятины.
Но:
- ничего не печатается, даже пустая этикетка
- в веб-интерфейсе принтера просмотр буфера изображения показывает что несмотря на отсутствие отсебятины, код на ZPL так же как и при родном драйвере, воспринимается как текст.
...
Рейтинг: 0 / 0
Принтер этикеток, сетевой. Как напечатать.
    #40125471
fraks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В принтере переключил режим языка с "Autosense" на "ZSim" (аналог ZPL II) и наконец-то заработало.

Осталось разобраться с кодировкой русских букв, и набрать не обходимый минимум ZPL-команд, для дизайна этикеток.
Ну и разобраться как туда графику подкидывать, при нужде. Типа лого какого-нибудь.
...
Рейтинг: 0 / 0
Принтер этикеток, сетевой. Как напечатать.
    #40125491
Шавлюк Евгений
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fraks,

Печать из fastreport в ZPL II будет работать если выбрать режим "матричный принтер"
...
Рейтинг: 0 / 0
Принтер этикеток, сетевой. Как напечатать.
    #40125511
s62
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fraks,

имел дело с принтером этикеток вот таким примерно (были два разные модели, точно не помню какие): https://tml.lt/ru/tovar/printer-jetiketok-cab-mach2-300/
Он тоже поддерживает, как написано на странице, zpl, но у него есть драйверы, по-моему отдельно USB и сетевой интерфейс, и он работает, как обычный принтер, только нужно правильно задавать размеры листа и того, что выводишь на него. Коллега печатал прямо из CorelDraw вроде что-то, что ему было нужно. Я в программе учёта, когда купили эти принтеры, печатал на нём через FastReport. Так же, как на обычных принтерах A4.
...
Рейтинг: 0 / 0
Принтер этикеток, сетевой. Как напечатать.
    #40125518
s62
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В уголке :)
...
Рейтинг: 0 / 0
Принтер этикеток, сетевой. Как напечатать.
    #40125555
L_argo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Печатал на Зебрах, Элтронах и Датамаксах из Фастрепорта еще 20 лет назад.
И сейчас печатаю.
Ни разу не прибегал к печати на спецязыке. Зачем ?
...
Рейтинг: 0 / 0
Принтер этикеток, сетевой. Как напечатать.
    #40125558
Шавлюк Евгений
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
L_argo,

У меня некоторые зебры при печати штрихкода через ZPL давали лучшее разрешение и качество печати по сравнению с растром
...
Рейтинг: 0 / 0
Принтер этикеток, сетевой. Как напечатать.
    #40125563
Фотография defecator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
fraks
Печатать из Word, FastReport и прочего - не предлагать


отрисуй всё, что надо, на канве, и отправь на принтер как картинку
...
Рейтинг: 0 / 0
Принтер этикеток, сетевой. Как напечатать.
    #40125564
ъъъъъ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
defecator
fraks
Печатать из Word, FastReport и прочего - не предлагать


отрисуй всё, что надо, на канве, и отправь на принтер как картинку

А потом, как с гридом , будет спрашивать: "как узнать, что там печатает принтер"...
...
Рейтинг: 0 / 0
Принтер этикеток, сетевой. Как напечатать.
    #40125569
fraks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
defecator
fraks
Печатать из Word, FastReport и прочего - не предлагать

отрисуй всё, что надо, на канве, и отправь на принтер как картинку

Т.е. чем сложнее тем лучше что-ли??
Все что мне нужно - принтер умеет печатать самостоятельно, получая задание на несложном текстовом языке.
Разобраться с этим языком существенно проще чем научиться рисовать все эти элементы на канвасе.

ZPL поддерживают все принтеры этикеток.

Этикетка - простой элемент, там нет заморочек как в сложных отчетах.

Зачем тянуть в систему то что не требуется? (Дизайнер, графику и т.п.)

Кроме того, мне нужно печатать такие же этикетки из веб-сервиса на питоне. Там фастрепорта не будет.

Напомню что у принтеров этикеток разрешение 203 dpi.
У лазерных принтеров минимум 600dpi.

Пока нам нужно было печатать много этикеток - мы печатали их на обычном лазерном принтере, на самоклейке. И естественно, это было через FastReport.
Сейчас нам нужно печатать этикетки по одной штуке, и информация на каждой из них - уникальна. Мы не можем напечатать лист или рулон этикеток сразу, они требуются по одной штуке, на самоклейке. Поэтому принтер этикеток.

У принтеров этикеток некоторая проблемность с драйверами. По крайней мере к нашему дрова нашлись не сразу, и было много непоняток, зачем что-то настраивать в самом принтере если настройки в драйвере их потом сносят.
...
Рейтинг: 0 / 0
Принтер этикеток, сетевой. Как напечатать.
    #40125570
fraks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ситуация примерно так: зачем писать запросы на sql если есть ORM и QueryBuilder.
...
Рейтинг: 0 / 0
Принтер этикеток, сетевой. Как напечатать.
    #40125573
fraks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FastReport с некоторой версии тоже умеет в ZPL, и у них на сайте нашлась пара статеек по этому поводу.

https://www.fastreport.ru/ru/blog/show/zpl-language/
https://www.fastreport.ru/ru/blog/show/create-ZPL-file-in-Delphi-CBuilder-Lazarus/

правда у меня более старая версия, еще не умеет этого.

Сам ZPL язык, если кто не видел - выглядит так:
https://habr.com/ru/post/266677/

Используя ZPL, этикетки можно формировать хоть на батниках, хоть на bash-скриптах.
...
Рейтинг: 0 / 0
Принтер этикеток, сетевой. Как напечатать.
    #40125576
fraks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
s62
В уголке :)

Если что, дизайнер FastReport позволяет выставлять вид гораздо более чем 100%. Для мелких деталей, в данном случае этикеток, было бы гораздо удобнее выставить 200-300% или "по ширине"
:)
...
Рейтинг: 0 / 0
Принтер этикеток, сетевой. Как напечатать.
    #40125582
Фотография X-Cite
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
https://www.zebra.com/content/dam/zebra/manuals/printers/common/programming/zpl-zbi2-pm-en.pdf

http://labelary.com/viewer.html

Онлайн для простых и в общем подойдет макет наклепать.

Еще дизайнер можно скачать с их сайта.
...
Рейтинг: 0 / 0
Принтер этикеток, сетевой. Как напечатать.
    #40125584
Фотография X-Cite
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Чтобы кириллица была, надо шрифт в принтер устанавливать. В некоторых идет из коробки. Название уточню завтра у коллег.
...
Рейтинг: 0 / 0
Принтер этикеток, сетевой. Как напечатать.
    #40125586
s62
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fraks
s62
В уголке :)

Если что, дизайнер FastReport позволяет выставлять вид гораздо более чем 100%. Для мелких деталей, в данном случае этикеток, было бы гораздо удобнее выставить 200-300% или "по ширине"
:)
Это делалось сколько-то лет назад. Возможно, что когда делал макет, то масштаб и был 200-300%, не помню. Это я просто показал, что на принтере этикеток можно печатать из FastReport.
...
Рейтинг: 0 / 0
Принтер этикеток, сетевой. Как напечатать.
    #40125593
fraks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
X-Cite
http://labelary.com/viewer.html
Онлайн для простых и в общем подойдет макет наклепать.

Спасибо, но я эту ссылку писАл в первом же посте темы :)

X-Cite
Еще дизайнер можно скачать с их сайта.

Надо глянуть, что за дизайнер.

X-Cite
Что-бы кириллица была, надо шрифт в принтер устанавливать. В некоторых идет из коробки. Название уточню завтра у коллег.

У меня кириллица искарпоки, что подтверждается печатью ZPL через веб-интерфейс.

Проблема с кириллицей была при печати через драйвер Generic / Text Only .
Оказалось что он, похоже, не умеет в юникод. Впрочем мне и не нужно.
А кодировкой по умолчанию в нем почему-то было выставлено win1252. Поменял на win1251 и кириллица появилась.
...
Рейтинг: 0 / 0
Принтер этикеток, сетевой. Как напечатать.
    #40125595
fraks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
s62
fraks
пропущено...
Если что, дизайнер FastReport позволяет выставлять вид гораздо более чем 100%. Для мелких деталей, в данном случае этикеток, было бы гораздо удобнее выставить 200-300% или "по ширине"
:)
Это делалось сколько-то лет назад. Возможно, что когда делал макет, то масштаб и был 200-300%, не помню.
Это я просто показал, что на принтере этикеток можно печатать из FastReport.

Из приведенного скриншота никак не следует умение/неумение печатать на принтере этикеток :)
...
Рейтинг: 0 / 0
Принтер этикеток, сетевой. Как напечатать.
    #40125597
fraks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
L_argo
Печатал на Зебрах, Элтронах и Датамаксах из Фастрепорта еще 20 лет назад.
И сейчас печатаю.
Ни разу не прибегал к печати на спецязыке. Зачем ?

Что бы получить максимально доступное качество штрихкодов.
Что бы не тащить в приложение лишнего кода (принтер все нужное умеет печатать сам).
Что бы ускорить печать (при тонких каналах).
Что бы упростить программу печати.
Что бы отвязаться от каких-либо специфических драйверов.
...
Рейтинг: 0 / 0
Принтер этикеток, сетевой. Как напечатать.
    #40125598
Фотография X-Cite
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
L_argo
Печатал на Зебрах, Элтронах и Датамаксах из Фастрепорта еще 20 лет назад.
И сейчас печатаю.
Ни разу не прибегал к печати на спецязыке. Зачем ?


Печатать на зебре не на ZPL а растром, ну это как пользоваться микроскопом для забивания гвоздей.
Сравните, за сколько принтер сможет отпечатать 10.000 этикеток из растра. И за сколько если отправить через ZPL. А также качество.
...
Рейтинг: 0 / 0
25 сообщений из 40, страница 1 из 2
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Принтер этикеток, сетевой. Как напечатать.
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]