第二个版本:
#用途:将一个文件夹中的所有mxd文件(包括所有子目录中的mxd文件)导出成jpg图片,并存储到该文件夹下。
import arcpy, os, time
path = r'D:/workspace'
res = 200
print '程序开始:' + str(time.ctime())
for root, dirs, files in os.walk(path):
for afile in files:
if afile[-4:].lower() == '.mxd':
mxd = arcpy.mapping.MapDocument(os.path.join(root,afile))
arcpy.mapping.ExportToJPEG(mxd, os.path.join(path,afile[:-3] + 'jpg'), resolution = res)
del mxd
print '程序结束:' + str(time.ctime())
———————————————————————————————————————————————————
说明:
1.对于方法二可以将path改成root,这样就可以将jpg文件放入每一个mxd对应的目录下面,而不是放到path制定的目录下面。
2.使用filegeodatabase比personalgeodatabase导出时会有效率上的提升,以我的图按dpi=10来算有10%的提升。
——————————————————————————————————————————————————
———————————————————————————————————————————————————
另外作者弄了个改进版,增加了出图后自动关机功能:
import arcpy, os, timepath = ur'C:Documents and SettingsAdministrator桌面导图'res = 100#mode1可选值为0或1,0表示导出path这个目录及其所有层次子目录中的mxd,1表示只导出path这个目录的mxd文件。mode1 = 0#mode2可选值为0或1,0表示mxd导出的图片放到与mxd相同的文件夹下,1表示放到path下面。mode2 = 0#mode3可选值为0或1,0表示导图结束后不关机,1表示结束后关机。mode3 = 0def main():