]> granicus.if.org Git - imagemagick/blobdiff - MagickCore/geometry.c
(no commit message)
[imagemagick] / MagickCore / geometry.c
index 763628782213b976fa02fcd52df534c75999048c..9ae2849a4f43a6217d25e45d0f58594db146870a 100644 (file)
@@ -357,7 +357,7 @@ MagickExport char *GetPageGeometry(const char *page_geometry)
       { "a2",  "1191x1684" },
       { "a3",  "842x1191" },
       { "a4",  "595x842" },
-      { "a4smaLL", "595x842" },
+      { "a4small", "595x842" },
       { "a5",  "420x595" },
       { "a6",  "297x420" },
       { "a7",  "210x297" },
@@ -413,7 +413,7 @@ MagickExport char *GetPageGeometry(const char *page_geometry)
       { "ledger",  "1224x792" },
       { "legal",  "612x1008" },
       { "letter", "612x792" },
-      { "lettersmaLL",  "612x792" },
+      { "lettersmall",  "612x792" },
       { "quarto",  "610x780" },
       { "statement",  "396x612" },
       { "tabloid",  "792x1224" },
@@ -1377,30 +1377,12 @@ MagickExport MagickStatusType ParseMetaGeometry(const char *geometry,ssize_t *x,
       (void) ParseGeometry(geometry,&geometry_info);
       area=geometry_info.rho;
       distance=sqrt((double) former_width*former_height);
-      scale.x=(double) former_width/(distance/sqrt((double) area));
-      scale.y=(double) former_height/(distance/sqrt((double) area));
+      scale.x=former_width/(distance/sqrt(area));
+      scale.y=former_height/(distance/sqrt(area));
       if ((scale.x < (double) *width) || (scale.y < (double) *height))
         {
-          scale.x=MagickMax((size_t) floor(scale.x+0.5),1.0);
-          scale.y=MagickMax((size_t) floor(scale.y+0.5),1.0);
-          if ((scale.x > 1.0) && (scale.y > 1.0) &&
-              ((scale.x*scale.y) > geometry_info.rho))
-            {
-              if (scale.x > scale.y)
-                {
-                  scale.x=(double) former_width/((double) former_height/
-                    --scale.y);
-                  scale.x=MagickMax((size_t) floor(scale.x+0.5),1.0);
-                }
-              else
-                {
-                  scale.y=(double) former_height/((double) former_width/
-                    --scale.x);
-                  scale.y=MagickMax((size_t) floor(scale.y+0.5),1.0);
-                }
-            }
-          *width=(size_t) scale.x;
-          *height=(size_t) scale.y;
+          *width=(unsigned long) (former_width/(distance/sqrt(area)));
+          *height=(unsigned long) (former_height/(distance/sqrt(area)));
         }
       former_width=(*width);
       former_height=(*height);