Select to view content in your preferred language

Exporting to PDF from ArcGIS Pro is producing large file sizes

36823
58
07-08-2016 12:19 PM
SarahAcMoody
Occasional Contributor

Hi all,

I've reproduced some of my old map documents in ArcGIS Pro, believing there would be some efficiencies in this.  When I export these layouts to PDF, the resulting files are about 5x larger than the same maps exported out of ArcMap (~5MB vs < 1MB).  The export options are set-up the same in both Pro and ArcMap and I've also experimented with Resolution (dpi) & Image Quality, to no avail. Even at a 96 dpi and "Fastest" imagey quality, I'm getting 5MB PDF's.

Any thoughts? I've looked all around and cannot find any articles addresses this issue.

Thanks!

58 Replies
MarcoBoeringa
MVP Regular Contributor

Hi Monika,

Thanks for sharing the map packages (note to other readers of this thread: you must be logged in to see and download those!).

I now had a look at the map packages, and exported them to 100,600,1200 and 3600 dpi PDFs in ArcMap, and 100 and 3600 dpi in Pro.

Look at this first image:

The first 4 listed files without "_Pro_" in the filename, are the ArcMap export. Notice that with increasing output dpi, the file size also increases. Now look at the last two files from Pro, and notice that although there is a size increase, it is relatively small.

Why is this?

There is a fundamental difference in how Pro and ArcMap handle the vector PDF export: in Pro, almost all the coordinate information of the original polygons and lines, will be retained in the PDF output, even if you set a low dpi output resolution. Pro will always (attempt to) generate high quality vector output. This means that linework of polygons and polylines will remain smooth - at least if the dataset is suitable for the scale at which it is being used - and things like text halos will be of high quality in the PDF output, even when zoomed in at e.g. 800% percent in Adobe Reader.

In essence, although this is not entirely true, the Resolution (DPI) as displayed in the Pro export dialog, is meaningless if you only export ***100% vector*** PDFs!!! Note: with raster or image layers in your map document, DPI is meaningful and will strongly impact output file size and quality.

ArcMap on the other hand, due to using a different display pipeline, has a dependency between the dpi setting and the vector output quality: the lower the dpi, the coarser the vector output in the output PDF!

Look at the images below, which are 800% zoomed in screenshots from the export as seen in Adobe Reader. First look at the top two images, which are 100dpi output from ArcMap and Pro respectively. Notice how, zoomed in at 800% in Adobe Reader, the ArcMap output looks "blocky", almost rasterized. Even though it looks rasterized, it is still vector data, but the coordinates of the vectors have been snapped to 100dpi coordinate grid. This causes the "blocky" appearance. This is the way how ArcMap handles this, and is a direct consequence of the different display pipeline in ArcMap versus Pro.

Now look at the second ArcGIS Pro image, also 100dpi output: notice the detailed - but jagged - linework? This is caused because your data is at very high true coordinate resolution compared to the scale at which you are trying to display it. Since Pro will output nearly all coordinates, the final file size is big as well (see the first screenshot above), but this is direct consequence of using highly detailed apparently "local" data displayed at "country" scale in the layout.

Now look at the subsequent images from ArcMap at 600, 1200 and 3600 dpi output. Notice that with increasing resolution, the images start to look more and more like the Pro export: lines are more detailed, but start to look jagged due to an abundance of detail in the original datasets. Also notice the increasing file size because of this, going from a mere 0.4MB at 100dpi, up to 7.6MB at 3600dpi.

Now how to solve this?

There are two aspects to this:

- Clearly, the data you are using is far more detailed than is needed for a country overview. To get better quality output in ArcGIS Pro with smaller output PDF file sizes, without the jagged over-detailed linework, you should generalize the datasets using e.g. the Simplify Polygon tool.

- A second aspect is that it would be good if ESRI allowed some form of target vector output resolution for Pro, automatically mildly generalizing or simplifying the vector output if the underlying datasets are of a higher resolution than is realistically necessary for high quality output. In ArcMap, this functionality was a direct consequence of the used Windows GDI display pipeline. For Pro, using a different display pipeline, this probably requires another solution.

MonikaHonkova2
Deactivated User

Hi Marco,

thanks for your detailed explanation.

I'd rather avoid creating generalized feature classes - I have close to 100 different PDF maps to create. But by the sound of it, I will have to go down this route. 

0 Kudos
VincentLaunstorfer
Frequent Contributor

Hi,

I confirm Marco's comment as I had to investigate this issue last week. ArcGIS Pro produces true vector in .pdf output and not the vectors "snapped to dpi coordinate grid" set with the dpi parameter. Dpi in ArcGIS Pro only matters for raster layers in the .pdf. ArcGIS Pro .pdf exports are much smarter.

In the files attached, when zoomed in Acrodat Reader at 500%, you can clearly see the ArcMap snapping effect. As a result, ArcGIS Pro produces .pdf files much larger than ArcMap. For my test map, ArcMap output 2Mb vs ArcGIS Pro 25Mb!

For the time being, I experimented 2 workarounds:

*In Adobe Illustrator, I imported the 25mb .pdf and just resaving as .pdf reduces the file size down to 13Mb! Then, simplifying line vectors by only 1% and the newly exported .pdf was about 7Mb. However, what is the effect of only 1% simplification in terms of actual vector shifts (and actual shift in meters)? Is it acceptable? For printed maps, you can hardly notice the 1% simplification and it removes about 80% of the vertex. But I would prefer to apply this vector simplification when exporting .pdf directly from ArcGIS Pro. Also, the Illustrator option leads to another problem, importing and manipulating .pdf file in Illustrator is cumbersome for simplification operation. And unfortunately, .ai exports are not available in ArcGIS Pro...

*In Adobe Reader Pro, the only workaround I can suggest to keep and deliver a smaller .pdf for printing/viewing is to rasterize the .pdf. This can be done with flattening to 100% raster. Flattened at 300dpi, my new .pdf is 1.2Mb! A regular 300dpi .png export is 2.2Mb. Again, ArcGIS Pro could include an option to rasterize completely the .pdf for printing/viewing purposes.

Hope this helps

0 Kudos
SteveCole
Honored Contributor

Do you have access to Adobe Acrobat Pro? I'd suggest creating a PDF using Adobe's Distiller option as a test. I'm not currently using Pro but, my experience within Arcmap tells me that using ESRI's export to PDF option typically produces larger PDF files than printing to Adobe's PDF Distiller virtual printer. This is my preferred method of producing PDFs within Arcmap.

I will say that Pro is built from the ground up with an entirely new graphics pipeline so it is possible that comparing previous experiences with Arcmap are no longer applicable. Anyways, worth a try if you have that ability.

0 Kudos
PROBERT68
Honored Contributor

If you have Adobe Acrobat Pro DC, you can reduce the file size by going to File --> Save Other As -- >  Reduce File Size .

RachaelChasse
Frequent Contributor

Hi Robert,

I was having the same file size issues as the poster and tried so many different export options out of ArcGIS Pro to reduce the file size.  We create 11x17 documents using aerial imagery and many detailed vector layers.  The files were exporting to PDF at around 20 MB (150 dpi).  

I tried using the Acrobat DC option "Save as PDF, optimized", which brought it down by a few MB.  This still wasn't a realistic file size, and I was getting ready to resort to PNG files--until I saw your suggestion.

This worked perfectly!  The file is now 1.6MB and all vector data and the original image resolution has been retained.  I'm not sure what this option does differently, or what kind of info it is removing, but it does the trick.  You made my day--thanks!

VincentLaunstorfer
Frequent Contributor

Thanks Robert for the File --> Save Other As -- >  Reduce File Size...

I just tried it on an A1+ poster which was 37,965 KB and is now 10,097 KB. A good improvement!  But if I try "Save as PDF, optimized", it produces the exact same size 10,097 KB. However, the PDF Optimizer dialog box gives much more control on how to optimize.

Also, as mentioned previously, in Acrobat Pro, resterizing the .pdf with Tools pan -> Print Production tab -> Flattener Preview gives a 3,368 KB file size for the same poster. But it is now rasterized like a .png and just "encapsulated" in .pdf to be convenient to use...

emmornile1
Frequent Contributor

I don't understand why the functionality of Pro is so different from 10.5

I am doing a simple vector map that is 5 MB in 10.5 and 37 MB in Pro 2.0, the Image Quality setting changes nothing and the DPI is 96

It is absurd that the "solution" is to buy Acrobat

Pro is still quite young in the lifecycle 

RachaelChasse
Frequent Contributor

I posted an idea for generalizing vector data on export, if anyone wants to vote for it.  

https://community.esri.com/ideas/14201 

ChrisMathers1
Frequent Contributor

I am in the same boat with three county atlases I converted to a Pro project. at 300 dpi each exported from ArcMap to about a 75 mb PDF. The same PDF from Pro at 300 dpi is 1.25 gb. This is a 151 page document that only has two feature classes in the map frame, street centerlines and water bodies. If you export the map series to PNG, which isnt an option in the GUI you have to do it from python, you can merge those into a single PDF using any number of free or paid PDF tools. Its not a great solution but it works.

edit: a bit of script for the export to PNG is available already written at the bottom of the map series class documentation.