Способи оптимізації фігур в Visio.
При роботі з великими схемами, особливо при використанні великої кількості складових об'єктів, іноді починається уповільнення в роботі додатка і швидкого збільшення розміру файлу. Звичайно, це не критично, при наявності великого обсягу жорсткого диска, але що робити, якщо файл треба переслати поштою і взагалі, тільки так і працюєте. Тут зайвий мегабайт не потрібен. І працювати з таким додатком стає не комфортно.
Visio - об'єкти, це найчастіше, векторні об'єкти, кожен з яких носить із собою валізу зі своїми настройками. І якщо взяти окрему групу, то багаж у цієї групи буде не маленький. Так може в деяких випадках буде краще замінити цю групу одним векторний метафайли? Але ж тоді він буде позбавлений можливостей по редагуванню і функціональності. Деякі фігури, розташовані на кресленні, взагалі не піддаються редагуванню, але якщо "розібрати" ці фігури на складові, то можна помітити багато перекриттів і невидимих областей, а Visio, в силу своєї специфіки, все одно описує і обробляє всі ці невидимі області, витрачаючи машинний час. Звичайно, можна завжди сказати, що на швидких машинах цього не відбувається, але це не так.
На відміну від інших програм (AutoCAD, CorelDraw), Visio критичний до кількості накреслених фігур і при їх значному збільшенні, починає "пригальмовувати" і це відбувається не на 100 000 об'єктах, а набагато раніше.
Розглянемо приклад.
-
Створимо кілька файлів що містять 1 600 об'єктів:
- Файл з об'єктом, що складається з Visio-групи без використання майстра. Тобто просто 1 600 простих фігур (як простий фігури виступає квадрат з градієнтної заливкою, розмірами 10х10 мм).
- Файл з об'єктом, що складається з Visio-групи при використання майстра. Тобто 1 локальний майстер і 1 600 пов'язаним з ним фігур.
- Файл з об'єктом, взятий з першого пункту і вставлений як метафайл. Тобто 1 600 окремих метафайлів.
- Файл з об'єктом, взятий з першого пункту і вставлений як метафайл і використаний в якості майстра. Тобто 1 локальний майстер і 1 600 його метафайлів.
Як видно з графіка, при зростанні об'єктів в групі, розмір файлу з Visio-об'єктами починає швидко зростати, в той час як розмір з метафайлами практично не змінився (розглядаючи файли з майстрами). Це пов'язано з тим, що при перетворенні фігури в метафайл, у нього "відрізаються" накладається. І тому його розмір практично не залежить від змісту. А в Visio-групі виникають перекриття областей.
Якщо розглядати файли без використання майстра, то використання великої кількості метафайлів тільки збільшить розмір кінцевого файлу.
Тепер розглянемо вплив використання метафайлів на роботу програми.
При малих кількостях об'єктів, як Visio, так і метафайлів, продуктивність не змінюється. Тільки при роботі з понад 16 000 об'єктів стає очевидним розрив.
Розробники, для прискорення роботи програми, часто в трафаретах теж використовують метафайли. Майже всі фігури в Network Device, Internet Symbols, Telecom - це трафарети з векторними фігурами. Але іноді вони просто купують їх в такому вигляді.
Також не забувайте видаляти непотрібні майстри з локального трафарету. Якщо майстер має зв'язкові фігури на кресленні, то при його видаленні з'явиться попередження. Якщо немає, то це означає, що у майстра не було зв'язкових постатей, і він не використовувався і, отже, збільшував розмір файлу.
Використання векторних метафайлів не панацея, тільки в деяких випадках це може принести відчутну користь. Іноді уповільнення в роботі програми може бути пов'язано з використанням НЕ Visio трафаретів. Адже можна використовувати різні джерела, для отримання векторних фігур: векторні ClipArt's (колекції векторних зображень), з pdf-документів, шляхом попереднього перетворення, з fla-колекцій. І майже завжди в них занадто багато точок або об'єктів. У такому вигляді вони зазвичай не використовуються. Їх треба разгруппировать, цим перетворивши в Visio об'єкти, "почистити", видалити зайві об'єкти, згрупувати або перетворити в метафайл. Іноді, таким чином, можна збільшити швидкість обробки таких об'єктів на порядок.
Поради по роботі з програмою.
- Якщо необхідно розташувати один об'єкт по протилежному краю іншого, то найпростіше натиснути F8 і відзначити центрування по краю і галочку "Створити напрямну і прив'язати до неї фігури", а потім прив'язати другу фігуру, ніж самому створювати направляючу і намагатися поставити її до краю.
- Цей же спосіб можна використовувати для створення направляючих по всьому контуру фігури. Звичайно, можна і мишкою перетягнути з лінійок, але якщо контур розташований не на сітці. Тоді необхідно виділити цю постать. У цьому випадку навіть якщо буде заважати інша фігура, то програма все одно буде мати у своєму розпорядженні направляючу до тієї постаті, яка виділена, навіть якщо вона розташована не на сітці. Якщо в діалоговому вікні галочка затемнена, то можна включити на панелі інструментів прив'язку до маркерів фігури і накреслити лінію по діагоналі фігури і створити напрямну для неї.
- Якщо необхідно простір розділити на непарну кількість частин (для таблиці). Для цього простіше намалювати простий прямокутник, з "хорошими" розмірами, тобто з цілими розмірами (10х10, 20х20), без десятих (23,5х23,5) і розмножити принципом Х2. Тобто виділив 1, скопіював, виділив 2, знову скопіював, виділив 4 і т.д. Забираємо зайве і групуємо. Розтягуємо по простору і разгруппіровиваем. Виділяємо другу фігуру з краю і робимо вирівнювання зі створенням направляючої по лівому краю, далі наступну. Залишиться видалити фігури і залишити напрямні. Приблизно таким же способом можна використовувати лінії і розподіл фігур.
- Якщо необхідно редагувати одну сторінку за іншою, то щоб не перемикати постійно мишкою сторінки, простіше відкрити сторінку документа в новому вікні. Для цього треба в меню вибрати Правка> Перехід> Сторінка ... У діалоговому вікні вибрати другу сторінку документа і відзначити прапорець "Відкрити сторінку у новому вікні". Тепер між станицями буде переміщатися набагато простіше. Також можна для кожної з сторінок відкрити різні трафарети. І якщо просто закрити програму і потім відкрити файл, то така структура представлення сторінок збережеться.