Index: /applications/editors/josm/plugins/cadastre-fr/src/cadastre_fr/MenuActionSaveRasterAs.java
===================================================================
--- /applications/editors/josm/plugins/cadastre-fr/src/cadastre_fr/MenuActionSaveRasterAs.java	(revision 18108)
+++ /applications/editors/josm/plugins/cadastre-fr/src/cadastre_fr/MenuActionSaveRasterAs.java	(revision 18109)
@@ -5,12 +5,18 @@
 import java.awt.event.ActionEvent;
 import java.awt.image.BufferedImage;
+import java.io.BufferedOutputStream;
 import java.io.File;
+import java.io.FileOutputStream;
 import java.io.IOException;
 
 import javax.imageio.ImageIO;
 import javax.swing.JFileChooser;
+import javax.swing.filechooser.FileFilter;
 
 import org.openstreetmap.josm.Main;
 import org.openstreetmap.josm.actions.JosmAction;
+
+import com.sun.image.codec.jpeg.JPEGCodec;
+import com.sun.image.codec.jpeg.JPEGImageEncoder;
 
 public class MenuActionSaveRasterAs extends JosmAction {
@@ -21,4 +27,22 @@
     
     private WMSLayer wmsLayer;
+    
+    public class FiltrePng extends FileFilter {
+        @Override
+        public boolean accept(File file) {
+            if (file.isDirectory()) { 
+                return true;
+            } 
+            return file.getName().toLowerCase().endsWith(".png");
+        }
+
+        @Override
+        public String getDescription() {
+            return tr("PNG files (*.png)");
+        }
+        
+    }
+    
+    FiltrePng filtrePng = new FiltrePng();
 
     public MenuActionSaveRasterAs(WMSLayer wmsLayer) {
@@ -30,10 +54,20 @@
         File file;
         JFileChooser fc = new JFileChooser();
+        fc.setFileFilter(filtrePng);
         int returnVal = fc.showSaveDialog(Main.parent);
         if (returnVal == JFileChooser.APPROVE_OPTION) {
             file = fc.getSelectedFile();
+            if (!file.getName().endsWith(".png"))
+                file = new File(file.getParent(), file.getName()+".png");
             BufferedImage bi = wmsLayer.images.get(0).image; 
             try {
                 ImageIO.write(bi, "png", file);
+/*
+                FileOutputStream flux = new FileOutputStream(file);
+                BufferedOutputStream fluxBuf = new BufferedOutputStream(flux);
+                JPEGImageEncoder codec = JPEGCodec.createJPEGEncoder(fluxBuf, JPEGCodec.getDefaultJPEGEncodeParam(bi));
+                codec.encode(bi);
+                fluxBuf.close();
+*/
             } catch (IOException e) {
                 e.printStackTrace();
