Select to view content in your preferred language

Scaling: Small, but large.  :)

3534
18
03-03-2014 06:20 AM
DannyLackey
Deactivated User
So, I have a map I'm outputting to PDF based on specific bookmarks (that part is working fine), but I can't find the right method to make it produce the way I need.  This is a detailed map with many points/labels.  I need to be able to make these maps appear zoomed in, yet show the whole map.  In other words, the map pdf will be enormous and I'd just have to zoom-in in order to read the text over the point.  I've been messing with
.scale
but that doesn't seem to do what I need (unless I'm using it wrong).  For example,
df.scale = 2000
shows the level of detail I need and individual points/labels are separated and clear, but is WAY too close on the map.  If I zoom way down in ArcMAP, I can see all labels/points.  That's what I want, just with high resolution to see everything at once when zoomed out. 

I realize it will be pretty gnarly when zoomed way out - the points (and text within them) would all appear very small when zoomed out, but I need to be able to see the detail if I zoom in on the PDF.
Tags (2)
0 Kudos
18 Replies
JoshuaChisholm
Frequent Contributor
Hello Danny,

I'd try playing with the export to pdf settings (see here). You should be able to make a really high resolution pdf and then be able to zoom in and look around (on the pdf). I'd also try using the layers_attributes setting so you can turn on and off layers in the pdf. The picture_symbol setting can keep your vector data as vectors in the pdf so you can theoretically zoom in infinitely!
arcpy.ExportToPDF(map_document, out_pdf,resolution=900,picture_symbol="VECTORIZE_BITMAP",layers_attributes="LAYERS_AND_ATTRIBUTES")

Let me know if that's what you're looking for!
0 Kudos
DannyLackey
Deactivated User
Hello Danny,

I'd try playing with the export to pdf settings (see here). You should be able to make a really high resolution pdf and then be able to zoom in and look around (on the pdf). I'd also try using the layers_attributes setting so you can turn on and off layers in the pdf. The picture_symbol setting can keep your vector data as vectors in the pdf so you can theoretically zoom in infinitely!
arcpy.ExportToPDF(map_document, out_pdf,resolution=900,picture_symbol="VECTORIZE_BITMAP",layers_attributes="LAYERS_AND_ATTRIBUTES")

Let me know if that's what you're looking for!


Perhaps I'm implementing it wrong...  Seems to still be missing the symbology data for the points and points all jumbled together.  Here is what I used:
for bkmk in [bkmk for bkmk in arcpy.mapping.ListBookmarks(mxd,"*",df) if bkmk.name in ["North","Middle"]]:
    df.extent = bkmk.extent
    #df.scale *= 1.5
    #df.scale = 2000 # ex 12000 = 1:2,000
    outFile = r"I:\GIS_Workspace\Output\\" + bkmk.name + ".pdf"
    arcpy.mapping.ExportToPDF(mxd, outFile, resolution=900,picture_symbol="VECTORIZE_BITMAP",layers_attributes="LAYERS_AND_ATTRIBUTES")


The "LAYERS_AND_ATTRIBUTES" toggle is pretty cool.  I didn't know PDF could handle layers.  If it can also handle showing more data as you zoom in, I might not have to go this trouble.

What I'm trying to achieve is for all of the data to be present as if I'm zoomed in to say 1:1,500, freeze it that way, then zoom out to the extent I need.  Could it be because I'm referencing a bookmark which has a predefined zoom?
0 Kudos
JoshuaChisholm
Frequent Contributor
Hello Danny,

I don't know if I've done that before. Sounds interesting though. Maybe you could play with df.referenceScale.

Let me know if it works!
0 Kudos
DannyLackey
Deactivated User
Hello Danny,

I don't know if I've done that before. Sounds interesting though. Maybe you could play with df.referenceScale.

Let me know if it works!


Tried.  No dice.  Might go back to the drawing board and ditch the bookmark reference.  Might be hosing me.  I liked that it already had the section in focus, just not to the right scale...
0 Kudos
JoshuaChisholm
Frequent Contributor
Hello Danny,

I was playing with the reference scale (manually in ArcMap) and made these three maps (with made up data). Is this the kind of thing you're looking for?
[ATTACH=CONFIG]31907[/ATTACH]
[ATTACH=CONFIG]31905[/ATTACH]
[ATTACH=CONFIG]31906[/ATTACH]
0 Kudos
DannyLackey
Deactivated User

Hello Danny,

I was playing with the reference scale (manually in ArcMap) and made these three maps (with made up data). Is this the kind of thing you're looking for?
[ATTACH=CONFIG]31907[/ATTACH]
[ATTACH=CONFIG]31905[/ATTACH]
[ATTACH=CONFIG]31906[/ATTACH]


Yes!  It's ok if they are tiny points when zoomed out.  Although, in your last pic it looked like the points were changing size appearing closer together.  That wouldn't be the case in a PDF, right?  I would want them to stay separated when zoomed in as in your first 2 pics.  I need the map they are on to stay in relation to the points as well.  I want the labels/points to THINK it's a 1:1000, yet produce a zoomed out map (without jumbling the points/labels).
0 Kudos
JoshuaChisholm
Frequent Contributor
Have you tried something like this?
for bkmk in [bkmk for bkmk in arcpy.mapping.ListBookmarks(mxd,"*",df) if bkmk.name in ["North","Middle"]]:
    df.extent = bkmk.extent
    df.referenceScale=df.scale/4
    outFile = r"I:\GIS_Workspace\Output\\" + bkmk.name + ".pdf"
    arcpy.RefreshActiveView() #this line can often help
    arcpy.mapping.ExportToPDF(mxd, outFile, resolution=900,picture_symbol="VECTORIZE_BITMAP",layers_attributes="LAYERS_AND_ATTRIBUTES")
0 Kudos
DannyLackey
Deactivated User
This does work in terms of shrinking the points/labels down to what I need, but it also expands the view beyond the parameters of the bookmarks.  Any way to force the bookmark parameters in terms of zoom level?
0 Kudos
DannyLackey
Deactivated User
This is how the bookmark should come out (but with all labels/icons visible and smaller):
[ATTACH=CONFIG]31952[/ATTACH]

This is what's actually producing with the code provided:
[ATTACH=CONFIG]31953[/ATTACH]

So, somehow I need to keep the focus of the bookmark, but make the icons/labels smaller.
0 Kudos