private static void MakeFont(TOptions.TArgs opt) { MieFont fontEn = new MieFont(); fontEn.Load(opt.FileNameSource, opt.EnumFormatType); //// 自作のTMPフォント。形式は Type2 に固定。 MieFont fontJp = new MieFont(); fontJp.Load(opt.FileNameTarget, MieFont.NFormatType.Type2); var newJp = MieFontConvert.Convert( fontEn, opt.EnumFormatType, fontJp, MieFont.NFormatType.Type2, opt.Ascender); var fileName = Path.GetFileName(opt.FileNameSource); var fullPath = Path.Combine(opt.FolderNameOutput, fileName); newJp.Save(fullPath, opt.EnumFormatType); if (opt.UseList) { var dumpPath = $"{fullPath}.txt"; newJp.Dump(dumpPath, opt.IsDetail); } }
public void Write(BinaryWriter writer) { MieFont.WriteString(writer, this.FontSourcePath); writer.Write(this.FontSizeMode); writer.Write(this.FontSize); writer.Write(this.FontPadding); writer.Write(this.FontPackingMode); writer.Write(this.FontAtlasWidth); writer.Write(this.FontAtlasHeight); writer.Write(this.FontCharacterSet); writer.Write(this.FontStyle); writer.Write(this.FontStyleModifier); writer.Write(this.FontRenderMode); writer.Write(this.FontKerning); MieFont.WritePadding(writer); }
public static MieFontCreationSetting Read(BinaryReader br) { var setting = new MieFontCreationSetting(); setting.FontSourcePath = MieFont.ReadString(br); setting.FontSizeMode = br.ReadInt32(); setting.FontSize = br.ReadInt32(); setting.FontPadding = br.ReadInt32(); setting.FontPackingMode = br.ReadInt32(); setting.FontAtlasWidth = br.ReadInt32(); setting.FontAtlasHeight = br.ReadInt32(); setting.FontCharacterSet = br.ReadInt32(); setting.FontStyle = br.ReadInt32(); setting.FontStyleModifier = br.ReadSingle(); setting.FontRenderMode = br.ReadInt32(); setting.FontKerning = br.ReadBoolean(); MieFont.ReadPadding(br); return(setting); }
public static MieFont Convert( MieFont en, MieFont.NFormatType formatTypeEN, MieFont jp, MieFont.NFormatType formatTypeJP, bool forceAdjustAscender) { MieFont newFont = new MieFont(); newFont.Header = en.Header; newFont.FontEntries = jp.FontEntries; newFont.Footer = en.Footer; newFont.Header.Convert( jp.Header, formatTypeEN, forceAdjustAscender); newFont.Footer.Convert(jp.Footer, formatTypeJP); return(newFont); }