![]() |
![]() |
![]() |
|
Помогите с ком объектом "Cognitive.Puma" для распознования текста картинки | ☑ | ||
---|---|---|---|---|
0
alexei366
24.07.12
✎
10:32
|
Использую ком объект от проги CuneiForm, вроде всё хорошо , и параметры дает установить, и методы различные работают. Но самый главный метод (распознавание текста картинки) не работает , ругается на несоответствие параметров (3).
Описание функции BOOL RecogDIBtoFile(OLE_HANDLE hDIB, LPCSTR lpOutputName, short Format, short code) – Распознать DIB и результат сохранить в файле. , где hDIB – handle на глобальную память ( выделенную функцией GlobalAlloc). Допускается распознавание черно-белых 1 битных, серых 8 битных и цветных 24 битных изображений. lpOutputName – Имя выходного файла. Format – Формат создаваемого файла. Доступные форматы можно получить фукцией GetEnumFormats и GetFormatString. Code – Устанавливает кодировку. Каждому формату соответствует своя группа доступных кодировок. Доступные кодировки можно получить функцией EnumCodes и GetCodeString. вот сам код Функция ЧтС2() КомОб = Новый COMОбъект("Cognitive.Puma"); КомОб.Load(); //ленг = КомОб.EnumLanguage(-1); //Сообщить(КомОб.GetLanguageString(ленг)+" "+ленг); //ленг = 0; //Пока Не (ленг = -1) Цикл // ленг = КомОб.EnumLanguage(ленг); // Сообщить(КомОб.GetLanguageString(ленг)+" "+ленг); //КонецЦикла; //ленг = КомОб.EnumFormats(-1); //Сообщить(Строка(ленг)+" "+КомОб.GetFormatString(ленг)); //ленг = 0; //Пока Не (ленг = -1) Цикл // ленг = КомОб.EnumFormats(ленг); // Сообщить(Строка(ленг)+" "+КомОб.GetFormatString(ленг)); //КонецЦикла; //ленг = КомОб.EnumCodes(8,-1); //Сообщить(КомОб.GetCodeString(ленг)+" "+ленг); //ленг = 0; //Пока Не (ленг = -1) Цикл // ленг = КомОб.EnumCodes(8,ленг); // Сообщить(КомОб.GetCodeString(ленг)+" "+ленг); //КонецЦикла; КомОб.Language = 3; КомОб.ModeTable = 1; ДвДанные = Новый ДвоичныеДанные("C:\3\1.jpg"); Попытка КомОб.RecogDIBtoFile(ДвДанные,"C:\3\2.txt",2,1); Исключение Сообщить(КомОб.GetReturnString(КомОб.GetReturnCode())); Сообщить(ОписаниеОшибки()); КонецПопытки; КомОб.Unload(); КонецФункции |
|||
1
Serginio1
24.07.12
✎
10:40
|
А почему ты считаешь, что двоичные данные это hDIB – handle на глобальную память ( выделенную функцией GlobalAlloc).
|
|||
2
alexei366
24.07.12
✎
11:07
|
подскажи как
|
|||
3
alexei366
24.07.12
✎
11:08
|
может конечно через какой-нибудь VBscript запускать, но я не знаю как
|
|||
4
alexei366
24.07.12
✎
11:39
|
Народ ну кто подскажет как тип hDIB и long в 1с сделать?
|
|||
5
Serginio1
24.07.12
✎
12:22
|
Как в 1С не знаю. Есть другие языки тебе в помощь.
|
|||
6
Serginio1
24.07.12
✎
12:25
|
Сдеай ОлеОъект который будет принимать строку с наименоваем файла и выходным файлом, загружать данные в hDIB вызывать функцию RecogDIBtoFile. Смотри примеры которые есть к этой библиотеке
|
|||
7
alexei366
24.07.12
✎
12:29
|
Пример есть на си, но чото пробывал в vs2010 выдавала пустоту (но она решение сначало конвертила), может не работала из-за того что параметры чтения неверные по умолчанию выставлены.
|
|||
8
alexei366
24.07.12
✎
12:30
|
могу ресурс дать с чего пример беру
|
|||
9
Serginio1
24.07.12
✎
12:41
|
Посмотри http://pumanet.codeplex.com/
|
|||
10
Serginio1
24.07.12
✎
12:41
|
(8) Спасибо времени нет.
|
|||
11
alexei366
24.07.12
✎
12:46
|
Ну кто мне поможет?
|
|||
12
alexei366
24.07.12
✎
12:46
|
Может есть у кого наработки по ком объектам в данной теме?
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |