쉬운 수정 인 경우 매우 미안합니다.mxd.save 이후에 문서를 열면 내보내기 중에 바뀌 었음에도 불구하고 텍스트가 동일합니다.
내지도를 내보낼 때 모든 것이 잘되고 스크립트가 텍스트를 완벽하게 바꿉니다. 그러나 맵 문서를 시각화하기 위해 수동으로 열면 텍스트를 바꾼 직전과 같습니다. 텍스트를 대체하지 않고 해당 폴더에서지도 중 하나를 내 보낸 경우에도 텍스트가 대체되었음을 알 수 있습니다. 나는 무슨 일이 일어나고 있는지 잘 모르겠습니다. mxd.save() 전에 arcpy.RefreshActiveView도 사용했으나 여전히 작동하지 않습니다. 어떤 도움을 주시면 감사하겠습니다.
import arcpy
import os
import glob
folder = r"C:\Workspace\MapTest"
oldtext = '7351'
newtext = '7352'
mxds = glob.glob(folder + '\\' + '*.mxd')
arcpy.gp.overwriteOutput = True
for mxdFile in mxds:
mxd = arcpy.mapping.MapDocument(mxdFile)
for elm in arcpy.mapping.ListLayoutElements(mxd, "TEXT_ELEMENT"):
if elm.text ==oldtext:
elm.text = newtext
eps = mxdFile.replace('mxd', 'eps')
arcpy.mapping.ExportToEPS(mxd,eps)
mxd.save()
del mxd
또한, 내 eps 문서를 다른 폴더로 내보내는 방법을 잘 모르겠습니다. 나는 그 점에 대해서도 도움을 주신 것에 대해 감사 할 것입니다.
나는 설명 텍스트 요소로 테스트 MXD을 만들어 여기에 스크립트를 시도했다. 완벽하게 작동하고, mxd의 요소를 변경했습니다. Arcmap에서 mxd를 열어 우연히 이것을 할 수 있습니까? – MikeHunter
이 스크립트를 어떻게 실행하고 있습니까? Idle에서, Pythonwin? Arcmap Python 창? – MikeHunter