Guest User

Untitled

a guest
Nov 21st, 2017
50
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.54 KB | None | 0 0
  1. import arcpy
  2.  
  3. #input layer
  4. lyr = arcpy.GetParameterAsText(0)
  5.  
  6. # input name of layout
  7. p = arcpy.mp.ArcGISProject("CURRENT")
  8. lyt = p.listLayouts("Layout_King")[0]
  9.  
  10. # Reposition the scale bar
  11. scaleBar = lyt.listElements("MAPSURROUND_ELEMENT", "Scale Bar")[0]
  12. mf = scaleBar.mapFrame
  13. scaleBar.elementPositionX = mf.elementPositionX + 0.0
  14. scaleBar.elementPositionY = mf.elementPositionY - 0.5
  15.  
  16. # Reposition the north arrow
  17. northArrow = lyt.listElements("MAPSURROUND_ELEMENT", "North Arrow")[0]
  18. mf = northArrow.mapFrame
  19. northArrow.elementPositionX = mf.elementPositionX + 8.8
  20. northArrow.elementPositionY = mf.elementPositionY + 0.7
  21.  
  22. # Align the title with the center of the map frame
  23. title = lyt.listElements("TEXT_ELEMENT","Name of Map Text")[0]
  24. mf = lyt.listElements('MAPFRAME_ELEMENT',"Map Frame")[0]
  25. title.elementPositionX = mf.elementPositionX + (mf.elementWidth / 3.7)
  26. title.elementPositionY = mf.elementPositionY + (mf.elementHeight / 0.98)
  27.  
  28. # Reposition the Legend and fix legend title
  29. legend = lyt.listElements("LEGEND_ELEMENT", "Legend")[0]
  30. legend.title = "Legend"
  31. legend.elementPositionX = mf.elementPositionX + 7.7
  32. legend.elementPositionY = mf.elementPositionY + 7.15
  33.  
  34. # setting layout to bookmark
  35. aprx = arcpy.mp.ArcGISProject("Current")
  36.  
  37. # add name of layout
  38. lyt = aprx.listLayouts("Layout_King")[0]
  39. mf = lyt.listElements("MAPFRAME_ELEMENT")[0]
  40.  
  41. # add name of bookmark
  42. bkmks = mf.map.listBookmarks()
  43. bkmks.sort(key=lambda x: x.name, reverse=True)
  44. for bkmk in bkmks:
  45. mf.zoomToBookmark(bkmk)
  46. lyt.exportToPDF(r"C:arcGIS_SharedExports" + "\" + bkmk.name + ".pdf")
Add Comment
Please, Sign In to add comment