Формат координат Visio - PullRequest
4 голосов
/ 06 июля 2011

Я разрабатываю инструмент, который работает с диаграммами процессов.Мне нужно написать функцию экспорта для инструмента, которая будет сохранять текущий процесс в формате Visio VDX.

Я обнаружил, что Visio сохраняет координаты форм в неком легком для понимания формате.Например: PinX 1.476377952755906;PinY 9.448818897637793

Мой инструмент работает с фигурами и коннекторами в дискретной сети, где координаты начинаются с 0,0 и могут быть только целыми числами, равными или превышающими ноль.

Так что вопрос в том,как представить координаты Visio в файле VDX в более понятном формате, например, в миллиметрах.

Дан.

1 Ответ

4 голосов
/ 07 июля 2011

По умолчанию эти координаты в VDX - дюймы. Visio внутренне использует дюймы для единиц измерения.

Вы можете указать единицы измерения в явном виде. Например, чтобы установить ширину фигуры на 100 миллиметров:

<Width F="100mm">

Чтобы проверить это, я создал файл VDX и использовал миллиметры для формул как высоты, так и ширины, и могу подтвердить, что Visio 2007 правильно поймет, как читать и использовать эти единицы.

Вы можете заметить, что VDX, сгенерированный Visio, включает результат , но не формула . Например, с ячейкой PinY вы увидите ...

<PinY>3.309830932</PinY>

Visio не будет принимать единицы в значениях для результатов . Это означает, что вы не можете поместить «100 мм» внутри тега. Решение состоит в том, чтобы удалить значение результата и использовать атрибут F для формулы. Ниже приведен пример.

<PinY F="10mm"></PinY>
...