Скрипт для размещения формул MathType в InDesign CS3, CS4, CS5

  • Автор темы Автор темы mvlad123
  • Дата начала Дата начала
Статус
Закрыто для дальнейших ответов.
Ответ: Скрипт для размещения формул MathType в InDesign CS4

Для Denver
Проблема с запуском формул без ассоциации с MathType и из папок с любой кодировкой символов успешно решена. Завтра-послезавтра, видимо, выложу очередной раз весь MT-Script.
 
Ответ: Скрипт для размещения формул MathType в InDesign CS4

Для eugene10901
Как решить 1-й Ваш вопрос внутри самого MathType, я не знаю, хотя можно попытаться поразбираться с MTEF-структурой. На данном этапе самое простое - сделать простенький скриптик, позволяющий crop-ить фрейм с формулой с нужной стороны и на нужную величину, чтобы эта проблема ушла.
Если все-же удастся что-то сделать с MTEF-структурой, то все-равно это будет делаться не внутри MT, а опять же скриптом, только более аккуратно, чем в предложенном выше случае.
Однако, зачем все это, если, как уже было сказано ранее, проще знаки препинания набирать в формуле, тем более что править ее также легко, как и обычный текст.
 
Ответ: Скрипт для размещения формул MathType в InDesign CS4

mvlad123 сказал(а):
Для eugene10901
Как решить 1-й Ваш вопрос внутри самого MathType, я не знаю, хотя можно попытаться поразбираться с MTEF-структурой. На данном этапе самое простое - сделать простенький скриптик, позволяющий crop-ить фрейм с формулой с нужной стороны и на нужную величину, чтобы эта проблема ушла.
Если все-же удастся что-то сделать с MTEF-структурой, то все-равно это будет делаться не внутри MT, а опять же скриптом, только более аккуратно, чем в предложенном выше случае.
Однако, зачем все это, если, как уже было сказано ранее, проще знаки препинания набирать в формуле, тем более что править ее также легко, как и обычный текст.
Например, в текстовый eps от MT можно добавлять описание формулы. Знаки препинания в самой формуле мешают, если эти формулы автоматически выносить в Указатель математических формул с их описаниями.
 
Ответ: Скрипт для размещения формул MathType в InDesign CS4

eugene10901 сказал(а):
Например, в текстовый eps от MT можно добавлять описание формулы.
Такая информация в версиях 6 и выше добавляется самим MT. Называется это MathML - универсальный язык описания формул, однако вызывающая у Вас проблема связана, скорее всего, с обработкой template при формировании MTEF-структуры. Поэтому, если даже можно будет скриптом поправить эти шаблоны в MTEF, то после любого редактирования MT все это восстановит, увы...
 
Ответ: Скрипт для размещения формул MathType в InDesign CS4

mvlad123 сказал(а):
Такая информация в версиях 6 и выше добавляется самим MT. Называется это MathML - универсальный язык описания формул, однако вызывающая у Вас проблема связана, скорее всего, с обработкой template при формировании MTEF-структуры. Поэтому, если даже можно будет скриптом поправить эти шаблоны в MTEF, то после любого редактирования MT все это восстановит, увы...
А делать crop - это не для меня: все равно мои скрипты делают fittocontent и выравнивают формулы по базовой линии. Да и как определить программно, на сколько пунктов сокращать bounding box для каждой отдельной формулы... Только визуально, наверное. На мое письмо с вопросами техподдержка matthype так и не ответила.
 
Ответ: Скрипт для размещения формул MathType в InDesign CS4

Специально для Denver
Вариант скрипта Start-App, поддерживающий латиницу и пробелы в пути к файлам. Это же применено в новом варианте MT-Script.
Кстати, на предыдущей странице выложен MT-Converter, позволяющий преобразовывать формулы в текстовый формат для дальнейшей обработки в Word-е. Интересны Ваши замечания по этому скрипту, ибо это технология должна лечь в основу пакетного преобразования формул по новому pref-файлу.
 

Вложения

Ответ: Скрипт для размещения формул MathType в InDesign CS4

Видимо, это ко мне. Владислав, спасибо. Проблема в том, что у меня сейчас самое горячее время - сдаем все, что нужно выпустить в этом году. Будет окошко - посмотрю. Но реально освобожусь числу к 10 декабря.
 
Ответ: Скрипт для размещения формул MathType в InDesign CS4

Особо спешить не будем, пусть все идет своим чередом, ибо у меня работ тоже не в проворот, "кувыркаюсь" со скриптами, чтобы отдохнуть от основной работы.

Идея в "полупакетном преобразования формул" следующая. Выделяем область с формулами. Проверяем сдвоенные линки на формулы и убираем их, чтобы случайно где-нибудь расположенная формула, являющаяся копией изменяющейся не претерпела модификации. Далее формируется текстовый файл, содержащий строки вида
<<Путь к формуле, вставленной в InD>>=текстовая MTEF структура формулы.
И так по всем замеченным в вашем выделении формулам.
Тестовый файл, например, назовем его MT-Convert.txt сохраняется в каталог с активной публикацией.
Скрипт открывает Word и загружает этот файл. Устанавливает Word поверх всех программ.
Пользователь (можно попробовать и автоматически, но может и не получиться!) осуществляет восстановление формул, затем преобразует их по своему усмотрению, а также экпортирует формулы к какой-то каталог. Этот каталог желательно должен отличаться от основного, содержащего все формулы активной публикации.
Далее сохраняем файл Mt-Convert.txt как txt туда, откуда он родом, т.е. в каталог активной публикации. Теперь в нем содержаться строки вида
<<Путь к формуле, вставленной в InD>>=<<Eqn0010.eps>>, например, и т.д.
Запускается еще один скрипт, назовем его MT-RelinkEq, которому указываем новый каталог, содержащий экспортированные новые формулы, а путь к Mt-Convert.txt известен - это путь к активной публикации. Этот скрипт копирует новые формулы взамен старых, проверяя не изменился ли их формат, перелинковывает связи на новые формулы и обрабатывает их.
В результате получаем в публикации новые формулы, обработанные в соответствии с новым pref-установками MT, размещенные на тех же местах, еще и обработанные.
Планирую реализовать эту идею в следующей версии MT-Script, которую надеюсь выставить скорее всего на выходные (если хватит сил и времени, но на следующей неделе уж точно).
Если есть замечания, пожалуйста, сообщите.
 
Ответ: Скрипт для размещения формул MathType в InDesign CS4

mvlad123 на первый взгляд все достаточно запутанно))), но думаю после нескольких раз руку набить можно и все будет тип-топ)))) Главное что появиться такая возможность. Сейчас у меня люди просто переформатируют формулы в ворде и экспортируют их еще раз, при этом периодически вылазят разные косяки. Надеюсь что технология реализованная тобой будет иметь меньше подводных камней.
 
Ответ: Скрипт для размещения формул MathType в InDesign CS4

В скрипте MT-Converter обнаружен досадный недочет. Он понимает формулы только до версии 6. А 6 и 6.5 - не распознаются и не обрабатываются. Структура WMF-файлов в этих версиях совершенно разная.
Скрипт исправлен и выложен в этом сообщении. Он преобразует любые формулы (EPS и WMF) версий от 5 до 6.5 включительно.
Прошу обратить ОСОБОЕ ВНИМАНИЕ на то, что в начале работы скрипта в диалоге идет запрос на применение символьного стиля к создаваемому тексту формул. Шрифт этого стиля ОБЯЗАТЕЛЬНО должен быть стандартным Windows-шрифтом (у меня, например, TimesNewRoman), ибо, если на этапе создания текста-заменителя формулы в InD не будет применен стандартный шрифт, то уже в Word-е MathType отказывается корректно обрабатывать текст формулы. Это связано, видимо, с передачей через Clipboard. Пока уточнением причины этого не занимался.
 

Вложения

Ответ: Скрипт для размещения формул MathType в InDesign CS4

На свой вопрос
1. Ширина формулы, полученной из mathtype (eps/none), при вставке в indesign больше, чем если открыть ее в illustrator, т.е. появляются лишние поля (за счет bounding box), которые отдаляют от символов формулы, например, запятую. Можно ли с этим бороться в самом mathtype?
получил ответ от DesignSoft.
Итак, эти поля называются PicturePadding и по умолчанию составляют 2 pt. Их можно полностью убрать, если задать значение HKEY_CURRENT_USER\Software\Design Science\DSTM6\Windows\PicturePadding как нуль (0). При этом в InDesign может казаться, что края формулы чуть-чуть "отгрызаны", однако в pdf выводится все корректно.
Может, кому-то это тоже будет полезно узнать.
 
Ответ: Скрипт для размещения формул MathType в InDesign CS4

Ух ты! Спасибо, очень интересно.

Не по теме:
Раз уж с ними общаетесь, попросите, чтобы пофиксили баг, который описан здесь в п. 1
 
Ответ: Скрипт для размещения формул MathType в InDesign CS4

На свой вопрос
1. Ширина формулы, полученной из mathtype (eps/none), при вставке в indesign больше, чем если открыть ее в illustrator, т.е. появляются лишние поля (за счет bounding box), которые отдаляют от символов формулы, например, запятую. Можно ли с этим бороться в самом mathtype?
получил ответ от DesignSoft.
Итак, эти поля называются PicturePadding и по умолчанию составляют 2 pt. Их можно полностью убрать, если задать значение HKEY_CURRENT_USER\Software\Design Science\DSTM6\Windows\PicturePadding как нуль (0). При этом в InDesign может казаться, что края формулы чуть-чуть "отгрызаны", однако в pdf выводится все корректно.
Может, кому-то это тоже будет полезно узнать.
Да, и базовая линия в текстовом eps пересчитывается тоже корректно в зависимости от PicturePadding.
 
Ответ: Скрипт для размещения формул MathType в InDesign CS4

eugene10901 сказал(а):
Да, и базовая линия в текстовом eps пересчитывается тоже корректно в зависимости от PicturePadding.
Т. е. получается, что это поля во все стороны (в том числе сверху и снизу), так?
 
Ответ: Скрипт для размещения формул MathType в InDesign CS4

Dresden сказал(а):
Т. е. получается, что это поля во все стороны (в том числе сверху и снизу), так?
Левое и правое поля при значении 0 указанного ключа реестра действительно становятся нулевыми, а сверху и снизу меньше, чем при стандартных 2 pt. Но в иллюстраторе они тоже есть и такие же (верхнее и нижнее) за счет, как я понимаю, параметров шрифта. А может, для того, чтобы baselinesfift, указываемое mathtyp'ом в eps/none, было целочисленным.

Dresden сказал(а):
Ух ты! Спасибо, очень интересно.

Не по теме:
Раз уж с ними общаетесь, попросите, чтобы пофиксили баг, который описан здесь в п. 1
Насчет <<</ns {cf sf} bdef>>> сообщу. По поводу кириллицы - наверное. так и предусмотрено разработчиком (через файл кодировки), если они используют только первые 255 символов шрифтов (как я понял).
 
Ответ: Скрипт для размещения формул MathType в InDesign CS4

Кстати, есть еще одно пожелание к разработчикам: сделать модуль пакетного форматирования формул. Например, у вас 2000 формул, и необходимо вдруг стало изменить шрифт основного текста и его размер в equation preferences. Применять к каждому файлу новые equation preferences и сохранять его... Цензурной лексикой не обойтись. Ну и конечно, обеспечить работу mathtype со всеми таблицами OT-PS шрифтов (это по моему вопросу номер 2).
 
Ответ: Скрипт для размещения формул MathType в InDesign CS4

eugene10901 сказал(а):
Кстати, есть еще одно пожелание к разработчикам: сделать модуль пакетного форматирования формул.
В смысле для Индизайна или отдельно лежащих eps с формулами? О, конечно, хорошо бы.
 
Ответ: Скрипт для размещения формул MathType в InDesign CS4

Dresden сказал(а):
В смысле для Индизайна или отдельно лежащих eps с формулами? О, конечно, хорошо бы.
Нет, не для ID, а для каталога .eps-файлов. Кстати, на AutoHotKey я сделал скрипт, который все eps каталога последовательно открывает в MathType, применяет последние использовавшиеся equation preferences к файлу и перезаписывает этот файл. Это, по сути, зацикленная имитация движений "мышки" при задании новых параметров для одной формулы. Я не занимаюсь версткой профессионально - это как хобби с пользой для близких людей. Вот сейчас делаю книгу 600 стр. с химическими и математическими формулами. При моем подходе все eps мат. формул лежат в одной директории, хим. структурных формул (рисуются в ChemBioDraw) - в другой, растр - в третьей, иллюстрации - четвертой и т.п. Для автоматизации создания этой книги написан целый пакет скриптов и меню для ID. Практически все, кроме ввода текста, ID делает за меня.
 
Ответ: Скрипт для размещения формул MathType в InDesign CS4

В принципе, у меня осталась одна проблема по MathType - это то, что приходиться набирать формулы со смесью, например Newton, и Symbol шрифтов: ведь и по тексту книги те же символы и греческие буквы я вынужден брать из шрифта Symbol для полной гармонии :). При этом фактические размеры этих двух шрифтов, пусть и не значительно, но различаются. И еще вопрос по ChembioDraw - http://forum.rudtp.ru/showthread.php?t=41548
 
Статус
Закрыто для дальнейших ответов.