![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Печать из базы штрих-кода [D5, Paradox]
Weare © (2003-06-12 12:06:00)День добрый, уважаемые мастаки. Есть база товаров с занесенными в нее (в числовом формате) штрих-кодами. Подскажите, плз, какую-нибудь компоненту или ссылку на модуль, с помощью чего можно реализовать печать штрих кода, того самого который распознается сканером.
doomin (2003-06-25 11:26:00) [1]http://www.squaregear.net/fonts/free3of9.zip
Здесь лежит FreeWare шрифт для CODE39. Чтобы работало код должен печататься со знаками * впереди и сзади
Chinik (2003-06-16 12:24:00) [2]Специальные принтеры штрих-кода имеют собственный язык программирования (PL, TSLP и т.д., зависит от фирмы и модели).
По документации можно всё выяснить и сделать как Ales.
>Ales
Ваш вариант может подходить только к вашему принтеру.
Кстати, чисто как информация, с принтером должна поставляться специальная утилитка создания этикеток (рекомендую Nise Label), которая поддерживает печать почти из любого типа БД. И если нет специального принтера, то рекомендую купить, ведь они специально предназначены для печати штрих-кода (можно и графику и обычный тескт).
Ales (2003-06-16 09:34:00) [3]Я в свое время перепробовал кучу компонент и программ но они меня все не устроили по разным причинам. Поэтому я взял доку на свой принтер штрихкодов и понал что гораздо прощще самому все наваять. Идея там проста как три рубля:
Создается обычный текстовый файл с кодами и его отправляем на принтер.
Вот пример кода:
procedure TMyLabelPrint.ButtonPrintLabelClick(Sender: TObject);
var F: TextFile;
S: String; // нач. номер
Sn: Int64; // Нач. номер в Int64
n: Int64; // Скока троек печатать
I: Integer;
v: extended;
Sn1,Sn1o,Sn2,Sn2o,Sn3,Sn3o: String;
begin
if Not NumErr then Exit;
// Определяем переменные
v := NumLabPrint.Value;
S:=EditLabNum.Text; // Тут нач. номер.
Sn1o:="BARCODE 36,0,"25",31,1,0,2,4,"";
Sn2o:="BARCODE 260,0,"25",31,1,0,2,4,"";
Sn3o:="BARCODE 484,0,"25",31,1,0,2,4,"";
// Печатаем этикетки.
AssignFile(F,"lpt1"); // Определяем выход.
Rewrite(F);
// Подготовка
WriteLN(F,"<!<R>SPEED 2.0");
WriteLN(F,"DENSITY 9");
WriteLN(F,"SET PEEL OFF");
WriteLN(F,"DIRECTION 0");
WriteLN(F,"GAP 3.00 mm,0.00 mm");
WriteLN(F,"REFERENCE 0,0");
// Конец подготовки.
n:=(trunc(v)) div 3;
Sn:=StrToInt(S);
for I:=0 to n-1 do begin // Печатаем тройками.
WriteLN(F,"SET CUTTER OFF");
WriteLN(F,"SIZE 80.95 mm,10.01 mm");
WriteLN(F,"CLS");
// Пошли вычислять.
Sn1:=Sn1o+IntToStr(Sn)+""";
Sn2:=Sn2o+IntToStr(Sn+1)+""";
Sn3:=Sn3o+IntToStr(Sn+2)+""";
Sn:=Sn+3;
// А теперича и печатать.
WriteLN(F,Sn1);
WriteLN(F,Sn2);
WriteLN(F,Sn3);
WriteLN(F,"PRINT 1,1"); // Вот тут сама печать чего завели.
end;
CloseFile(F);
EditLabNum.Text:=IntToStr(Sn);
end;
У меня лента широкая используется, с тремя лайбочками на строку
У юзера запрашивается скока номеров (кратно трем!) печатать, и с какого намера и в путь ...
Код абсолютно рабочий, - используется уже с год наверно ...
Как из базы брать надеюсь сами ... :-)
Trooper (2003-06-13 11:57:00) [4]Возьми алгоритм формирования штрих кода, который тебя интерисует и напиши свой модуль или компонент ... :-)
Соловьев (2003-06-13 09:52:00) [5]на www.torry.net есть компонет - Barcode library.
Если нужно могу выслать.
SkyN (2003-06-13 09:45:00) [6]Посмотри http://mitglied.lycos.de/AJSchmidt/index.html, эта компонента кучу кодировок поддерживает. Ещё есть шрифты (что мне кажется более удобным способом), но я бесплатного не нашел.
Т.к. я тоже занимаюсь поиском лучшего варианта, что найдешь, линк кинь на nebotov@mail.ru
Anatoly Podgoretsky (2003-06-13 09:02:00) [7]То есть ты купил его и теперь в нарушение лицензии распространяешь варезным методом?
alex nosik (2003-06-13 08:52:00) [8]Не знаю
MsGuns (2003-06-12 17:17:00) [9]>alex nosik (12.06.03 12:09)
А что, фастрепорт уже стал фриварным ?
Weare (2003-06-12 12:30:00) [10]Удалено модератором
Примечание: Личная переписка
alex nosik (2003-06-12 12:25:00) [11]Удалено модератором
Примечание: Личная переписка
Weare (2003-06-12 12:17:00) [12]
> alex nosik (12.06.03 12:09)
> В FastReport 2.5 есть компонент для печати штрихкодов для
> сканера.
А где его взять можно?
alex nosik (2003-06-12 12:09:00) [13]В FastReport 2.5 есть компонент для печати штрихкодов для сканера.