OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Четверг, 28 Март, 2024 17:28

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 9 ] 
Автор Сообщение
 Заголовок сообщения: MathType & BlackBox
СообщениеДобавлено: Среда, 14 Февраль, 2007 10:33 
Аватара пользователя

Зарегистрирован: Пятница, 25 Ноябрь, 2005 12:02
Сообщения: 8500
Откуда: Троицк, Москва
Не нашел подходящего раздела. Завожу здесь.
Раз уж речь про MathType зашла. Поскольку scientific-приложения -- одна из важнейших ниш для ББ, то все способы, "обогащающие" среду, полезны.

Проблема: научить редактор ББ понимать информацию о вертикальном смещении объектов, в частности, OLE-объектов -- формул Маттайпа.
Информация в SDK вроде есть, но я, не зная виндусов на системном уровне, не могу связать ее с исходниками ББ.

Тут техническая информация:
http://www.inr.ac.ru/~blackbox/MathType/SDK/Contents dot htm
(Там какая-то лицензия, поэтому ... и т.д.)

Если кто сможет мне помочь соединить инфы из SDK и исходников ББ -- был бы благодарен. До конца я дожму сам.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Суббота, 17 Февраль, 2007 05:41 
Аватара пользователя

Зарегистрирован: Пятница, 25 Ноябрь, 2005 12:02
Сообщения: 8500
Откуда: Троицк, Москва
Еще точнее, вот этот раздел:

http://www.inr.ac.ru/~blackbox/MathType ... ne_wmf.htm

Непонятно, к чему это относится, если смотреть из ББ.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Суббота, 17 Февраль, 2007 13:05 

Зарегистрирован: Суббота, 26 Ноябрь, 2005 10:37
Сообщения: 875
Откуда: Россия, Владивосток
Если речь идёт об OLE-объектах формул, тогда нужен их COM-интерфейс. В ББ всё для изменения базовой линии объекта есть - нужно только OleClient.View.HandlePropMsg научить обрабатывать TextSetters.Pref. Или Вы встявляете в текст именно картинки WMF?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Воскресенье, 18 Февраль, 2007 10:09 
Аватара пользователя

Зарегистрирован: Пятница, 25 Ноябрь, 2005 12:02
Сообщения: 8500
Откуда: Троицк, Москва
Ivor писал(а):
Если речь идёт об OLE-объектах формул, тогда нужен их COM-интерфейс. В ББ всё для изменения базовой линии объекта есть - нужно только OleClient.View.HandlePropMsg научить обрабатывать TextSetters.Pref. Или Вы встявляете в текст именно картинки WMF?


Я понимаю, что все есть, и использую в командах поднятия-опускания на пункт (не только объектов).
Не понимаю этих ОЛЕ и т.п. -- сил нет въезжать. Думал, может, кто-то быстро сможет подсказать, за что цепляться.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Воскресенье, 18 Февраль, 2007 10:12 
Аватара пользователя

Зарегистрирован: Пятница, 25 Ноябрь, 2005 12:02
Сообщения: 8500
Откуда: Троицк, Москва
Ivor писал(а):
В ББ всё для изменения базовой линии объекта есть...


Кстати, есть не все.
ББ, если не ошибаюсь, не понимает "пол-пункта".


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Воскресенье, 18 Февраль, 2007 13:26 

Зарегистрирован: Суббота, 26 Ноябрь, 2005 10:37
Сообщения: 875
Откуда: Россия, Владивосток
К сожалению MathTypа у меня нет. Попытался с Equation Editor поработать - если вставляешь как WMF - никакой информации о смещении в нём нет (хотя согласно документации должна быть). Если вставляешь как OLE-объект - что-то визуально похожее есть, но как до него добраться из программы - не знаю :( Так что нужно пытать того, у кого есть MathType.

По смещениям: TextSetters.pref.dsc измеряется в универсальных единицах. Так что и на 1/большую пункта оно умеет.

Кстати. А как будут отображаться OLE-объекты в линуксовой версии? И метафайлы тоже...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Воскресенье, 18 Февраль, 2007 14:35 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9459
Откуда: Россия, Орёл
Как Aliens, ибо все околоCOMовское из нее вырезано...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: MathType & BlackBox
СообщениеДобавлено: Понедельник, 25 Апрель, 2016 11:18 

Зарегистрирован: Пятница, 20 Июль, 2007 17:26
Сообщения: 710
Откуда: Псков
Из MathType SDK:
The baseline data is embedded in the metafile as a MFCOMMENT printer escape (using the Escape function described in the Windows SDK). The baseline comment contains the following 12 bytes of data expressed as a C struct:

typedef struct {
char signature[8]; // “MathType” (no terminating null character)
WORD type; // MathType’s comment type (0)
WORD baseline_delta; // in 1/16ths of a point (actually whole points)
} MTCommentRec;

Ничего не знаю ни про винапи ни про ББ по существу, но вот это не то, что надо (из модуля winapi) ?
PROCEDURE Escape* ["GDI32.dll", ""] (p0: HDC; p1: INTEGER; p2: INTEGER; p3: PtrSTR; p4: PtrVoid): INTEGER;
(*END Escape;*)
MFCOMMENT* = 15 (* {0..3} *);

Предполагаю, что при вызове MFCOMMENT в p2 как раз указывает на нужный запрос данных.
A p0:HDC (A handle to the device context) - наверное имеем после открытия доступа к Clipboard.

Возможно всё это из серии советов "круглое -катать, а квадратное -таскать" :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: MathType & BlackBox
СообщениеДобавлено: Понедельник, 25 Апрель, 2016 18:57 
Аватара пользователя

Зарегистрирован: Пятница, 25 Ноябрь, 2005 12:02
Сообщения: 8500
Откуда: Троицк, Москва
Про Window SDK у них раньше не было, это приятная новость.

Осталось понять про этот Клипборд :)


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 9 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 6


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
cron
Вся информация, размещаемая участниками на конференции (тексты сообщений, вложения и пр.) © 2005-2024, участники конференции «OberonCore», если специально не оговорено иное.
Администрация не несет ответственности за мнения, стиль и достоверность высказываний участников, равно как и за безопасность материалов, предоставляемых участниками во вложениях.
Без разрешения участников и ссылки на конференцию «OberonCore» любое воспроизведение и/или копирование высказываний полностью и/или по частям запрещено.
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB