Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.11.16;
Скачать: CL | DM;

Вниз

OCR & Delphi   Найти похожие ветки 

 
leonidus ©   (2007-08-19 23:44) [0]

Нашел любопытную ссылку:
http://www.delphi3000.com/articles/article_4253.asp?SK=

но так и не догнал откуда скачать ActiveX для того чтобы все заработало. Господа, подскажите.


 
leonidus ©   (2007-08-22 00:41) [1]

Люди помогите плиз.


 
Сергей М. ©   (2007-08-22 09:03) [2]


> так и не догнал откуда скачать ActiveX для того чтобы все
> заработало


Ну там же написано:

Before starting :
Go in the Component menu of Delphi and select Import An activeX control.
Select the "Microsoft Office Document Imaging 11.0 Type Library" and click on
"Create the unit". After doing so, the component will be in the ActiveX    
component page of the VCL.

Что тут непонятного ?


 
leonidus ©   (2007-08-22 10:50) [3]

Теперь все понятно, это я просто ступил, у меня не было нужной dll в списке, а после шаманства в настройках офиса она появилась. Проблема сейчас в другом. Собираюсь импортировать ActiveX контрол, выбираю из списка "Microsoft Office Document Imaging 12.0 Type Library" и жму "Create Unit", открывается окно с кодом юнита, но компонент в палитру на вкладку ActiveX, не становится, хотя очевидно  он там должен появиться. Что я не так делаю?


 
Сергей М. ©   (2007-08-22 11:03) [4]


> компонент в палитру на вкладку ActiveX, не становится, хотя
> очевидно  он там должен появиться


А онт так уж сильно необходим ?
Без него вполне можно обойтись, tlb-юнита будет предостаточно, без ущерба для требуемой функциональности.

И может быть он появился на вкладке Servers ? Проверь ..


 
leonidus ©   (2007-08-22 12:09) [5]

На Servers ничего нет.

Необходимость в нем действительно небольшая, хотя в коде на приведенной выше ссылке есть строчка MiDocView1.Document := doc;

Ну да бог с ним с компонентом, пишу как в примере:

Var
 doc :IDocument;
 Img :IImage;
 Layout :ILayout;
begin
 doc := IDispatch(CreateOleObject("MODI.Document")) as IDocument;
 doc.create("test.btm");  // just put here the filename of an image
 doc.OCR(miLANG_ENGLISH,true,true);
 Img := IDispatch(doc.Images[0]) as IImage;
 Layout := IDispatch(Img.Layout) as ILayout;
 Memo1.Lines.Add(Layout.Text);

 //MiDocView1.Document := doc;
 doc.Close(false);
 Img := nil;
 Layout := nil;
end;

компиляется все на ура, однако при выполнении получаю исключительную ситуацию "класс не зарегистрирован" на строчке
doc.create("test.btm");  // just put here the filename of an image

в чем же трабла?


 
Сергей М. ©   (2007-08-22 12:38) [6]


> в чем же трабла?
>


расширение *.btm у тебя фигурирует в реестре в кач-ве зарегистрированного ?


 
leonidus ©   (2007-08-22 19:08) [7]

это описка, там bmp-файл, причем даже если передать пустую строчку, то всеравно получаем на что-то типа I/O error, а именно "класс не зарегистрирован"  ...


 
Сергей М. ©   (2007-08-23 08:55) [8]

Что-то я сильно сомневаюсь, что сабж происходит именно на вызове метода doc.Create

Проверь еще раз в пошаговой трассировке, сабж более вероятен на строчке CreateOleObject()



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

Текущий архив: 2008.11.16;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.014 c
15-1221736846
Vlad Oshin
2008-09-18 15:20
2008.11.16
не знает ли кто ссылку на PL/SQL Developer, приемы работы?


2-1223495398
АгатаКристи
2008-10-08 23:49
2008.11.16
IP, Основной Шлюз, DNS


2-1222921438
ganda
2008-10-02 08:23
2008.11.16
Сохранение данных в DBF IV


2-1223206467
ЛамоРщщук
2008-10-05 15:34
2008.11.16
Как найти все главные Окна и распредилить их по заголовку ?


2-1223030460
Развёртка
2008-10-03 14:41
2008.11.16
Переключение раскладки клавиатуры в TurboPascal