Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Delphi Новый топик    Ответить
 Работа со сканером  [new]
kamolsan
Member

Откуда:
Сообщений: 364
Пишу прогу, где из проги нужно
запускать сканер Benq 4300 (Scanner driver - MiraScan)
и записывать в файл (*.gif,*.bmp,*.jpg...).

Если кто ни будь, работал или хоть знает
как это сделать, ПОЖАЛУЙСТА, подскажите.

Заранее спасибо!!!
27 июл 04, 16:54    [839489]     Ответить | Цитировать Сообщить модератору
 Re: Работа со сканером  [new]
softwarer
Member

Откуда: 127.0.0.1
Сообщений: 42237
Блог
Когда мне потребовалось подобное решение, я за пятнадцать минут нашел несколько вариантов в исходниках. Torry рулит.

Наиболее простое, которое я в итоге и выбрал - изображение со сканера помещалось в clipboard, после чего с ним легко сделать что угодно. Уложилось строк в сто вместе с заголовочными комментариями и инструкцией по пользованию модулем.
27 июл 04, 17:14    [839577]     Ответить | Цитировать Сообщить модератору
 Re: Работа со сканером  [new]
Ray D
Member

Откуда: from the middle of nowhere
Сообщений: 3568
Блог
См. аттач.
Пример использования:

procedure TfmPretender.ProcessScanMsg(var Msg: TMsg; var Handled: Boolean);
begin
Handled := ProcessSourceMessage(Msg);
end;

procedure TfmPretender.miScanClick(Sender: TObject);
var
img: TJPEGImage;
begin
img := TJPEGImage.Create;
try
Application.OnMessage := ProcessScanMsg;
try
TWAcquire(img, True, Application.Title, 'AlionSoft');

iPhoto.Picture.Assign(img);
Pretender.Photo := iPhoto.Picture;
except on E: ETwainError do begin
MsgDlg(E.Message);
exit;
end;
end;
finally
Application.OnMessage := nil;
img.Free;
end;
end;

К сообщению приложен файл (Twain.rar - 23Kb) cкачать
27 июл 04, 17:17    [839599]     Ответить | Цитировать Сообщить модератору
 Re: Работа со сканером  [new]
kamolsan
Member

Откуда:
Сообщений: 364
Спасибо ребята!!! Пробую!!!
28 июл 04, 17:10    [843303]     Ответить | Цитировать Сообщить модератору
 Re: Работа со сканером  [new]
kamolsan
Member

Откуда:
Сообщений: 364
Softwarer, я лазел в Torry но не нашол компоненту для сканера, продолжаю поиски. Найду - объязательно сообщю

Ray D спасибо тебе за помощь!!!
Извени, я - чайник и поэтому не могу понять твой пример:

ProcessSourceMessage(Msg);
TWAcquire(img, True, Application.Title, 'AlionSoft');
iPhoto.Picture.Assign(img);
Pretender.Photo := iPhoto.Picture;
ETwainError

Как их можно победить(Что за объекты и методы)?
Заранее спасибо за терпения.
29 июл 04, 11:04    [844661]     Ответить | Цитировать Сообщить модератору
 Re: Работа со сканером  [new]
Lyoshik Belloff
Member

Откуда:
Сообщений: 50
я в своё время импортнул Component-Import ActivX. (что-то вроде Kodak Image Scan Control) и сделал ActiveX dll-лку, в которой врапнул функции для работы с twain-сканнерами, потом регистриш такую длл-ку, и вызываешь что-то вроде
scan := CreateOleObject("My.ImgScanRedirector");
if not scan.ScannerAvailable then ...error...
scan.ShowSelectScanner;
scan.SetImage('c:\image.bmp');
scan.StartScan;
29 июл 04, 13:28    [845397]     Ответить | Цитировать Сообщить модератору
 Re: Работа со сканером  [new]
aag
Member

Откуда: Москва
Сообщений: 1939
Торри, конечно рулит...
Но большинство этих компонент либо глючат, либо поддерживают TWAIN в ограниченном обьеме.

Лучшие из виденного: DelphiTWAIN (sourceforge.net, наиболее хорошо написан, но у меня упорно глючит при сохранении изображения), TScanner (написан плохо, не все поддерживает, зато работает) и TMHTwain.


Nobody faults but mine... (LZ)
29 июл 04, 14:13    [845641]     Ответить | Цитировать Сообщить модератору
 Re: Работа со сканером  [new]
LPDem
Member

Откуда: The City of Eternal Spring
Сообщений: 585
А разве с TWAIN нельзя работать через обычный API?
29 июл 04, 15:16    [845955]     Ответить | Цитировать Сообщить модератору
 Re: Работа со сканером  [new]
Lyoshik Belloff
Member

Откуда:
Сообщений: 50
автор
А разве с TWAIN нельзя работать через обычный API?
кстати, у меня что-то как-то плохо получилась напрямую с Кодаковским ЕктивХ-ом... :(
через импорт активХ в компоненту, и написания враппера всё проще, учитывая, что эта длл-лина была нужна для 1С была
29 июл 04, 15:26    [846019]     Ответить | Цитировать Сообщить модератору
 Re: Работа со сканером  [new]
kamolsan
Member

Откуда:
Сообщений: 364
Lyoshik Belloff
я в своё время импортнул Component-Import ActivX.;[/src]


А где его взять в Delphi7 ???
29 июл 04, 17:08    [846621]     Ответить | Цитировать Сообщить модератору
 Re: Работа со сканером  [new]
kamolsan
Member

Откуда:
Сообщений: 364
aag
Лучшие из виденного: DelphiTWAIN (sourceforge.net,


Порыл sourceforge.net,
кажеться бесплатная нету...
29 июл 04, 17:58    [846853]     Ответить | Цитировать Сообщить модератору
 Re: Работа со сканером  [new]
Lyoshik Belloff
Member

Откуда:
Сообщений: 50
автор
А где его взять в Delphi7 ???

Сорри, даже не знаю
В Д5 просто - Component -> Import ActiveX Control -> и там выбирается Kodak Image Scan Control (TImgScan) (ещё полезно Kodak Image Admin Control - TImgAdmin)
29 июл 04, 18:07    [846895]     Ответить | Цитировать Сообщить модератору
 Re: Работа со сканером  [new]
aag
Member

Откуда: Москва
Сообщений: 1939
Не знаю как ты рыл, но на sourceforge все, по-моему, бесплатное. И с исходниками.

Nobody faults but mine... (LZ)
29 июл 04, 18:31    [846988]     Ответить | Цитировать Сообщить модератору
 Re: Работа со сканером  [new]
kamolsan
Member

Откуда:
Сообщений: 364
aag
Не знаю как ты рыл, но на sourceforge все, по-моему, бесплатное. И с исходниками.


Да это так, но DelphiTwain весь какойто платный.
30 июл 04, 08:52    [847658]     Ответить | Цитировать Сообщить модератору
 Re: Работа со сканером  [new]
kamolsan
Member

Откуда:
Сообщений: 364
В Д5 просто - Component -> Import ActiveX Control -> и там выбирается


В Delphi7 нету но зато есть Delphi6 под Win2000Prof.
Когда установил Delphi6 под Win2003 - Этих компоненнтов
тагже как и в Delphi7 нестало!!? Может компонента напремую
зависет от ОС???

Кстати, Импортировал ком. ActiveX в Delphi6
под Win2000, потом созданные pas файлы
хотел инсталировать в Delphi7 под Win2003 как новый компонент -
на палитре появились, но не помагло - требует регестрации.
Даже пробовал regestr32.exe, ocx файлы не регестрируються
в win2003.
30 июл 04, 15:33    [849666]     Ответить | Цитировать Сообщить модератору
 Re: Работа со сканером  [new]
kamolsan
Member

Откуда:
Сообщений: 364
Резюме:
1. Компонеты ActiveX на премую зависят от ОС (а не версии Delphi);
2. Работа со сканером можно решить несколько способами:
а) http://www.twain.org, то есть достать источники для pas
(если кому нужно могу отослать, только напеши на мой E-Mail- kamolsan@list.ru(Как разместить это на каком-то сайте - я неумею));
b) можно воспользоваться компонентами ActiveX -
Kodak...(в Win2003 этого нету, но в Win2000 есть).

Всем Спасибо!!!
3 авг 04, 09:34    [854014]     Ответить | Цитировать Сообщить модератору
Все форумы / Delphi Ответить
 
Лучший учебный центр Microsoft!
Новейшие курсы Microsoft SQL Server 2014!
ОЧЕНЬ привлекательные цены на курсы Oracle — от 26 тыс.руб.!
Все курсы по базам данных: Microsoft SQL Server 2014, Oracle, IBM DB2, Access, MySql