using System;
namespace RoadFlow.Pinyin.format
{
///
/// 拼音输出格式
///
public class PinyinOutputFormat
{
// 声调格式
// 大小写格式
// 字符v的格式
///
/// 获取声调格式
///
public ToneFormat GetToneFormat { get; private set; }
///
/// 获取大小写格式
///
public CaseFormat GetCaseFormat { get; private set; }
///
/// 获取字符v的格式
///
public VCharFormat GetVCharFormat { get; private set; }
///
/// 使用默认值初始化输出格式
/// ToneFormat.WITH_TONE_MARK,
/// CaseFormat.LOWERCASE,
/// VCharFormat.WITH_U_UNICODE
///
public PinyinOutputFormat()
{
GetToneFormat = ToneFormat.WITH_TONE_MARK;
GetCaseFormat = CaseFormat.LOWERCASE;
GetVCharFormat = VCharFormat.WITH_U_UNICODE;
}
///
/// 通过构造初始化输入格式
///
/// 声调格式
/// 大小写格式
/// 字符V的格式
public PinyinOutputFormat(ToneFormat toneFormat, CaseFormat caseFormat, VCharFormat vCharFormat)
{
SetFormat(toneFormat, caseFormat, vCharFormat);
}
///
/// 通过构造初始化输入格式
///
/// 声调格式字符串
/// 大小写格式字符串
/// 字符V的格式字符串
///
///
///
public PinyinOutputFormat(string toneFormat, string caseFormat, string vCharFormat)
{
SetFormat(toneFormat, caseFormat, vCharFormat);
}
///
/// 设置输入格式
///
/// 声调格式
/// 大小写格式
/// 字符V的格式
public void SetFormat(ToneFormat toneFormat, CaseFormat caseFormat, VCharFormat vCharFormat)
{
GetToneFormat = toneFormat;
GetCaseFormat = caseFormat;
GetVCharFormat = vCharFormat;
}
///
/// 设置输入格式
///
/// 声调格式字符串
/// 大小写格式字符串
/// 字符V的格式字符串
///
///
///
public void SetFormat(string toneFormat, string caseFormat, string vCharFormat)
{
if (!string.IsNullOrEmpty(toneFormat))
{
GetToneFormat = (ToneFormat)Enum.Parse(typeof(ToneFormat), toneFormat);
}
if (!string.IsNullOrEmpty(caseFormat))
{
GetCaseFormat = (CaseFormat)Enum.Parse(typeof(CaseFormat), caseFormat);
}
if (!string.IsNullOrEmpty(vCharFormat))
{
GetVCharFormat = (VCharFormat)Enum.Parse(typeof(VCharFormat), vCharFormat);
}
}
}
}