Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.01.28;
Скачать: [xml.tar.bz2];




Вниз

AutoCAD 


NLO   (2002-01-11 07:10) [0]

Проблема следующая:
Мне необходимо получить из файлов формата AutoCAD [dwg] (только лимиты) файлы формата (pdf).
И еще такой вопрос, есть ли компонет для предварительного просмотра файлов AutoCAD [dwg]



ShaggyDoc   (2002-01-11 08:52) [1]

1. Просто не могу представить, зачем из DWG делать PDF. Для этого придется полностью изучить закрытый формат DWG, изучить PDF и научиться, за всю оставшуюся жизнь, делать из одного другое. Без этого весь мир как-то обходится. В крайнем случае, если уж очень приспичило, можно из DWG любым Автокадовским способом сделать растры, и потом вставлятьв PDF обычным порядком.

Если нужно публиковать DWG без возможности редактирования, делать это лучше путем создания DWF (векторная графика, которую можно просамтривать в IE, без возможности редактирования). Это можно делать вручную или программно из Автокада.

Все о DWF можно прочитать на http://www.gis.kurgan.ru/datacad/whip/index.htm

2. Как извлечь превьювчик из DWG на Delphi см. статью "Как добраться до ThumbNail? " на

http://www.gis.kurgan.ru/datacad/messages.htm



NLO   (2002-01-11 09:25) [2]

Вообще это нужно для следующего.
из DWF можно сделать запросто dwg, а из PDF DWG... политика на предприятии такая, не хотят отдавать заказчику DWG.

А вообще, создание PDF из DWG ни чем не отличается от печати на обычном принтере. Ставишь Adobe Acrobat и печатаешь себе на виртуальный принтер.

А поскольку AutoCAD является сервером автоматизации можно из него автоматом печатать. Но вот это я и немогу сделать ни как.
т.е. нужно написать прогу которая выбранные файлы открывает в автокаде и печатает их на виртуальном принтере.



ShaggyDoc   (2002-01-11 11:24) [3]

>из DWF можно сделать запросто dwg

1. Ошибочное мнение. "Не все же в деревне дураки". Из DWF никогда не сделать полноценный исходный DWG! Иногда думают, что если в контекстном меню WHIP есть пункт "Save As DWG", то это и есть возможность получения DWG. Это возможно только в том случае, когда рядом с DWF лежит такой же файл, с расширением DWG.
Применяется, например, чтобы показать заказчику выполненную работу в виде DWF, а когда оплатит - дать возможность получить и DWG.

Но если исходного файла нет, ничего не получится.

Разумеется, DWF, как и любой файл с известным форматом, можно программно проанализировать и на его основе попытаться сделать DWG или DXF. Пара таких программ в мире есть. Одна моя. Но в DWF нет той информации, которая была в DWG. Туда не попадают отключенные слои и многое другое. Формат предназначен для быстрого визуального представления векторно-растровой графики. В лучшем случае получается бледное подобие исходного файла.

2. Не каждый Автокад является сервером. Версии 15.х - да. Печать (или иные действия) с кучами файлов из Автокада элементарно программируются на Лиспе. Но это слишком просто для программистов, "нормальные герои всегда идут в обход". С Delphi будет много проблем. Хотя они решаемые. Или делать на VC++ используя библиотеку ObjectARX. В этом случае - полное управление Автокадом. Можно и на приляпанном к Автокаду VB. Брр...



baly   (2002-01-11 11:39) [4]

Привет
Это не ответ а скорее всего заинтересованности в теме у меня похожая проблема только мне необходимо из дельфи управлять AutoCAD (передача данных)
Если есть что то по этому поводу то напишите



SuperUmnik   (2002-01-11 12:00) [5]

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



NLO   (2002-01-11 12:17) [6]

Вот можно примерчик на Delphi как напечатать файл с возможностью сменить принтер и его настройки (размер бумаги и разрешение).



NLO   (2002-01-11 12:25) [7]

ShaggyDoc © спасибо за ссылочки



AlexDov   (2002-01-11 13:37) [8]

Привет.
Не знаю помежет ли это. Но можно записать файл в формате DXF и оттуда уже выковыривать, что угодно. К то му же существует множество модулей по Delphi для разбора DXF. Потом сформировать нужную картинку и отправить ее напринтер поддерживающий запись в PS.
Если кому интересно, то у меня есть всякие кусочки кода которые могут понадобится в создании такого приложения.



NLO   (2002-01-11 13:41) [9]

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



NLO   (2002-01-11 13:45) [10]

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



ShaggyDoc   (2002-01-11 14:59) [11]

> baly

По поводу того, как управляться из Delphi с Автокадом (и наоборот) готовлю специлаьный сайт. Пока работает на закрытом ресурсе. Будет готов, сообщу в форуме, если есть интерес.

Пока можно посмотреть на указанной ранее странице

http://www.gis.kurgan.ru/datacad/messages.htm Там есть мои статьи по Автокад и Delphi. Старые, но цитируемые.

Что касается передачи данных, то самый надежный способ - формировать файл определенного формата и посылать SendCommand для загрузки Lisp-программы, которая и будет обрабатывать данные.
Можно и напрямую из Delphi, но очень ненадежно (должен быть очень корректный код) и писать раз десять больше.




Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.01.28;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.75 MB
Время: 0.026 c
4-90435           wHammer               2001-11-30 11:50  2002.01.28  
Звук


1-90286           Ig                    2002-01-08 22:43  2002.01.28  
Внешние компоненты в 1С


14-90352          Brand                 2001-11-30 23:35  2002.01.28  
Кодирование информации


3-90193           AndyDu                2001-12-22 20:19  2002.01.28  
Как програмно пометить необходимые записи в DBGrid, чтоб потом пользовать SelectedRows ?


7-90393           rel                   2001-10-16 18:30  2002.01.28  
Модемы