Index: ui/gfx/geometry/size.cc |
diff --git a/ui/gfx/geometry/size.cc b/ui/gfx/geometry/size.cc |
index 03aa69660190df7f7eb10b65cdf625bd1c7df8e6..86e1aeb9b174f90345880a02af21d694acb1ecc6 100644 |
--- a/ui/gfx/geometry/size.cc |
+++ b/ui/gfx/geometry/size.cc |
@@ -13,6 +13,7 @@ |
#endif |
#include "base/strings/stringprintf.h" |
+#include "ui/gfx/geometry/size_conversions.h" |
namespace gfx { |
@@ -64,4 +65,40 @@ std::string Size::ToString() const { |
return base::StringPrintf("%dx%d", width(), height()); |
} |
+Size ScaleToCeiledSize(const Size& size, float x_scale, float y_scale) { |
+ if (x_scale == 1.f && y_scale == 1.f) |
+ return size; |
+ return ToCeiledSize(ScaleSize(gfx::SizeF(size), x_scale, y_scale)); |
+} |
+ |
+Size ScaleToCeiledSize(const Size& size, float scale) { |
+ if (scale == 1.f) |
+ return size; |
+ return ToCeiledSize(ScaleSize(gfx::SizeF(size), scale, scale)); |
+} |
+ |
+Size ScaleToFlooredSize(const Size& size, float x_scale, float y_scale) { |
+ if (x_scale == 1.f && y_scale == 1.f) |
+ return size; |
+ return ToFlooredSize(ScaleSize(gfx::SizeF(size), x_scale, y_scale)); |
+} |
+ |
+Size ScaleToFlooredSize(const Size& size, float scale) { |
+ if (scale == 1.f) |
+ return size; |
+ return ToFlooredSize(ScaleSize(gfx::SizeF(size), scale, scale)); |
+} |
+ |
+Size ScaleToRoundedSize(const Size& size, float x_scale, float y_scale) { |
+ if (x_scale == 1.f && y_scale == 1.f) |
+ return size; |
+ return ToRoundedSize(ScaleSize(gfx::SizeF(size), x_scale, y_scale)); |
+} |
+ |
+Size ScaleToRoundedSize(const Size& size, float scale) { |
+ if (scale == 1.f) |
+ return size; |
+ return ToRoundedSize(ScaleSize(gfx::SizeF(size), scale, scale)); |
+} |
+ |
} // namespace gfx |