Як зменшити розмір файлу autocad, якщо команда purge не допомагає

Як зменшити розмір файлу autocad, якщо команда purge не допомагає

Як зменшити розмір файлу autocad, якщо команда purge не допомагає

Досить часто отримую від замовників, підрядників і суміжників файли великих розмірів. Справа в тому, що надсилаються файли містять багато непотрібної інформації, яку забули видалити з файлу. Після елементарної чистки командою _purge (видаляє з бази даних креслення все невикористовувані об'єкти - шари, блоки, типи ліній, стилі тексту, розмірів та ін.) Розмір файлу може скоротитися в 2 рази. Іноді більше, іноді менше.

Але бувають випадки, коли _purge не дає результату.

Отримав файл від підрядника. Він скаржився, що не може його відправити через великого розміру, тому перекинув через dropbox. Розмір файлу дійсно мене здивував - 28Мб. Знаючи, що це за креслення, я розумів, що він не повинен бути такого розміру. Спочатку я подумав, що він його забув почистити командою _purge. Відкриваю. AutoCAD видає попередження вікно:

Як зменшити розмір файлу autocad, якщо команда purge не допомагає

Файл містить proxy-графіку. Натискаю «Закрити» і запускаю команду _purge. Purge показує, що креслення почищений перед відправкою:

Як зменшити розмір файлу autocad, якщо команда purge не допомагає

Відкриваю менеджер шарів, щоб перевірити, що немає відключених або заморожених шарів, в яких може бути заховано купа сміття. Перевіряю, їх немає.

Значить, вся справа в proxy-графіку. Будемо з нею працювати, а точніше позбавлятися від неї. Запускаю утиліту Олександра Рівіліса для розчленування proxy-об'єктів командою explodeallproxy. Чекаю, поки вона відпрацює і запускаю другу команду removeallproxy. яка видалить з креслення все proxy-об'єкти, які не вдалося розчленувати. Залежно від кількості proxy-графіки в кресленні, утиліта може працювати від декількох секунд до декількох десятків хвилин. У мене виявився досить складний випадок і програма працювала близько 20-25 хвилин.

Наступним кроком я знову запустив _purge. тому після відпрацювання попередньої утиліти з'являються безіменні блоки. Якщо зберегти файл, до запуску команди _purge. то його розмір в ряді випадків може навіть збільшитися. Purge працював в моєму випадку близько 2 годин і видалив перевищила 13,5 тисяч об'єктів.

Після відпрацювання команди _purge я запустив _audit для перевірки і відновлення бази креслення.

І, нарешті, натиснув _save для збереження файлу. Я його зберіг під новим ім'ям, щоб була видна різниця. Розмір файлу зменшився з 27,6МБ до 434КБ, тобто в 65 разів! Тепер файл можна спокійно відправляти поштою.

У загальному випадку, алгоритм чищення креслення такої:

  1. Видаляємо все непотрібне з видимих, відключених і заморожених шарів;
  2. Чистимо креслення командою _purge він невикористовуваних об'єктів (блоки, типи ліній, шари, стилі тексту, розмірів, таблиць, мультівиносок та ін.);
  3. Висаджуємо proxy-графіку командою explodeallproxy;
  4. Командою removeallproxy видаляємо proxy-графіку, яку не вдалося підірвати;
  5. Повторно виконуємо чистку креслення від невикористовуваних об'єктів командою _purge;
  6. Виконуємо перевірку і відновлення бази даних креслення командою _audit.

Бажано після кожного етапу зберігати креслення, тому що може не працювати з файлом.

Як зменшити розмір файлу autocad, якщо команда purge не допомагає