Module bus.extra

Class HoubbProvider

java.lang.Object
org.miaixz.bus.extra.pinyin.provider.houbb.HoubbProvider
All Implemented Interfaces:
Serializable, org.miaixz.bus.core.Provider, PinyinProvider

public class HoubbProvider extends Object implements PinyinProvider
Encapsulates the houbb Pinyin engine.

houbb pinyin (https://github.com/houbb/pinyin) encapsulation.

To introduce (dependency):

 <dependency>
     <groupId>com.github.houbb</groupId>
     <artifactId>pinyin</artifactId>
     <version>0.2.0</version>
 </dependency>
 
Since:
Java 17+
Author:
Kimi Liu
See Also:
  • Constructor Details

    • HoubbProvider

      public HoubbProvider()
      Constructs a new HoubbProvider instance. Checks if the houbb pinyin library is available (via PinyinHelper class).
  • Method Details

    • getPinyin

      public String getPinyin(char c, boolean tone)
      Description copied from interface: PinyinProvider
      Converts a single character to its Pinyin, with an option to retain tone marks. If the character is a Chinese character, its Pinyin is returned; otherwise, the character itself is returned as a string.
      Specified by:
      getPinyin in interface PinyinProvider
      Parameters:
      c - The character to convert.
      tone - true to retain tone marks in the Pinyin, false otherwise.
      Returns:
      The Pinyin of the Chinese character, or the character itself if not Chinese.
    • getPinyin

      public String getPinyin(String str, String separator, boolean tone)
      Description copied from interface: PinyinProvider
      Retrieves the complete Pinyin for a given string, with an option to retain tone marks. Non-Chinese characters remain as is.
      Specified by:
      getPinyin in interface PinyinProvider
      Parameters:
      str - The input string.
      separator - The separator to use between each Pinyin character.
      tone - true to retain tone marks in the Pinyin, false otherwise.
      Returns:
      The Pinyin representation of the string.