-    if (image->HasOption(wxT("quality")))
-        jpeg_set_quality(&cinfo, image->GetOptionInt(wxT("quality")), TRUE);
+    if (image->HasOption(wxIMAGE_OPTION_QUALITY))
+        jpeg_set_quality(&cinfo, image->GetOptionInt(wxIMAGE_OPTION_QUALITY), TRUE);
+
+    // set the resolution fields in the output file
+    int resX, resY;
+    wxImageResolution res = GetResolutionFromOptions(*image, &resX, &resY);
+    if ( res != wxIMAGE_RESOLUTION_NONE )
+    {
+        cinfo.X_density = resX;
+        cinfo.Y_density = resY;
+
+        // it so happens that wxIMAGE_RESOLUTION_INCHES/CM values are the same
+        // ones as used by libjpeg, so we can assign them directly
+        cinfo.density_unit = res;
+    }