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

Вниз

Работа с изображением   Найти похожие ветки 

 
jen_bond   (2003-03-18 14:04) [0]

Хотелось бы найти путь решения для одной проблемки, а проблемма заключается втом что есть векторный файл с рисунком и тектовыми сносками(сделан в Corel) так вот необходимо файл подгрузить в своей программе и что бы можно было извлекать текст, что бы на основании его вести поиск. Подскажите пожайцлусто какое средство может помочь(может есть какието технологии позволяющие работать с .dxf или подобными). Может это можно сделать при помощи OPENGL?


 
[lamer]Barmaglot   (2003-03-18 14:22) [1]

Посмотреть формат файла dxf? После чего вытащить нужную информацию...


 
Shirson   (2003-03-18 15:04) [2]

Попробуй загрести этот файл в клипборд и astext взять оттуда.


 
Андрей Сенченко   (2003-03-18 15:25) [3]

Shirson © (18.03.03 15:04)

Corel-овский файл через буфер AsText ? это как это ?


 
Shirson   (2003-03-18 15:51) [4]

А вот так :)
Приложения хранят свои данные в клипборде в куче форматов. Задрыпанный notepad запихивает в 4 форматах. Word в 17ти. Среди них есть голый текст, который можно забрать asText или юникодом (если на русском). Есть подозрение, что Corel все подписи может сбросить отдельным форматом.


 
Андрей Сенченко   (2003-03-18 15:59) [5]

Shirson © (18.03.03 15:51)

Вопрос был следующий :
"есть векторный файл с рисунком и тектовыми сносками(сделан в Corel) "
Все. О том, что этот файл ОТКРЫТ под Corel Draw и уж тем более, что кто-то озаботился кинуть в буфер текстовые поля нет по-моему ни слова.


 
jen_bond   (2003-03-18 20:05) [6]

Файл записысан в БД и от туда вытаскивается. Вот весь вопрос в том что бы был некий редактор-просмоторщик который мог бы открыть данный файл и можно было бы извлечь текстовые надписи. Я пробывал использовать EzCad, но проблема в том что он не поддерживает большого числа слоев.


 
Моджахед   (2003-03-18 21:49) [7]

Корел умеет сохранять в WMF-EMF. Если текст в кривые не переведен, то из ВМФ вытащить можно.


 
Shirson   (2003-03-19 06:21) [8]

>Андрей Сенченко

Да нет, не всё.
так вот необходимо файл подгрузить в своей программе и что бы можно было извлекать текст, что бы на основании его вести поиск

Не так ли?

>О том, что этот файл ОТКРЫТ под Corel Draw и уж тем более, что кто-то озаботился кинуть в буфер текстовые поля нет по-моему ни слова.

"Кто-то" это программа, которую можно написать. Она будет сама открывать корел, грузить туда файл и запихивать его в клипборд. И я не говорил, что нужно ложить в клипборд текстовые поля. ВЕСЬ файл, целиком. И посмотреть, как он (Corel) его хранит. Если текстовые поля он складывает в кучку CF_TEXT, то спокойно их от туда забирать. Если же нет - думать дальше.


 
jen_bond   (2003-03-19 09:28) [9]

Моджахед!!! А есть компаненты которые в моем приложении могли бы открыть файл с расширением WMF-EMF?



 
MBo   (2003-03-19 09:37) [10]

>jen_bond
TEnhMetaFile


 
KA_   (2003-03-19 10:14) [11]

>jen_bond

> пробывал использовать EzCad, но проблема в том что он не
> поддерживает большого числа слоев


Большого - это сколько?
С EzCAD"ом я знаком по-наслышке, зато с EzGIS"ом даже очень. Разницы нет - движок-то один. 300 слоев он точно держит :)


 
Андрей Сенченко   (2003-03-19 11:25) [12]

Shirson © (19.03.03 06:21)

1. Получаем зависимость от наличия Corel Draw на пользовательской машине. Таковой может отсутствовать или иметь низшую версию по сравнению с той, в которой сохранен файл. А форматы хранения они меняют - в 7-м Кореле Ты ни за что не откроешь файл 8-го

2. Она будет сама открывать корел, грузить туда файл и запихивать его в клипборд.
Ну если с открытием Корела и загрузкой туда файла еще можно как-то разобраться - найти сам Корел по реестру и запустить с параметром, то вот "запихивать в клипборд" - нужно будет либо писать макрос в самом Кореле ( а как его экспортировать на пользовательские тачки ? ), либо искать компоненты для работы с Корелом. Грустно


 
Shirson   (2003-03-19 11:34) [13]

>Андрей Сенченко
>Получаем зависимость от наличия Corel Draw на пользовательской машине

Гы. Ну естественно, проще всё делать ручками :) ИЛи искать компоненты, которые нормально работают с данной версией Корела. А ну как формат файла изменится? Что проще, другую версию Корела на ком поставить или искать компонент под эту версию? Если первое можно найти однозначно, то второе -хехе :)

>Ну если с открытием Корела и загрузкой туда файла еще можно как-то разобраться - найти сам Корел по реестру и запустить с параметром, то вот "запихивать в клипборд" - нужно будет либо писать макрос в самом Кореле ( а как его экспортировать на пользовательские тачки ? ), либо искать компоненты для работы с Корелом. Грустно

Точно так же, как "экспортируются" макросы ВОрда или XL :)


 
Андрей Сенченко   (2003-03-19 11:40) [14]

Собственно я не спорю, что способ рабочий. Меня не радует его неуниверсальность


 
KA_   (2003-03-19 11:52) [15]

>jen_bond
У меня проблемы с почтой :(
Не могу ничего отправить.


 
Shirson   (2003-03-19 12:54) [16]

>Андрей Сенченко

Что подразумевается под неуниверсальностью? То, что на компе без Корела не откроются Кореловские файлы? :) Хехе, это не неуниверсальность, а скорее наоборот. Как раз из-за изменений версий. Можно убить пол-года и вскрыть кореловский формат по косточкам, а через день получить новую версию, которая пустит всю работу в trash. :)


 
jen_bond   (2003-03-19 13:18) [17]

Вопрос тут вовсе не о КОреле, я писал что есть файл нарисованный в Кореле(а его можно во что нибудь конвертнуть), так вот вопрос втом есть ли компаненты которые моглибы в моей программе открыть этот файл(.???), и извлечь из него текст????


 
Shirson   (2003-03-19 13:36) [18]

.??? это новый формат? :)

Определись, с каким форматом тебе лучше всего работать. Если устроит EMF-WMF то под него компоненты найти можно наверняка.


 
jen_bond   (2003-03-19 20:52) [19]

Для меня не формат важен, а выполнение задачи вытаскивания текста.(И естественно наличие нужных компанентов). Shirson посоветую что-нибудь. Заранее благодарен!


 
Моджахед   (2003-03-19 22:46) [20]

С метафайлами.

Регистрируешь свою кол-бэк функцию вызовом EnumMetaFile.
Call-back функция будет получать по-порядку все записи метафайла c остальной ерундой. В числе этой ерунды будет указатель на структуру ENHMETARECORD, определение этой структуры:


tagENHMETARECORD = packed record
iType: DWORD; { Record type EMR_XXX}
nSize: DWORD; { Record size in bytes}
dParm: array[0..0] of DWORD; { Parameters}
end;


Теперь смотри в Windows.pas и находи там нужное тебе значение для iType (константы EMR_XXX).

Это для старых файлов WMF. Для EMF используется EnumEnhMetaFile, и далее аналогично.

Вот что я нашел за 10 мин в стандартной справке и Windows.pas, никогда при этом не работав с метафайлами на таком уровне. Не стоит лениться почитать общедоступную инфомацию и выдумывать самокат; не в обиду будь сказано.






 
Моджахед   (2003-03-19 22:48) [21]

Основную идею ты понял, так что не теряй еще двое суток на задавание вопросов в форумах, а просто возьми и почитай.


 
jen_bond   (2003-03-20 12:11) [22]

Моджахед спасибо! Кроме хелпа еще где нибудь можно найти информацию по данному вопросу, желатьльно с примерами!


 
jen_bond   (2003-03-20 13:00) [23]

Моджахед можно с тобой как-нибудь по мылу пообщаться?



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

Форум: "Основная";
Текущий архив: 2003.03.31;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.5 MB
Время: 0.006 c
14-100457
{bas}
2003-03-14 18:33
2003.03.31
опять Память


4-100513
Rouse_
2003-02-02 16:56
2003.03.31
Закрытие приложения


1-100299
Behemoth
2003-03-19 12:30
2003.03.31
Хочу, чтобы дочерние MDI формы сразу появлялись развернутыми


1-100243
NetKnight
2003-03-18 11:56
2003.03.31
Директива {$IFDEF} ?


3-100153
infinity
2003-03-11 23:45
2003.03.31
Index out of date или Index read only





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский