Select to view content in your preferred language

Export map image

1037
3
07-12-2011 10:32 PM
OndrejRenner
Deactivated User
I would like to export a map to the png file. But the resulting file is empty. This is my solution:

In MainPage is (piece of code)

<Border x:Name="mapBorder" Background="White" CornerRadius="5" BorderThickness="1" BorderBrush="Black" Margin="5" Grid.Column="0">
<Grid>
<esri:Map x:Name="MyMap" Margin="5" >
<esri:ArcGISDynamicMapServiceLayer ID="BackMap" Url="http://w2003gis/ArcGIS/rest/services/BackMap/MapServer" />
<esri:ArcGISDynamicMapServiceLayer ID="DynamicMap" Url="http://w2003gis/ArcGIS/rest/services/HrAdminDiv/MapServer" />
<esri:GraphicsLayer ID="SingleAnalysisGraphicsLayer" />
<esri:GraphicsLayer ID="MultiAnalysisGraphicsLayer" />
</esri:Map>
</Grid>
</Border>

(GraphicsLayers are filled in code behind)

And in code i do this:

var sfd = new SaveFileDialog();
sfd.Filter = "PNG Image File (*.png)|*.png";
WriteableBitmap wbmp = (MyMap, new TranslateTransform());
            
if (sfd.ShowDialog() == true)
{
    using (Stream stream = sfd.OpenFile())
    {
        var enc = new PngEncoder();
        enc.Encode(wbmp.ToImage(), stream);
        stream.Close();
    }
}


Result file is empty (size is 0).

When I export only GrapgicsLayer, everything is OK, but I miss the BackMap and DynamicMap layer.

var sfd = new SaveFileDialog();
sfd.Filter = "PNG Image File (*.png)|*.png";
WriteableBitmap wbmp = ((ArcGISDynamicMapServiceLayer)MyMap.Layers["BackMap"]).ToBitmap();
            
if (sfd.ShowDialog() == true)
{
    using (Stream stream = sfd.OpenFile())
    {
        var enc = new PngEncoder();
        enc.Encode(wbmp.ToImage(), stream);
        stream.Close();
    }
}


How can I export every layers from MyMap object to graphic file?

Thanks, O.
0 Kudos
3 Replies
JenniferNery
Esri Regular Contributor
0 Kudos
OndrejRenner
Deactivated User
When I use Layer.ToBitmap() on the graphics layer (which is on the client side), everything is fine. But when I use the Layer.ToBitmap on ArcGISDynamicMapServiceLayer, the resulting image is blank. Finally, I need to export the layer collection and this is same problem - empty image.

O
0 Kudos
OndrejRenner
Deactivated User
anyone help?
0 Kudos