Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2008.08.03;
Скачать: [xml.tar.bz2];

Вниз

сканер   Найти похожие ветки 

 
fedormoore ©   (2007-11-01 14:17) [0]

Здравствуйте все!!! и всем!!!
пытаюсь написать простинькую программку для себя которая бы вела електронный архив документов, есть сканер с автоподачиком рз scanjet 5590 и есть вот такой код

procedure TForm1.Accquire1Click(Sender: TObject);
var
dat: hBitMap;
PInfo: PBitMapInfoHeader;
Height,Width:integer;
{Функция возведения 2 в степень}
function stp2(s:byte):longint;
var
 m: longint;
 i: byte;
begin
 m:=2;
 for i:=2 to s do m:=m*2;
 stp2:=m;
end;

begin
{Получаем указатель на графические данные}
dat:=TWAIN_AcquireNative(Handle,0);
if dat <> 0 then begin
 {Получаем указатель на область памяти содержащей DIB
 данные и блокируем область памяти}
 PInfo:=GlobalLock(dat);
 {Анализируем полученные данные}
 Height:=PInfo.biHeight ;
 Width:=PInfo.biWidth ;
 Wcm.Caption :=floatToStrF(100/PInfo.biXPelsPerMeter*Width,ffNumber,8,3)+" cm";
 Hcm.Caption :=floatToStrF(100/PInfo.biYPelsPerMeter*Height,ffNumber,8,3)+" cm";
 Colors.Caption := floatToStrF(stp2(PInfo.biBitCount),ffNumber,8,0)+ " цветов";
 {Разблокируем память}
 GlobalUnlock(dat);
 {Передаем в битовую матрицу графические данные}
 {И устанавливаем перехват ошибок}
 try
 MyBitMap.Palette :=TWAIN_CreateDibPalette(dat);
 MyBitMap.Width := Width;
 MyBitMap.Height := Height;
 TWAIN_DrawDibToDC(MyBitMap.Canvas.Handle,0,0,Width,Height,dat,0,0);
 except
 {Обрабатываем наиболее вероятную ошибку связанную с не хваткой ресурсов
   для загрузки изображения}
 on EOutOFResources do
     MessageDlg("TBitMap: Нет ресурсов для загрузки изображения!",
               mtError,[mbOk],0);
 end;
 {Отображаем графические данные}
 //Canvas.Draw(10,10,MyBitMap);
 Image1.Picture.Graphic:=MyBitMap;
 {Освобождаем память занятую графическими данными}
 TWAIN_FreeNative(dat);
end;

end;

он показывает (если дописать строку) то сохроняет только последний документ который отсканировал, а как мне быть если в автоподачике лежит целая пачка? просмотрел все вопросы но такой проблемы не встречал


 
tesseract ©   (2007-11-01 16:39) [1]


> function stp2(s:byte):longint;var  m: longint;  i: byte;
> begin  m:=2;  for i:=2 to s do m:=m*2;  stp2:=m;end;


Странный код  покажу проще :

function stp2(s:byte):cardinal
m:caridnal;
begin
  m:=2;
  result:=m shl s;
end;



Страницы: 1 вся ветка

Форум: "WinAPI";
Текущий архив: 2008.08.03;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.007 c
2-1215233515
Гриша
2008-07-05 08:51
2008.08.03
как сменить в откомпилированном файле значек(иконку) семерочки?


15-1213659824
Randew
2008-06-17 03:43
2008.08.03
Подскажите литературу


2-1215065064
Al
2008-07-03 10:04
2008.08.03
ClipCursor не могу разобраться с координатами


15-1213188408
ПЛОВ
2008-06-11 16:46
2008.08.03
Печать на матричном принтере


4-1193603602
rainbow_d
2007-10-28 23:33
2008.08.03
Получить содержимое заблокированного файла





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский