如何修复损坏的CAD文件?
近几天有多位网友遇到图纸无法打开和打开图纸异常退出的问题,之前发文章讲过相关问题,但最近有遇到一些新的现象,重新整理一下再发一下。
使用CAD的人都遇到过一些有错误数据的图纸,情况严重的会导致图纸文件根本打不开、打开时退出或者在操作时异常退出,不太严重可能会导致复制粘贴不正常、图纸显示不正常等等。
损坏文件可能导致的现象
假如你的CAD图纸文件被破坏或损坏,出现下列现象:
文件不能打开。
文件导致CAD无响应或异常退出。
在编辑和处理文件时性能很慢。
在打开或编辑文件时弹出错误信息并可能导致退出。
有些命令无法正常工作或有明显延迟。
文件莫名其妙变大很多。
显示或重生成显示数据有问题。
图形丢失。
导致出现这些错误的原因
CAD中的第三方应用程序或插件,例如网上的一些插件、工具,包括天正等专业软件,这些程序在处理图形时如果代码有问题,就会导致出现错误或冗余数据。
DWG文件是从其他软件创建或保存,比如用一些三维CAD转换过来的数据。
当CAD保存图纸的时候被意外终止,例如断电或CAD进程并未真正结束就强行结束CAD进程或关机。
旧版本图纸被反复保存和使用过多年,或者用高版本反复打开低版本图纸编辑后再保存为低版本图纸,也就是反复在进行高低版本的转换。
网络传输时出现异常,例如传输错误,文件被锁定或加密。
存储介质降解,例如硬盘的坏道、U盘的损坏等。
内存缺陷导致保存错误。
操作系统问题。
电源不稳定,如电涌等导致软硬件出现问题。
如何尽量减少错误产生的几率
上面的很多因素是无法控制的,但我们可以通过改进自己的习惯减少出现问题的几率,比如:
一、不将保存格式设置成低版本,建议使用当前CAD支持的正常版本,尤其不要设置成2007以下的版本。避免图纸在保存和打开的时候都进行版本转换,尤其是过大版本差距的转换,这样可以减少因版本转换产生错误的几率。只有当需要给其他使用低版本CAD的传图时才另存为低版本。
二、当拿到从其他软件导出的DWG文件时,用修复RECOVER打开或打开后马上就核查AUDIT,检查并修复一下图纸中可能存在的错误。尽早检查和修复错误可以避免在复制或编辑图纸的时候错误扩散并导致更严重的后果。
三、在保存文件并退出CAD时,不要着急关闭电源,最好等CAD进程正常结束并正常关机。
四、养成良好的习惯,保证内存、硬盘、操作系统以及U盘等存储介质简况,避免出现CAD出现异常或文件异常损坏的状况。
遇到错误文件时的处理办法
如果DWG图纸完全不能打开:
现象有很多种,比如图纸打开时可能会显示“图纸文件无效”,显示错误信息,甚至在开图的过程中无响应或异常退出,或者根本没有打开任何文件。
对于显示图纸文件无效的情况,首先,确认一下图纸版本是否高于当前CAD版本(有时会明确提示需高版本打开),然后,确认一下图纸是不是正常保存的DWG文件,而不是由其他文件直接改扩展名的文件,比如有人曾直接将DXF或DWL扩展名直接改成DWG尝试打开。如果不是这两种情况,就需要进行其他修复的尝试了。同时要检查一下硬盘或U盘是否有问题,避免后面再出现类似问题。
如果图纸打开状态下CAD异常退出,图纸目录下会留下.dwl或dwl2文件。在WINDOWS控制面板的选项设置显示隐藏的文件夹和扩展名,将与DWG图纸同名的.dwl和.dwl2删除,然后再打开DWG试试。
如果上述方法都无法打开DWG图纸,可进行下列步骤来尝试恢复图纸,一种方法不行就可以尝试下一种方法。
先新建一个空白文件运行修复RECOVER命令,选择问题文件,让CAD尝试修复并打开此文件。不新建空白文件也可以直接在菜单中选择修复命令,如下图所示。
如果图纸中包含外部参照,可以新建一个空白文件然后运行修复RECOVERALL命令,选择问题文件,让CAD尝试修复并打开此文件以及此文件中的外部参照文件。菜单中这个命令就叫"使用外部参照修复",如下图所示。
打开一个空白文件然后运行插入INSERT(I)命令,选择有问题的文件。如果可以插入的话,分解X插入的图块,然后运行核查AUDIT和清理PURGE命令,然后另存为一个新的图纸文件。
在DWG图纸相同的目录下看是否有同名的BAK文件,如果有,将扩展名从BAK改成DWG,然后再打开试试,这是上一次保存的文件备份。
在当前用户的临时文件(%temp%)找一下类似名称的SV$自动保存文件,将扩展名改成DWG看看是否能打开。如果手动修改过自动保存路径,请到相应路径下寻找。
如果是保存过程中出错,图纸目录下还可能保存一个*.tmp文件,名字跟图纸不同,也可以尝试修改成DWG后打开试试。
尝试用DWG Trueview打开图纸,如果可以打开,可以将图纸转换为较老版本的DWG然后再尝试打开。.
到公司或自己的备份文件中找损坏之前的备份文件。
如果图纸还能打开:
可执行下列步骤来修复图纸。
清理并修复图纸:
打开图纸文件。
在命令行清理注册的应用程序:
输入-PU,回车。(前面输入一个横杠-,可以调用命令行模式的清理命令)
输入R,回车。
当提问是否需要确认要清理的项目时输入N,回车。
在命令行输入PU,回车打开清理对话框,将所有的复选框都选上,然后单击“全部清理”。
Audit核查并修复所有错误:
在命令行输入AUDIT后回车。
输入"Y"确认修复错误。
保存图纸。
将图纸复制粘贴到新图:
打开损坏的图纸和一张新图。
在损坏的图纸中按CTRL + A全选并CTRL + SHFT+ C (带基点复制),基点选择0,0,0。
在新图中CTRL + V粘贴,插入点为0,0,0。
保存新图纸。
如果图纸仍然有问题,请按照下列步骤:
首先确认所有图层都是打开、解冻和解锁状态。
将外部参照XREF拆离。仔细检查是否存在循环参照的情况。
将图纸中所有必要信息用写块W的功能保存成新图纸:
输入W并回车。
在“源”中选择“对象。
单击“选择对象”按钮。
选择要写到新文件中的对象。
设置保存的路径和名字后确定,如下图所示。
打开一个新的空白文件。
将第3步生成的图块插入I到空图中:
输入I,回车。
选择刚保存的块文件。
取消勾寻在屏幕上指定”复选框并且勾选左下角“分解”,单击确定按钮将图块插入的同时分解。
在命令行输入PU,回车打开清理对话框,将所有的复选框都选上,然后单击“全部清理”。
执行Audit命令核查并修复所有错误:
将图纸另存为新的图纸。
如果还有问题?
按照下面的步骤操作。这些步骤可以按任意顺序执行,下面只是按照欧特克公司的建议排了一下顺序。进行每步操作后都可以检查一下问题是否解决,如果没有解决再继续下一步。
如果你的图纸很重要又没有备份的时候,不妨试试运气吧。
打开一个空白文件然后运行修复RECOVER命令,选择问题文件,让CAD尝试修复并打开此文件。
在命令行输入OVERKILL命令后回车,选择所有对象,设置包含或忽略的特性,单击确定按钮对图形进行消除重线处理。
用DELCON命令删除所有约束。
如果图中有实体或曲面对象,执行BREP命令删除三维实体和复合实体的历史记录以及曲面的关联性。
输入-SCALELISTEDIT回车,然后输入R回车,然后输入Y回车,将比例列表进行重置。
输入FILTERS,看是否有图层过滤器,单击删除“删除过滤器”按钮,将图层过滤器删除。
如果图形异常大,可清理DGN数据,2015以上版本可以用清理命令,2014及以下版本直接执行:(dictremove (namedobjdict)"ACAD_DGNLINESTYLECOMP")
尝试用不同版本的AUTOCAD打开文件试试,例如AUTOCAD 2013或2017,或者用AUTOCAD建筑版等,如果可能的话,尝试在不同电脑上打开试试。
打开空白DWG,尝试将问题文件插入成外部参照XREF。如果允许插入此文件,可以将它绑定BIND成图块,如果可以,然后可以分解X然后按照上面其他步骤进行修复。
将另存为命令将图纸保存成旧版文件格式,然后尝试打开新保存的文件。
将文件输入成DXF文件(用DXFOUT命令),然后打开一个空白的DWG文件后用DXFIN将刚生成的文件输入进来。
恢复布局标签:
右键单击默认的布局标签。
选择“从样板...”。
打开原始文件。
选择要恢复的布局标签。(如果有多个布局出现了问题,建议一次只恢复一个标签)。
在模型空间或图纸空间里移动对象。虽然你主要关注的是模型空间,但你可能发现你的图纸中只有一个图纸空间是可用的:
如果需要创建一个新的布局,创建一个新的视口。
用CHSPACE命令将所有图形移动图纸空间。
创建一张新图纸然后利用设计中心(CTRL+2或ADC命令),将损坏图纸的布局移动到新图纸中。
用CHSPACE命令再将图形转换为模型空间。
在设计中心从损害文件中恢复原始的布局。
解剖分析图纸。将图纸复制一个副本后打开,用快速选择QSELECT分别选择不同类型的图形然后删除他们,删除后就用一次PU清理命令,检查一下错误是否消失,通过这种方式筛选从而确认问题到底出在那类图形,最后可以通过框选分片删除,最终确定到底哪个图形的数据出了问题。通过这种方式确认那个或哪种图形数据出了问题,然后可以删除有问题的图形重新绘制。
有时图纸会提示无法复制到剪贴板,这样可以通过分区选择排查,快速找到有问题的对象,不用每种图形分类删除。
忽略不可见的DWG实体,将所有与DWG相关的图形选中然后将这些图形复制到新图纸中。复制粘贴前确认已打开了所图层,避免丢失了图形。
小结:
上面列举那么多种情况和解决犯法,大多数人看着都头大,总结一下,其实就是将一些能打开或修复、删除图形数据的方法都试一下,常用的方法就是下面几个:修复RECOVERRECOVERALL、核查AUDIT、清理PU、写块W、复制粘贴、插入图块I、插入外参照XREF,然后还有就是一些处理特殊图形数据的命令,例如处理孤立的DGN线型数据和大量注释性比例的问题。如果有明确的错误提示,如提示无法复制到剪贴版,可以通过选择筛选后删除错误图形。
如果图形文件修复也打不开,如果能找到比较近的备份文件,最好不要花太多精力,赶紧将找到的备份文件修复一下后继续画图。
以上技巧适用于AUTOCAD和浩辰CAD等同类的CAD软件,不同版本支持的命令和选项不完全相同,方式也略有不同。