Print Widget not showing legend using custom print service, has issues rendering layer effects

6191
24
07-03-2022 02:41 PM
andrewdc_tt
Frequent Contributor

I love that the print tool is finally available in Experience Builder, but there are some issues when printing using custom templates. We are using a print service hosted on a server with ArcGIS 10.9.1 and published with ArcGIS Pro.

1 - The legend does not populate at all, even with the 'Show legend' option ticked.

When using the exact same print service and map using the WebAppBuilder print widget, the legend displays with no issues in the print (left is Experience Builder, right is WebAppBuilder).

andrewdc_tt_3-1656883795964.png

2 - Layer effects created in the new Map Viewer (such as drop shadow) do not render properly.

I've found it introduces weird graphical glitches, and labels/symbology seem to be blurry/distorted. The black lines introduced below go away after the drop shadow effect was removed from the map. This problem doesn't seem to be limited to just custom templates however, the default print does this too.

andrewdc_tt_0-1656882953801.png

The default print service won't cut it for us unfortunately because of the map template layouts we need. Are these bugs able to be fixed?

24 Replies
MarkEastwood
Frequent Contributor

Same issues occurring for me as mentioned by @StephenKing3  and @ChristineLenore . Any fix insight @ShengdiZhang ?

ShengdiZhang
Esri Regular Contributor

@RichardRogers1 @StephenKing3  @ChristineLenore @MarkEastwood 

The original issue is caused by group layers and is fixed in the last release.

However, we have identified another bug related to legend printing. If you encounter this issue, please follow these steps:

1. Add a map widget

2. Add map data to the map widget (key step - add map data before adding the print widget)

3. Add a print widget and connect it to the map widget

4. Configure a print service and check on "Include legend" in templates

Please let me know if you have followed these steps and still cannot print the legends.

Shengdi

0 Kudos
erica_poisson
Frequent Contributor

Hi @ShengdiZhang  - I am publishing a print service from enterprise 10.9.1. It is shared publicly and used within an Experience Builder app in ArcGIS Online. I've followed instructions in both the technical support work around AND your most recent post. The legend still does not print. Please see settings below. 

Another interesting note, basemaps will not draw when printing in Experience Builder - I see all grey as a background. When I test the same print service in Web App Builder, the basemap draws no problem. See second screen capture for basemaps used. 

erica_poisson_0-1683127898788.png

erica_poisson_1-1683128285007.png

 

Erica
ShengdiZhang
Esri Regular Contributor

Can you share a print service or a sample app with me? Thanks.

0 Kudos
erica_poisson
Frequent Contributor

@ShengdiZhang  I have shared the print service with you via direct message.

Erica
0 Kudos
erica_poisson
Frequent Contributor

Hi again @ShengdiZhang - 

I was able to get my print service to work, however am experiencing issues printing the basemap that is used within my web map. When a print successfully generates, the entire background is grey. Are you able to assist with this? *I have sent you an updated print service URL via direct message.*

Below is a screenshot of the basemap layers used within my map. Two are Vector Tile Layers, while one is a Tile Layer. The layers have been configured within my web map in the following ways:

  • Human Geography Label = reference layer; 25% transparency
  • World Terrain Base = effects, brightness & contrast enabled with following settings
    erica_poisson_0-1683566111315.png

     

  • World Hillshade = effects, brightness & contrast enabled with following settings
    erica_poisson_1-1683566111318.png

     

The following are direct links to the basemap layers:

erica_poisson_2-1683566111320.png

Thank you,

 

Erica
0 Kudos
FredericPoliart_EsriAU
Frequent Contributor

The Print widget (ExB Dev 1.11) does not populate the POST request properly. 

How to reproduce:

* Run print widget with a template that has a legend
* make sure the print widget's legend is turned ON
* Press F12 to open the browser debugger and look at the network packets
* Press the [print] button
* Look in the browser debug window for some "execute.." function
* There is a huge payload (packet sent to the geoprocessing print service), scroll all the way to the bottom
* There is a section called "legendOptions":{"operationalLayers":[] }}

Error: the operational layers should be a list of layers that the client wants to show in the legend ,  It must be something like [0,2,7,8,9,12,19] .. like a pattern of which layer (idx) we should include in the legend. 
.. without that your GPTask can't display anything in the legend. 

FredericPoliart_EsriAU_0-1691549964607.png

 

0 Kudos
MarkEastwood
Frequent Contributor

@ShengdiZhang the last release being the 1.11 developers version? If so, that is what I am using and still encountering the problem. The order you mentioned above is how I set up my ExB. Any suggestions?

 

 

KrystalPhaneuf4
Occasional Contributor

We just upgraded Enterprise 11.1 and are seeing the legend issue.  When enabling by default on the template it does not work. Following this doc. https://support.esri.com/en-us/knowledge-base/problem-legends-are-not-displayed-when-printing-a-map-...

Thomas_Fuhrmann
Regular Contributor

I'm having the same problem with ArcGIS Enterprise 11.1. The legend of layers within grouped layers is not displayed.