| // Copyright 2014 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #ifndef BASE_TEST_FONTCONFIG_UTIL_LINUX_H_ |
| #define BASE_TEST_FONTCONFIG_UTIL_LINUX_H_ |
| |
| #include <stddef.h> |
| |
| #include <string> |
| |
| namespace base { |
| class FilePath; |
| |
| // Initializes Fontconfig with a custom configuration suitable for tests. |
| void SetUpFontconfig(); |
| |
| // Deinitializes Fontconfig. |
| void TearDownFontconfig(); |
| |
| // Loads the font file at |path| into the current config, returning true on |
| // success. |
| bool LoadFontIntoFontconfig(const FilePath& path); |
| |
| // Instructs Fontconfig to load |path|, an XML configuration file, into the |
| // current config, returning true on success. |
| bool LoadConfigFileIntoFontconfig(const FilePath& path); |
| |
| // Writes |data| to a file in |temp_dir| and passes it to |
| // LoadConfigFileIntoFontconfig(). |
| bool LoadConfigDataIntoFontconfig(const FilePath& temp_dir, |
| const std::string& data); |
| |
| // Returns a Fontconfig <edit> stanza. |
| std::string CreateFontconfigEditStanza(const std::string& name, |
| const std::string& type, |
| const std::string& value); |
| |
| // Returns a Fontconfig <test> stanza. |
| std::string CreateFontconfigTestStanza(const std::string& name, |
| const std::string& op, |
| const std::string& type, |
| const std::string& value); |
| |
| // Returns a Fontconfig <alias> stanza. |
| std::string CreateFontconfigAliasStanza(const std::string& original_family, |
| const std::string& preferred_family); |
| |
| } // namespace base |
| |
| #endif // BASE_TEST_FONTCONFIG_UTIL_LINUX_H_ |