Criei um serviço de impressão personalizado usando ArcPy. Ele está hospedado como GPServer no meu servidor de teste. O serviço de impressão usa um arquivo de configuração JSON para extrair os dados do mxd. O JSON é enviado pelo aplicativo Web para substituir vários elementos de texto. No entanto, estou um pouco perdido sobre como exibir a legenda usando o JSON enviado pelo mapa da Web. Tenho um elemento de legenda no meu MXD chamado "Route_Legend".
Neste exemplo, envio este JSON para o serviço de impressão
layout_Options<SPAN class="punctuation token">:</SPAN> <SPAN class="punctuation token">{</SPAN> <SPAN class="string token">'legendOptions '</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="punctuation token">{</SPAN> <SPAN class="string token">'operationalLayers'</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="punctuation token">[</SPAN><SPAN class="punctuation token">{</SPAN> <SPAN class="string token">'id '</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="string token">'WV_Base_Route_Webmap_022019_Comments_1982'</SPAN> <SPAN class="punctuation token">}</SPAN> <SPAN class="punctuation token">]</SPAN> <SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">'copyrightText '</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="string token">'County of Los Angeles, Bureau of Land Management, Esri, HERE, Garmin, INCREMENT P, USGS, METI/NASA, EPA, USDA | VENOM'</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">'scaleBarOptions '</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="punctuation token">{</SPAN> <SPAN class="string token">'nonMetricUnit'</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="string token">'esriMiles'</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">'nonMetricLabel'</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="string token">'mi '</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">' metricUnit '</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="string token">' esriKilometers '</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">'metricLabel'</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="string token">'km '</SPAN> <SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">'customTextElements'</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="punctuation token">[</SPAN><SPAN class="punctuation token">{</SPAN> <SPAN class="string token">' Date '</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="string token">' 3 / 5 / 2019, 9: 02: 34 AM'</SPAN> <SPAN class="punctuation token">}</SPAN> <SPAN class="punctuation token">]</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">' authorText '</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="string token">' Web AppBuilder for ArcGIS '</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">' titleText '</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="string token">'TEST '</SPAN><SPAN class="punctuation token">}</SPAN><SPAN class="line-numbers-rows"><SPAN></SPAN></SPAN>Minha pergunta é: como faço para incluir os dados da legenda na saída? Trabalho com PDFs na maior parte do tempo. Pesquisei bastante na internet, mas não encontrei nenhum exemplo que use um arquivo de configuração JSON. O arquivo de configuração JSON é assim:
<SPAN class="punctuation token">{</SPAN> <SPAN class="string token">"layer_title"</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"Route_Title"</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">"district_fld"</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"District"</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">"scenario_fld"</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"Scenario"</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">"version_fld"</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"Version"</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">"cis_link_id_fld"</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"CISLINKID"</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">"map_title_fld"</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"Map_Title"</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">"out_flds"</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"District,Scenario,Version,Map_Title,CISLINKID"</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">"title_element_text"</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"Número da rota"</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">"district_element_text"</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"Distrito"</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">"scenario_element_text"</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"Cenário: xyz"</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">"version_element_text"</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"Versão: xyz"</SPAN><SPAN class="punctuation token">}</SPAN><SPAN class="line-numbers-rows"><SPAN></SPAN></SPAN>