In the 3.15 API for the VectorTileLayer Class, there is this important Known Limitation in the list:
So what exactly does this mean? A couple weeks ago I quickly discovered when printing (Print dijit - to PDF) my map containing a Vector Tile Layer (Esri's nice World Navigation in this case), the World Street Map rater appeared in the PDF output rather that the Vector Tile Layer. So does the above limitation essentially mean whenever using Vector Tiles our printouts will default to the World Street Map raster? Are there plans to have Vector Tile Layers included in the printed map layout?
Also, I tested this with using a Mapbox Vector Tile Layer and the printout had no map at all, the layout was pure white and empty. Which I'm thinking is because this Vector Tile does not use Esri's World Bamap service, correct?
Any help to better explain this situation is greatly appreciated.
Solved! Go to Solution.
Right now Vector Tiles are not supported in the print service, so the JSAPI will substitute the street service for now. You can see the last slide of this presentation from DevSummit for that question.
DevSummit 2016: Vector Tiles in the ArcGIS Platform // Speaker Deck
That functionality will hopefully come in a future release.
I am having the same problem. Our client wanted to have streets displayed on top of the satellite imagery, but the 'hybrid' basemap uses the World_Boundaries_and_Places reference layer. This only shows things like malls, parks and river names. Not a great reference layer. How are we supposed to print using the World Basemap vector tile layer? This is the url I am adding in (http://www.arcgis.com/sharing/rest/content/items/1c7f9b4db2604d54a8deae29f0eecbcf/resources/styles/r...) which displays great in the app, but is removed from the printable PDF.
Right now Vector Tiles are not supported in the print service, so the JSAPI will substitute the street service for now. You can see the last slide of this presentation from DevSummit for that question.
DevSummit 2016: Vector Tiles in the ArcGIS Platform // Speaker Deck
That functionality will hopefully come in a future release.
BUMP
Has this issue been addressed in either the 3.20 or 4.3 JS API?
Does anyone have a workaround?
Thanks
PW
Hello PW,
My workaround really sucks. It's a BIG time and resource sink.
We got StreetMap Premium from esri. The product comes with data and an MXD that's almost an exact match of the 'streets' basemap. I also found a MXD that closely matches the light gray basemap and reconnected all the layers to point to the data from StreetMap Premium. Then I created services for those MXDs and with the help of my expert co-worker, made a printing service that replaces the standard 96DPI raster basemap with the new service. It gets more complicated if you want to 'sandwich' a thematic layer in between the layers of the basemap (for example roads on top of a choropleth).
I've talked with several developers at esri and this unfortunately seems to be the only way right now. If you find anything else, please let me know. I'm eagerly waiting the day printing is supported for the vector tiles! Good luck!
VectorTile printing is supported in 3.21 and 4.4
Print widget using a VectorTileLayer | ArcGIS API for JavaScript 4.4
The way it works is we take an image of the VT on the client and send that image with the normal print information to the Print Service and it will embed the image in the print for you. Server still can't print VT directly, but this is a workaround introduced into the JSAPI.
Hello Rene,
Thank you for sharing! I did not know that existed.
Taking a image client-side would mean we are still locked at 96dpi. Is this correct?
Thank you!