Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import arcpy
- #input layer
- lyr = arcpy.GetParameterAsText(0)
- # input name of layout
- p = arcpy.mp.ArcGISProject("CURRENT")
- lyt = p.listLayouts("Layout_King")[0]
- # Reposition the scale bar
- scaleBar = lyt.listElements("MAPSURROUND_ELEMENT", "Scale Bar")[0]
- mf = scaleBar.mapFrame
- scaleBar.elementPositionX = mf.elementPositionX + 0.0
- scaleBar.elementPositionY = mf.elementPositionY - 0.5
- # Reposition the north arrow
- northArrow = lyt.listElements("MAPSURROUND_ELEMENT", "North Arrow")[0]
- mf = northArrow.mapFrame
- northArrow.elementPositionX = mf.elementPositionX + 8.8
- northArrow.elementPositionY = mf.elementPositionY + 0.7
- # Align the title with the center of the map frame
- title = lyt.listElements("TEXT_ELEMENT","Name of Map Text")[0]
- mf = lyt.listElements('MAPFRAME_ELEMENT',"Map Frame")[0]
- title.elementPositionX = mf.elementPositionX + (mf.elementWidth / 3.7)
- title.elementPositionY = mf.elementPositionY + (mf.elementHeight / 0.98)
- # Reposition the Legend and fix legend title
- legend = lyt.listElements("LEGEND_ELEMENT", "Legend")[0]
- legend.title = "Legend"
- legend.elementPositionX = mf.elementPositionX + 7.7
- legend.elementPositionY = mf.elementPositionY + 7.15
- # setting layout to bookmark
- aprx = arcpy.mp.ArcGISProject("Current")
- # add name of layout
- lyt = aprx.listLayouts("Layout_King")[0]
- mf = lyt.listElements("MAPFRAME_ELEMENT")[0]
- # add name of bookmark
- bkmks = mf.map.listBookmarks()
- bkmks.sort(key=lambda x: x.name, reverse=True)
- for bkmk in bkmks:
- mf.zoomToBookmark(bkmk)
- lyt.exportToPDF(r"C:arcGIS_SharedExports" + "\" + bkmk.name + ".pdf")
Add Comment
Please, Sign In to add comment