Как открыть odg в visio

Файл с расширением ODG – какая программа может открыть

Как открыть odg в visio

ODG – это документ векторной графики, созданный в OpenDocument, формате файлов, созданном как «бесплатная» альтернатива проприетарным форматам Microsoft Office, с которыми можно работать, не прибегая к коммерческому программному обеспечению. Самым популярным программным обеспечением для просмотра, редактирования и создания документов такого типа является LibreOffice, широко известный офисный пакет с открытым исходным кодом, совместимый со всеми основными операционными системами. Но, есть и другие доступные решения.

Поэтому, если вы хотите узнать больше, я предлагаю вам продолжить чтение этого руководства. В следующих строках вы найдете наиболее распространенные инструменты, используемыми для открытия и редактирования файлов ODG, и инструкции по их использованию.

Программа для открытия ODG

Как открыть ODG файлы с помощью LibreOffice

Как я уже говорил в начале руководства, наиболее популярными программами для открытия ODG-файлов являются OpenOffice и LibreOffice: вторая родилась из «ребра» первой, но я рекомендую её из-за функций, которые она предлагает, и того факта, что её развитие продолжается быстрее.

LibreOffice (а также OpenOffice) – это известный продукт с открытым исходным кодом, полностью бесплатный и совместимый с Windows, macOS и Linux. Я подчеркиваю, что большинство считает его лучшей бесплатной альтернативой Microsoft Office.

Чтобы использовать его, вы должны сначала загрузить программное обеспечение на свой компьютер. Итак, перейдите на веб-сайт LibreOffice, установите параметры загрузки и кликните по ссылке вида LibreOffice_x.x.x_Win_xxx.msi.

Как открыть odg в visio

Как открыть odg в visio

В качестве альтернативы, если вы уже открыли какой-либо файл в LibreOffice, щелкните меню Файл, расположенное в левом верхнем углу, выберите элемент Открыть и действуйте так же, как я указал выше.

Кроме того, учитывая, что LibreOffice установлен в качестве программы по умолчанию для открытия этого типа документов, вы также сможете открывать файлы ODG по двойному щелчку. Если нет, вы можете исправить это, следуя инструкциям, которые я предоставил вам в моем руководстве о том, как изменить программу по умолчанию.

Через несколько мгновений будет запущено приложение, работающее с файлами ODG. При желании вы можете изменить его, используя инструменты в верхней части окна программы и на боковой панели, расположенной слева. Например, вы можете добавлять рисунки, изменять форматирование текста и многое другое.

Если вы внесли изменения в свой документ и хотите сохранить их, нажмите на меню Файл в левом верхнем углу, выберите элемент Сохранить и всё готово (или нажмите комбинацию клавиш Ctrl + S ). Если вы хотите сохранить изменения, создав новый документ, вместо этого выберите опцию Сохранить как и укажите имя, которое вы хотите назначить файлу, и место, где вы хотите его сохранить, через открывшееся новое окно.

Как открыть ODG файлы с помощью Word

В дополнение к тому, как я уже указывал в предыдущих строках, вы можете открывать ODG-файлы с помощью Word, известной коммерческой программы для обработки текстов, которую можно использовать как в операционных системах Windows, так и в macOS.

Если Word уже установлен на вашем компьютере, запустите его, выбрав соответствующую ссылку в меню Пуск. В противном случае сначала загрузите и установите программу.

Как открыть odg в visio

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

После открытия файл также можно изменить его с помощью инструментов вверху, на разных вкладках. Например, вы можете редактировать тексты и их форматирование, вставлять изображения, рисунки и так далее. Если вы хотите сохранить внесенные изменения, щелкните меню «Файл» в левом верхнем углу, выберите пункт «Сохранить» и нажмите кнопку Да (или воспользуйтесь комбинацией Ctrl + S ).

Как открыть ODG файлы онлайн

По логике, должна быть возможность открывать файлы ODG онлайн с помощью таких служб, как Word Online, веб-версия известной программы обработки текста, включенной в пакет Office, и других подобных решений (например, документов Google). Но, к сожалению, это не так: рассматриваемые сервисы, по сути, не поддерживают открытие нужных вам ODG-файлов.

Чтобы обойти это, вы можете положиться на PDF24 Tools, бесплатный онлайн-сервис, работающий из любого браузера и простой в использовании, который, как следует из названия, предназначен, в первую очередь, для просмотра PDF-файлов, но также позволяет просматривать различные форматы файлов, включая ODG.

Обратите внимание, что для его использования регистрация не требуется и что все документы, загруженные в службу, удаляются с серверов компании в течение короткого времени.

Чтобы использовать его в своих целях, вам нужно зайти на рабочую страницу PDF24 Tools и перетащить файл ODG, который вы хотите открыть, в окно браузера. Также можно щелкнуть ссылку Выбрать файл и выбрать «вручную» документ. Если файл находится на облачном диске Google или DropBox, вы можете загрузить его прямо оттуда, выбрав соответствующие значки.

Мобильные приложения для открытия ODG

У вас нет компьютера под рукой и вы ищите приложение для открытия файлов ODG со смартфона или планшета? Вы легко можете найти подходящий вариант.

OOReader (Android / iOS)

OOReader – это бесплатное приложение, которое делает одно, но делает это замечательно: оно позволяет вам просматривать (но не редактировать) все файлы LibreOffice. Оно доступно как для Android, так и для iOS, и очень просто в использовании.

Чтобы использовать его, загрузите его из Play Google или из App Store, нажмите кнопку Установить/получить и, если вы используете iOS, авторизуйте загрузку с помощью Face ID, Touch ID или пароля учетной записи Apple.

Как открыть odg в visio

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

AndrOpen Office (Android)

Если вы используете устройство Android, вы также можете попробовать AndrOpen Office, – бесплатное приложение, которое включает в себя функции OpenOffice, офисного пакета с открытым исходным кодом, «близкого родственника» LibreOffice. К сожалению, его пользовательский интерфейс не оптимизирован должным образом для сенсорных устройств.

Как открыть odg в visio

Разрешите приложению доступ к мультимедийному содержимому на устройстве, затем выберите элемент «Открыть», расположенный внизу, укажите место, где находится файл ODG, который вы хотите открыть, и выберите этот элемент.

После этого ваш документ в формате ODG будет открыт в приложении, и вы сможете просмотреть его (и, возможно, даже изменить) через редактор AndrOpen Office. Если при этом вас попросят загрузить языковой пакет, вы можете с этим согласиться, чтобы получить локализованный интерфейс.

Источник

Импорт и вставка графических файлов в документы Visio

В Visio можно работать с чертежами AutoCAD, рисунками, картинками и другими графическими файлами двумя способами: вы можете импортировать их, чтобы создать документ Visio, или вставить в существующий документ.

Импорт графического файла для создания нового документа Visio

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

Поддерживаются следующие форматы файлов:

Сжатый расширенный метафайл (.emz)

Расширенный метафайл (*.emf)

Метафайл Windows (.wmf)

Примечание: Форматы файлов могут незначительно отличаться в зависимости от языковых версий. При импорте файлов, созданных в разных языковых версиях, результаты могут быть другими.

На вкладке Файл нажмите кнопку Открыть и перейдите к расположению файла, который вы хотите импортировать.

В поле Тип файлов выберите формат файла.

Если вы не видите в списке нужный формат, в Visio нет для него фильтра файлов. Попробуйте сохранить документ в том формате, который можно открыть в Visio.

Выберите файл и нажмите кнопку Открыть.

Вставка графического файла в существующий документ Visio

Вы можете вставлять чертежи AutoCAD, рисунки и картинки в существующие документы Visio, используя команды на вкладке Вставка.

Вставка чертежа AutoCAD

На вкладке Вставка нажмите кнопку Чертеж САПР.

Выберите файл чертежа и нажмите кнопку Открыть.

Чтобы принять параметры чертежа, заданные по умолчанию, нажмите кнопку ОК.

Примечание: Параметры, заданные по умолчанию, обеспечивают оптимальные результаты при вставке чертежа. Не рекомендуется изменять их без определенных целей.

При вставке чертежа AutoCAD в формате DWG или DXF используется последнее сохраненное пространственное представление. Чертеж можно сохранить в модельном пространстве или в пространстве листа.

Модельное пространство — основное рабочее пространство, в котором в системах автоматического проектирования создаются чертежи.

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

На следующем рисунке показан чертеж DWG, сохраненный в пространстве листа.

Как открыть odg в visio

Документ содержит два прямоугольных представления. Окно просмотра — это окно трехмерного чертежа САПР. Каждый из них можно настроить на разные масштабы или угол.

Вставка картинки, рисунка или клипа

На вкладке Вставка нажмите кнопку Рисунки или Изображения из Интернета.

Найдите нужный файл, выберите его и нажмите Открыть.

Совет: Графические файлы также можно открыть с помощью вкладки Файл. На вкладке Файл нажмите кнопку Открыть. Перейдите к папке, в которой хранится графический файл, и выберите его формат в списке Тип файла. Выберите файл и нажмите кнопку Открыть. Большинство файлов, которые импортируются в документы Visio как изображения, отображаются как метафайлы. Однако файлы точечных рисунков, например DIB, BMP, PCX и т. д., остаются точечными рисунками.

Импорт графического файла для создания нового документа Visio

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

Поддерживаются следующие форматы файлов:

Сжатый расширенный метафайл (.emz)

Расширенный метафайл (*.emf)

Метафайл Windows (.wmf)

Примечание: Форматы файлов могут немного отличаться в зависимости от языковой версии. При импорте файлов, созданных в разных языковых версиях, результаты могут быть другими.

На вкладке Файл выберите команду Открыть.

В поле Тип файлов выберите формат файла.

Если вы не видите в списке нужный формат, в Visio нет для него фильтра файлов. Попробуйте сохранить документ в том формате, который можно открыть в Visio.

Выберите файл и нажмите кнопку Открыть.

Вставка графического файла в существующий документ Visio

Вы можете вставлять чертежи AutoCAD, рисунки и картинки в существующие документы Visio, используя команды в меню Вставка.

Вставка чертежа AutoCAD

В меню Вставка щелкните Чертеж САПР.

Выберите файл чертежа и нажмите кнопку Открыть.

Чтобы принять параметры чертежа, заданные по умолчанию, нажмите кнопку ОК.

Примечание: Параметры, заданные по умолчанию, обеспечивают оптимальные результаты при вставке чертежа. Не рекомендуется изменять их без определенных целей.

При вставке чертежа AutoCAD в формате DWG или DXF используется последнее сохраненное пространственное представление. Чертеж можно сохранить в модельном пространстве или в пространстве листа.

Модельное пространство — основное рабочее пространство, в котором в системах автоматического проектирования создаются чертежи.

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

На следующем рисунке показан чертеж DWG, сохраненный в пространстве листа.

Как открыть odg в visio

Документ содержит два прямоугольных представления. Окно просмотра — это окно трехмерного чертежа САПР. Каждый из них можно настроить на разные масштабы или угол.

Вставка рисунка из графического файла

На вкладке Вставить нажмите кнопку Рисунок.

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

Совет: Графические файлы также можно открыть с помощью вкладки Файл. На вкладке Файл нажмите кнопку Открыть. В списке Тип файла выберите формат графического файла, а затем найдите нужный файл. Нажмите кнопку Открыть. Большинство файлов, которые импортируются в документы Visio как изображения, отображаются как метафайлы. Однако файлы точечных рисунков, например DIB, BMP, PCX и т. д., остаются точечными рисунками.

Вставка картинки

На вкладке Вставка нажмите кнопку Коллекция картинок.

В области задач Картинки введите в поле поиска слово или фразу, описывающие нужную картинку.

Нажмите кнопку Перейти.

Для поиска коллекций картинок и изображений из Интернета используется Bing. Чтобы не нарушать авторские права пользуйтесь фильтром по лицензии в Bing: он поможет выбрать изображения, которые можно использовать.

В списке результатов поиска щелкните картинку, чтобы вставить ее.

Импорт графического файла для создания нового документа Visio

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

Поддерживаются следующие форматы файлов:

Сжатый расширенный метафайл (.emz)

Расширенный метафайл (*.emf)

Метафайл Windows (.wmf)

Примечание: Форматы файлов могут незначительно отличаться в зависимости от языковых версий. При импорте файлов, созданных в разных языковых версиях, результаты могут быть другими.

В меню Файл выберите команду Открыть.

В поле Тип файлов выберите формат файла.

Если вы не видите в списке нужный формат, в Visio нет для него фильтра файлов. Попробуйте сохранить документ в том формате, который можно открыть в Visio.

Выберите файл и нажмите кнопку Открыть.

Вставка графического файла в существующий документ Visio

Вы можете вставлять чертежи AutoCAD, рисунки и картинки в существующие документы Visio, используя команды в меню Вставка.

Вставка чертежа AutoCAD

В меню Вставка щелкните Чертеж САПР.

Выберите файл чертежа и нажмите кнопку Открыть.

Чтобы принять параметры чертежа, заданные по умолчанию, нажмите кнопку ОК.

Примечание: Параметры, заданные по умолчанию, обеспечивают оптимальные результаты при вставке чертежа. Не рекомендуется изменять их без определенных целей.

При вставке чертежа AutoCAD в формате DWG или DXF используется последнее сохраненное пространственное представление. Чертеж можно сохранить в модельном пространстве или в пространстве листа.

Модельное пространство — основное рабочее пространство, в котором в системах автоматического проектирования создаются чертежи.

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

На следующем рисунке показан чертеж DWG, сохраненный в пространстве листа.

Как открыть odg в visio

Документ содержит два прямоугольных представления. Окно просмотра — это окно трехмерного чертежа САПР. Каждый из них можно настроить на разные масштабы или угол.

Вставка рисунка из графического файла

В меню Вставка наведите курсор на поле Рисунок и выберите вариант Из файла.

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

Совет: Графические файлы также можно открыть с помощью меню Файл. В меню Файл выберите команду Открыть. В списке Тип файла выберите формат графического файла, а затем найдите нужный файл. Нажмите кнопку Открыть. Большинство файлов, которые импортируются в документы Visio как изображения, отображаются как метафайлы. Однако файлы точечных рисунков, например DIB, BMP, PCX и т. д., остаются точечными рисунками.

Вставка картинки

В меню Вставка наведите указатель на поле Рисунок и выберите вариант Картинки.

В области задач Картинки введите в поле поиска слово или фразу, описывающие нужную картинку.

Нажмите кнопку Перейти.

Для поиска коллекций картинок и изображений из Интернета используется Bing. Чтобы не нарушать авторские права пользуйтесь фильтром по лицензии в Bing: он поможет выбрать изображения, которые можно использовать.

В списке результатов поиска щелкните картинку, чтобы вставить ее.

Источник

Файл формата ODG открывается специальными программами. Чтобы открыть данный формат, скачайте одну из предложенных программ.

Чем открыть файл в формате ODG

ODG – это формат изображений, макетов, схем, эскизов и других графических элементов программного пакета OpenOffice. Также, ODG является одним из наиболее распространённых расширений для хранения файлов с векторной графикой.

Где встречается формат?

Формат был создан как разновидность общепринятого стандарта ODF. Это расширение представляет группу открытых форматов для файлов офисных документов и графических изображений. Главной целью создания таких расширений было свободное распространение документов без необходимости покупки специальных программ для их открытия.

ODG можно встретить в LibreOffice – это программный пакет, который поддерживает кроссплатформенность и позволяет бесплатно создавать, редактировать и распространять офисные документы. ODG является стандартным расширением для работы с растровой или векторной графикой в этой программе.

Структура файла

Содержимое изображения ODG записывается в файл с помощью языка разметки XML. В этой же форме и хранятся данные. Для просмотра содержимого объект можно открыть в блокноте или же в Visual Studio – среде для разработки ПО. Все ресурсы документа архивируются и, при необходимости, все заголовки, ресурсы и разметку можно посмотреть с помощью архиватора 7Zip.

Программы для открытия ODG

Если файл ODG не открывается с помощью двойного щелчка, в меню объекта следует вручную выбрать программу, с помощью которой можно просмотреть содержимое. Это может быть любой графический редактор или программа для создания документации.

Конвертация

Чтобы передавать графику ODG на разные устройства без необходимости установки специальных приложений, можно конвертировать формат в PDF. Это можно сделать с помощью онлайн-конвертеров или десктопных программ. PDF сохранит целостность первоначального документа и позволит просматривать его на любом гаджете.

Как открыть odg в visio

Рисунок, сохраняемый при помощи спецификации OASIS OpenDocument. Содержит векторную графику, которая определяет изображение при помощи точек, линий и кривых. Хранится при помощи форматирования XML. Обычно применяется для логотипов, иллюстраций и других чертежей.

OpenOffice.org была одним из первых основных комплектов офисной работы, принявших спецификацию OpenDocument. StarOffice Draw — предшественник OpenOffice.org Draw — тоже поддерживал файлы ODG.

Чем открыть файл в формате ODG (OpenDocument Graphic File)

Источник

Программное управление форматами файлов Visio

Узнайте, как в Visual Studio 2012 создать решение для чтения пакетов с новым форматом файлов, используемым в Visio 2013, выбора частей в пакете, изменения данных в части и добавления новых частей в пакет.

Основные сведения об управлении форматами файлов Visio

Приложения Visio предыдущих версий сохраняли файлы в защищенном двоичном формате (VSD) или в однодокументном формате XML-данных документа Visio (VDX). В Visio 2013 появился новый формат файлов (VSDX), который основан на XML и технологии архивирования ZIP. Как и в предыдущих версиях Visio, файлы сохраняются в одном контейнере. В отличие от файлов, сохраненных в прежних версиях Visio, файлы нового формата можно открывать, читать, обновлять, изменять и создавать без автоматизации приложения Visio 2013. Разработчики, которые умеют управлять XML или работать с пространством имен System.IO.Packaging, могут быстро приступить к программному управлению файлами нового формата. Разработчики, которые уже работали с форматом XML-данных документа Visio в предыдущих версиях приложения, обнаружат, что многие структуры этого формата перенесены в новый формат.

В примерах кода в этой статье предполагается, что у вас есть элементарное понимание классов в пространствах имен System.Xml.Linq и System.IO.Packaging. > В этой статье также предполагается, что вы знаете основные понятия и терминологию Open Packaging Conventions. Вы должны быть знакомы с основными понятиями о пакетах, частях документов или частях пакетов, а также о связях. Дополнительные сведения см. в статье OPC: новый стандарт упаковки данных. > В коде показано, как создавать запросы LINQ для выбора XML. В большей части примеров кода для создания запросов LINQ используется синтаксис запросов. При необходимости вы можете изменить любой из имеющихся в коде запросов LINQ, используя синтаксис методов LINQ. Дополнительные сведения о синтаксисе запросов и синтаксисе методов LINQ см. в статье Синтаксис запросов и синтаксис методов в LINQ (C#)> В табл. 1 перечислены основные темы, с которыми вам необходимо ознакомиться, прежде чем вы приступите к работе с данной статьей.

Табл. 1. Основные понятия, необходимые для управления форматом файлов Visio 2013

Название статьиОписание
Общие сведения о формате файлов Visio (VSDX)В этом кратком обзоре описаны некоторые основные компоненты формата файлов Visio 2013. В статье рассказывается о соглашениях Open Packaging Conventions (OPC), так как они применяются в формате файлов Visio 2013. Кроме того, в статье перечислен ряд отличий формата файлов Visio 2013 и предыдущего формата файлов XML-данных документа Visio (VDX).
OPC: новый стандарт упаковки данныхВ этой статье MSDN Magazine описаны соглашения Open Packaging Conventions в виде основных понятий.
Основные понятия Open Packaging Conventions
Общие сведения о форматах файлов Office (2007) Open XML
В этих двух статьях рассказывается, каким образом соглашения Open Packaging Conventions используются в файлах Microsoft Office. В статьях описано, как работают связи в пакете, и приведены примеры кода.

Создание VSDX-файла и решения Visual Studio

Прежде чем приступить к действиям, описанным в этой статье, вам потребуется создать файл Visio 2013, который вы будете открывать и которым будете управлять. Документ, используемый в примерах кода в этой статье, содержит одну страницу с двумя соединенными фигурами, при этом одна из фигур представляет собой фигуру «Начало/конец» из шаблона «Простая блок-схема».

Создайте файл Visio 2013, выполнив указанные ниже действия. Вы будете использовать его на следующих этапах изучения этой статьи.

Создание файла в Visio 2013

Откройте Visio 2013.

Создайте документ на основе шаблона «Простая блок-схема». Для этого щелкните КАТЕГОРИИ, Блок-схема, Простая блок-схема, Создать.

В окне Фигуры перетащите фигуру Начало/конец на холст.

Выберите новую фигуру «Начало/конец» на полотне и введите текст Begin Process (Начать процесс).

В окне Фигуры перетащите фигуру Процесс на холст.

Выберите новую фигуру «Процесс» на полотне и введите текст Perform some task (Выполнить задачу).

В контекстном меню фигуры «Начало/конец» выберите пункт Добавление на страницу одной соединительной линии и нарисуйте соединительную линию между фигурами «Начало/конец» и «Процесс» на холсте, как показано на рис. 1.

Рис. 1. Простой документ Visio 2013

Как открыть odg в visio

Сохраните файл на рабочем столе в формате VSDX. Для этого щелкните Файл, Сохранить как, Компьютер, Рабочий стол.

В диалоговом окне Сохранить как в поле Имя файла введите Visio Package, в списке Тип файла выберите пункт Документ Visio (*.vsdx) и нажмите кнопку Сохранить.

Закройте файл, а затем закройте Visio 2013.

Иногда Visio успешно открывает файл, даже если в файле имеются проблемы. Чтобы приложение Visio сообщало вам о проблемах с файлами при тестировании решений, которые управляют файлами Visio на уровне пакета файлов, включите функцию предупреждений об открытии файлов. > Чтобы включить функцию предупреждений об открытии файлов в Visio 2013, щелкните Файл, Параметры, Дополнительно. В разделе Сохранение и открытие щелкните Предупреждать об открытии файлов.

В этих процедурах для управления файлом Visio Package.vsdx используется консольное приложение Windows. Создайте и настройте консольное приложение Windows в Visual Studio 2012, выполнив указанные ниже действия.

Создание решения в Visual Studio 2012

В меню Файл щелкните Создать, Проект.

В диалоговом окне Создать проект разверните пункт Visual C# или Visual Basic и щелкните Windows, Консольное приложение.

В поле Имя введите VisioFileAccessor, выберите расположение для проекта и нажмите кнопку OK.

В меню Проект выберите пункт Добавить ссылку.

В диалоговом окне Менеджер ссылок в разделе Сборки щелкните Платформа и добавьте ссылку на компоненты System.Xml и WindowsBase.

В файле Program.cs или Module1.vb для проекта добавьте следующие директивы using (инструкции Imports в Visual Basic):

Кроме того, в файле Program.cs или Module1.vb file перед концом метода Main класса Program (Module1 в Visual Basic) добавьте указанный ниже код, который приостанавливает выполнение консольного приложения, пока пользователь не нажмет клавишу.

Открытие файла Visio 2013 как пакета

Чтобы можно было управлять какими-либо данными в файле, необходимо сначала открыть файл в объекте Package, который содержится в пространстве имен System.IO.Packaging. Объект Package представляет весь файл Visio. Он предоставляет доступ к элементам, с помощью которых можно выбирать отдельные части документа в пакете файла. В частности, класс Package предоставляет доступ к статическому методу Open(String, FileMode, FileAccess), с помощью которого можно открывать файл как пакет. Кроме того, он предоставляет доступ к методу Close(), с помощью которого можно закрыть пакет после работы с ним.

Для открытия файла Visio в объекте Package рекомендуется использовать блок using, чтобы не пришлось явно закрывать пакет файла по завершении работы с ним. Кроме того, можно явно вызвать метод Package.Close в блоке finally конструкции try/catch/finally.

Используя указанный ниже код, можно получить полный путь к файлу Visio Package.vsdx с помощью объекта FileInfo, передать этот путь в качестве аргумента в метод Package.Open и возвратить объект Package в вызывающий код.

Открытие VSDX-файла в виде пакета

После метода Main в классе Program (или Module1 в Visual Basic) добавьте указанный ниже код.

В методе Main класса Program (или Module1 в Visual Basic) добавьте указанный ниже код.

Выбор и чтение частей пакета из пакета

С помощью кода в указанной ниже процедуре можно получить объект PackagePartCollection из объекта Package в виде коллекции, выполнить итерацию объектов PackagePart в этой коллекции, а затем записать универсальный код ресурса (URI) и тип контента каждого объекта PackagePart в консоль.

Выполнение итерации частей пакета в пакете

После метода OpenPackage в классе Program (или Module1 в Visual Basic) добавьте указанный ниже код.

Добавьте следующий код в блок using в методе Main класса Program (блок Using метода Main в модуле Module1 в Visual Basic):

Выполните отладку решения, нажав клавишу F5. По завершении работы программы выйдите из нее, нажав любую клавишу.

Консольное приложение создает примерно следующие выходные данные (для краткости часть выходных данных опущена):

Package part URI: /docProps/app.xml

Content type: application/vnd.openxmlformats-officedocument.extended-properties+xml

Package part URI: /docProps/core.xml

Content type: application/vnd.openxmlformats-officedocument.core-properties+xml

Package part URI: /docProps/custom.xml

Content type: application/vnd.openxmlformats-officedocument.custom-properties+xml

Package part URI: /docProps/thumbnail.emv

Content type: image/x-emf

Package part URI: /visio/document.xml

Content type: application/vnd.ms-visio.drawing.main+xml

Package part URI: /visio/_rels/document.xml.rels

Content type: application/vnd.openxmlformats-package.relationships+xml

Package part URI: /_rels/.rels

Content type: application/vnd.openxmlformats-package.relationships+xml

Press any key to continue …

Обычно требуется выбрать один объект PackagePart, не выполняя итерацию всех таких объектов. Вы можете получить объект PackagePart из объекта Package, используя его связь с объектом Package или другим объектом PackagePart. В формате файлов Visio 2013 связь представляет собой дискретный объект, который описывает, каким образом часть документа связана с пакетом файла или как две части документа связаны друг с другом. Например, сам пакет файла Visio 2013 имеет связь со своей частью Visio Document, а часть Visio Document имеет связь с частью Windows. Эти связи представлены как экземпляры классов PackageRelationship или PackageRelationshipCollection.

Класс Package предоставляет доступ к нескольким методам, которые используются для получения связей и содержатся в нем в виде объектов PackageRelationship или PackageRelationshipCollection. С помощью метода GetRelationshipsByType(String) вы можете создать экземпляр объекта PackageRelationshipCollection, содержащий объекты PackageRelationship одного определенного типа. Безусловно, чтобы использовать метод Package.GetRelationshipsByType, вы должны знать, какой тип связи необходим вам. Типы связей представляют собой строки в формате пространства имен XML. Например, тип связи части Visio Document — https://schemas.microsoft.com/visio/2010/relationships/document.

После того как вы получите сведения о связи объекта PackagePart с объектом Package или другим объектом PackagePart (то есть когда у вас будет объект PackageRelationship, который ссылается на необходимый вам объект PackagePart), вы сможете использовать эту связь для получения универсального кода ресурса (URI) этого объекта PackagePart. После этого можно передать универсальный код ресурса (URI) в метод Package.GetPart, чтобы возвратить объект PackagePart.

Кроме того, вы можете получить ссылку на определенный объект PackagePart, используя только метод Package.GetPart и универсальный код ресурса (URI) объекта PackagePart. В этом случае можно исключить этап получения связей части пакета. Некоторые части пакета в пакете файла Visio можно сохранять в расположения, отличные от расположений, используемых по умолчанию, в пакете. Не следует рассчитывать на то, что часть пакета всегда будет расположена в одном и том же универсальном коде ресурса (URI) для каждого файла. > Вместо этого для доступа к отдельным объектам PackagePart рекомендуется использовать связи.

Выполните указанные ниже действия, чтобы получить объект PackagePart (часть Visio Document), используя объект PackageRelationship из объекта Package, который ссылается на часть.

Выбор определенной части пакета в пакете с использованием связи

После метода IteratePackageParts в классе Program (или Module1 в Visual Basic) добавьте указанный ниже метод.

Замените код в блоке using в методе Main класса Program (блок Using метода Main в модуле Module1 в Visual Basic) указанным ниже кодом.

Как было сказано выше, вы также можете получать объекты PackagePart, используя их связи с другими объектами PackagePart. Это важно, так как в документах Visio любой сложности у большинства объектов PackagePart нет связи с объектом Package. Например, у отдельной части Page Content в пакете файла (то есть /visio/pages/page1.xml) имеется связь с частью Page Index (то есть /visio/pages/pages.xml), но не с самим пакетом файла. Если у вас нет точного универсального кода ресурса (URI) отдельной страницы в пакете, вы можете использовать ее связь с частью Page Index, чтобы получить ссылку на нее.

Класс PackagePart предоставляет доступ к методу GetRelationshipsByType(String), который можно использовать для возврата объекта PackageRelationshipCollection, содержащего объект PackageRelationship только одного типа. Если у вас есть объект PackageRelationshipCollection, вы можете выбрать необходимый вам объект PackageRelationship из коллекции и сослаться на объект PackagePart.

С помощью указанного ниже кода можно получить объект PackagePart из объекта Package, используя его связь с другим объектом PackagePart (получив объект PackageRelationship из последнего).

Выбор определенной части пакета с использованием ее связи с другой частью пакета

После метода GetPackagePart в классе Program (или Module1 в Visual Basic) добавьте указанный ниже метод перегрузки.

Добавьте указанный ниже код в блок using в методе Main класса Program (блок Using метода Main в модуле Module1 в Visual Basic) после кода, указанного в предыдущей процедуре. (Не удаляйте код, который вы добавили в предыдущей процедуре.)

Чтобы можно было вносить изменения в XML, включенный в часть документа, необходимо сначала загрузить документ XML в объект, который позволяет читать XML c помощью классов XDocument или XmlDocument. Оба эти класса предоставляют доступ к методам, используемым для решения таких задач, как выбор элементов XML, содержащихся в документах XML, создание, чтение и запись атрибутов, а также вставка новых элементов XML в документ.

С помощью класса XDocument можно создавать запросы к XML, используя LINQ. Используя LINQ, можно легко выбирать отдельные элементы из документа XML, создавая запросы, а не выполняя итерацию всех элементов в коллекции и не проверяя их, чтобы выбрать необходимые элементы. По этим причинам в процедурах, описанных ниже в этой статье, для работы с XML используется класс XDocument и другие классы пространства имен System.Xml.Linq.

С помощью указанных ниже процедур можно открыть объект PackagePart как документ XML в объекте XDocument.

Чтение XML в части пакета

После последней перегрузки для метода GetPackagePart в классе Program (или Module1 в Visual Basic) добавьте указанный ниже метод.

Добавьте указанный ниже код в блок using в методе Main класса Program (блок Using метода Main в модуле Module1 в Visual Basic) после кода, указанного в предыдущей процедуре.

Выбор и изменение данных XML в части пакета

После загрузки части документа в объект XDocument для выбора элементов XML и внесения изменений в документ XML можно использовать LINQ. Вы можете изменять данные XML, добавлять или удалять данные, а затем сохранять документ XML обратно в часть документа.

Самая распространенная задача управления форматом файлов Visio — выбор определенных элементов или коллекций элементов XML в документе. Пространство имен System.Xml.Linq включает класс XElement, который представляет элемент XML. С помощью класса XElement можно на детальном уровне получить доступ к данным, содержащимся в файле Visio, от отдельных элементов Shape до элементов ValidationRule (в качестве примера).

С помощью указанного ниже кода можно выбрать элементы Shape из объекта XDocument (содержащего часть Page Contents), а затем выбрать определенный элемент Shape.

Выбор определенного элемента в части пакета

После метода GetXMLFromPart в классе Program (или Module1 в Visual Basic) добавьте указанный ниже метод.

После метода GetXElementsByName в классе Program (или Module1 в Visual Basic), описанного на предыдущем этапе, добавьте указанный ниже метод.

Добавьте указанный ниже код в блок using в методе Main класса Program (блок Using метода Main в модуле Module1 в Visual Basic) после кода, указанного в предыдущей процедуре.

После получения ссылки на объект XElement, содержащийся в объекте XDocument, вы можете управлять им, как и любыми другими данными XML, и, соответственно, изменять данные, содержащиеся в файле Visio. Например, если при открытии в Visio у какой-либо фигуры имеется текст, соответствующий элемент Shape будет содержать по крайней мере один элемент Text. Если вы измените значение этого элемента Text, то при просмотре файла в Visio у текст фигуры изменится.

Добавьте указанный ниже код в блок using в методе Main класса Program (блок Using метода Main в модуле Module1 в Visual Basic), чтобы изменить текст в фигуре Start/End (Начало/конец) с Begin process (Начать процесс) на Start process (Запустить процесс).

В предыдущем примере кода существующий текст фигуры и строка, используемая для его замены, содержат одинаковое количество символов. Кроме того, обратите внимание на то, что запрос LINQ изменяет значение последнего дочернего узла возвращаемого элемента (который в данном случае представляет собой текстовый узел). Это сделано, чтобы не допустить изменения параметров элемента cp, который представляет собой дочерний элемент элемента Text. > Если программно изменить текст фигуры путем перезаписи всех дочерних элементов элемента Text, это может привести к нестабильности файла. Как показано в примере выше, форматирование текста представлено элементами cp в элементе Text в файле. Определение форматирования хранится в родительском элементе Section. Если эти два элемента информации станут несогласованными, файл может вести себя непредсказуемо. Приложение Visio исправляет многие виды несогласованности, но лучше убедиться, что все изменения, внесенные программным способом, согласованы. В этом случае вы сможете контролировать поведение файла.

Когда вы вносите изменения в XML части документа, эти изменения хранятся только в памяти. Чтобы сохранить их в файл, необходимо сохранить XML обратно в часть документа.

В указанном ниже коде показано, как с помощью классов XmlWriter и XmlWriterSettings записать XML обратно в часть пакета. Несмотря на то что для сохранения XML обратно в часть можно использовать метод Save(), классы XmlWriter и XmlWriterSettings позволяют более тонко управлять выводом данных, в том числе указывать тип кодировки. Класс XDocument предоставляет доступ к методу WriteTo(XmlWriter), который берет объект XmlWriter и записывает XML обратно в поток.

С помощью указанных ниже действий можно сохранить XML из страницы Visio обратно в часть Page Contents.

Сохранение измененного XML обратно в пакет

После метода GetXElementByAttribute в классе Program (или Module1 в Visual Basic), описанного на предыдущем этапе, добавьте указанный ниже метод.

Добавьте указанный ниже код в блок using в методе Main класса Program (блок Using метода Main в модуле Module1 в Visual Basic) после кода, указанного в предыдущей процедуре.

Выполните отладку решения, нажав клавишу F5. По завершении работы программы выйдите из нее, нажав любую клавишу.

Откройте файл Visio Package.vsdx в Visio 2013.

Теперь фигура «Начало/конец» должна содержать текст Start process (Запустить процесс).

Пересчет данных в файле

При внесении некоторых изменений в данные в файле приложению Visio может потребоваться пересчитать документ при открытии файла. В Visio имеется большое количество логики для схем, особенно для связей фигур (то есть когда одна фигура зависит от другой) и соединения фигур. Если изменить какие-либо данные, которые используются в пользовательской логике, приложению Visio потребуется распространить изменения на все затронутые вычисляемые данные в файле.

Формат файла Visio 2013 включает пару методов, которые вы можете использовать для пересчета данных в файле. Существует три типа сценариев, которые необходимо учесть, принимая решение о том, необходимо ли выполнить пересчет в файле Visio, и о том, как сделать это.

Изменения данных не затрагивают другие значения в формате файла. Вам не нужно добавлять дополнительные инструкции в Visio для пересчета документа. Как было показано выше, вы можете часто изменять текст фигуры без необходимости пересчитывать документ.

Изменения данных ограничиваются изменением значений ячеек ShapeSheet в XML и при этом имеются другие значения ShapeSheet, зависящие от этих данных. В этом случае необходимо добавить инструкцию по обработке XML (используя класс XProcessingInstruction) в элемент Cell, который был изменен. Например, ячейка ThemeIndex для фигуры влияет на значения нескольких других ячеек ShapeSheet, содержащихся в фигуре. Если вы измените ячейку ThemeIndex в самом файле (например, элемент Cell со значением N, равным ThemeIndex), то для обновления зависимых значений вам придется добавить инструкцию по обработке в элемент Cell.

Изменения данных влияют на расположение соединительных линий или точек соединений. Вот еще одна ситуация: в данные ShapeSheet внесено много изменений, и вы хотите пересчитать весь документ с помощью одной инструкции (а не добавлять отдельные инструкции по обработке для каждого изменения). В этом случае вы можете дать приложению Visio указание пересчитать весь документ при открытии документа. Для этого добавьте свойство RecalcDocument в часть Custom File Properties (/docProps/custom.xml) пакета Visio. Пример сценария такого типа — изменение положения или размера фигур на связанной схеме.

Учтите, что это самый затратный вариант с точки рения производительности.

Выполните указанные ниже действия, чтобы вставить элемент Cell в элемент Shape, где из-за нового значения необходимо пересчитать другие элементы Cell в том же объекте Shape. Новый элемент Cell включает инструкцию по обработке в виде дочернего элемента. Это позволяет сообщить приложению Visio о том, что необходимо выполнить локальный пересчет.

Пересчет значений для одной фигуры

Замените код из двух предыдущих примеров (изменение текста фигуры и вызов метода SaveXDocumentToPart ) в блоке using в методе Main класса Program (в блоке Using метода Main в модуле Module1 в Visual Basic) указанным ниже кодом.

Выполните отладку решения, нажав клавишу F5. По завершении работы программы выйдите из нее, нажав любую клавишу.

Откройте файл Visio Package.vsdx в Visio 2013. Теперь у фигуры «Начало/конец» должен быть другой цвет заливки.

Цвет фигуры зависит от значения ячейки ThemeIndex: оно определяет активную тему, из которой фигура наследует параметры. В предыдущем примере фигура настроена так, чтобы наследовать параметры другой темы (ячейка ThemeIndex имеет значение 25). Если вы не используете инструкцию по обработке, цвет текста фигуры (который также зависит от значения ячейки ThemeIndex) не будет пересчитан. Цвет заливки фигуры изменится на белый, а текст будет по-прежнему белый и станет нечитаемым. Кроме того, если не использовать инструкцию по обработке, Visio может обновить фигуру позже, и файл будет в нестабильном состоянии, при котором значения параметров форматирования фигуры могут быть обновлены непредсказуемым образом.

Если вы изменяете данные в файле таким образом, что приложению Visio требуется пересчитать документ (например, изменяете положение связанной фигуры, из-за чего приложению Visio необходимо принудительно изменить маршруты соединительных линий), вам необходимо добавить инструкцию по пересчету в файл Visio. Чтобы создать инструкцию, добавьте элемент property, атрибут name которого имеет значение RecalcDocument, в XML в часть Custom File Properties пакета файла Visio. Рекомендуется проверить часть Custom File Properties и убедиться, что инструкция RecalcDocument еще не зарегистрирована в файле.

С помощью указанного ниже кода можно изменить значение ячейки PinY фигуры «Начало/конец» из предыдущих примеров. Этот код выбирает элемент Cell, который содержит данные ячейки PinY в виде объекта XElement, путем использования значения его атрибута N. Затем код добавляет инструкцию по пересчету в часть Custom File Properties файла Visio.

Пересчет всего документа, когда он открыт

После метода SaveXDocumentToPart в классе Program (или Module1 в Visual Basic), описанного на предыдущем этапе, добавьте указанный ниже метод.

После метода RecalcDocument в классе Program (или Module1 в Visual Basic), описанного на предыдущем этапе, добавьте указанный ниже метод.

Замените код из предыдущего примера в блоке using в методе Main класса Program (блок Using метода Main в модуле Module1 в Visual Basic) указанным ниже кодом.

Выполните отладку решения, нажав клавишу F5. По завершении работы программы выйдите из нее, нажав любую клавишу.

Откройте файл Visio Package.vsdx в Visio 2013.

Теперь фигура «Начало/конец» должна быть расположена в 2 дюймах от верхнего края схемы. Маршрут соединительной линии между фигурами «Начало/конец» и «Процесс» должен быть изменен согласно изменениям макета. Если не добавить свойство RecalcDocument в файл, положение фигуры изменится, а маршрут соединительной линии не будет изменен, и соединительная линия не будет вести к новому расположению фигуры.

Добавление новой части пакета в пакет

Один из самых распространенных сценариев изменения пакета файла — добавление новой части документа в пакет. Например, если вы хотите добавить страницу в документ Visio путем добавления контента в пакет, вам потребуется добавить часть Page Contents в пакет.

Процесс добавления новой части в пакет прост.

Создайте документ XML с данными для объекта PackagePart. Уделите особое внимание пространствам имен XML, управляющим схемой для определенного типа документа XML, который вы создаете.

Создайте файл, в котором будет содержаться XML, и сохраните его в расположение в объекте Package.

Создайте необходимые связи между новым объектом PackagePart и объектом Package или другими объектами PackagePart.

Обновите все существующие части, которые должны ссылаться на новую часть. Например, если вы добавляете новую часть Page Contents (новую страницу) в файл, вам также потребуется обновить часть Page Index (файл /visio/pages/pages.xml), чтобы она включала правильные сведения о новой странице.

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

Создание части пакета

После метода CheckForRecalc в классе Program (или Module1 в Visual Basic) из предыдущей процедуры добавьте указанный ниже метод.

После метода CreateCustomUI в классе Program (или Module1 в Visual Basic), описанного на предыдущем этапе, добавьте указанный ниже метод.

Замените весь код в блоке using в методе Main класса Program (блок Using метода Main в модуле Module1 в Visual Basic) указанным ниже кодом.

Выполните отладку решения, нажав клавишу F5. По завершении работы программы выйдите из нее, нажав любую клавишу.

Откройте файл Visio Package.vsdx в Visio 2013 и перейдите на вкладку CUSTOM (Настраиваемая).

При открытии файла в Visio 2013 настроенная лента выглядит, как показано на рис. 2.

Рис. 2. Вкладка Custom (Настраиваемая) на ленте Visio 2013

Как открыть odg в visio

Благодарности

Мы хотим поблагодарить Visio MVP Эла Эдланда (Al Edlund) за его вклад в создание примеров кода, изложенных в данной технической статье. Эл — признанный специалист по управлению форматами файлов Visio, в том числе форматом XML-данных документа Visio (VDX) и новым форматом файлов Visio (VSDX). Эл создал проекты, которые позволяют программным способом изучить форматы файлов Visio и показать их внутреннюю структуру.

Дополнительные сведения о том, как Эл работает с форматом файлов Visio, см. по ссылкам в разделе «Дополнительные ресурсы» ниже.

См. также

Видеоролик pkgVisio_pt1 на веб-сайте YouTube.

Видеоролик pkgVisio_pt2 на веб-сайте YouTube.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *