1// Copyright 2013 The Chromium Authors. All rights reserved. 2// Use of this source code is governed by a BSD-style license that can be 3// found in the LICENSE file. 4 5#include "ui/gfx/text_utils.h" 6 7#import <UIKit/UIKit.h> 8 9#include <cmath> 10 11#include "base/strings/sys_string_conversions.h" 12#include "ui/gfx/font_list.h" 13#include "ui/ios/NSString+CrStringDrawing.h" 14 15namespace gfx { 16 17int GetStringWidth(const base::string16& text, const FontList& font_list) { 18 return std::ceil(GetStringWidthF(text, font_list)); 19} 20 21float GetStringWidthF(const base::string16& text, const FontList& font_list) { 22 NSString* ns_text = base::SysUTF16ToNSString(text); 23 NativeFont native_font = font_list.GetPrimaryFont().GetNativeFont(); 24 return [ns_text cr_sizeWithFont:native_font].width; 25} 26 27} // namespace gfx 28