using System; using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; using EpsonPrinter.Enums; using EpsonPrinter.Model; using ESCPOS_NET.Emitters; namespace EpsonPrinter.Services { public class PrintStyleCombination { public PrintStyle Combine(PrintStyleModel printStyleModel) { //Bold if (printStyleModel.Bold && !printStyleModel.DoubleHeight && !printStyleModel.DoubleWidth && !printStyleModel.FontB && !printStyleModel.Underline) return PrintStyle.Bold; if (printStyleModel.Bold && printStyleModel.DoubleHeight && !printStyleModel.DoubleWidth && !printStyleModel.FontB && !printStyleModel.Underline) return PrintStyle.Bold | PrintStyle.DoubleHeight; if(printStyleModel.Bold && printStyleModel.DoubleHeight && printStyleModel.DoubleWidth && !printStyleModel.FontB && !printStyleModel.Underline) return PrintStyle.Bold | PrintStyle.DoubleHeight | PrintStyle.DoubleWidth; if (printStyleModel.Bold && printStyleModel.DoubleHeight && printStyleModel.DoubleWidth && printStyleModel.FontB && !printStyleModel.Underline) return PrintStyle.Bold | PrintStyle.DoubleHeight | PrintStyle.DoubleWidth | PrintStyle.FontB; if (printStyleModel.Bold && printStyleModel.DoubleHeight && printStyleModel.DoubleWidth && printStyleModel.FontB && printStyleModel.Underline) return PrintStyle.Bold | PrintStyle.DoubleHeight | PrintStyle.DoubleWidth | PrintStyle.FontB | PrintStyle.Underline; //DoubleHeight if (printStyleModel.DoubleHeight && !printStyleModel.DoubleWidth && !printStyleModel.FontB && !printStyleModel.Underline) return PrintStyle.DoubleHeight; if (printStyleModel.DoubleHeight && printStyleModel.DoubleWidth && !printStyleModel.FontB && !printStyleModel.Underline) return PrintStyle.DoubleHeight | PrintStyle.DoubleWidth; if (printStyleModel.DoubleHeight && printStyleModel.DoubleWidth && printStyleModel.FontB && !printStyleModel.Underline) return PrintStyle.DoubleHeight | PrintStyle.DoubleWidth | PrintStyle.FontB; if (printStyleModel.DoubleHeight && printStyleModel.DoubleWidth && printStyleModel.FontB && printStyleModel.Underline) return PrintStyle.DoubleHeight | PrintStyle.DoubleWidth | PrintStyle.FontB | PrintStyle.Underline; //DoubleWidth if (printStyleModel.DoubleWidth && !printStyleModel.FontB && !printStyleModel.Underline) return PrintStyle.DoubleWidth; if (printStyleModel.DoubleWidth && printStyleModel.FontB && !printStyleModel.Underline) return PrintStyle.DoubleWidth | PrintStyle.FontB; if (printStyleModel.DoubleWidth && printStyleModel.FontB && printStyleModel.Underline) return PrintStyle.DoubleWidth | PrintStyle.FontB | PrintStyle.Underline; //FontB if (printStyleModel.FontB && !printStyleModel.Underline) return PrintStyle.FontB; if(printStyleModel.FontB && printStyleModel.Underline) return PrintStyle.FontB | PrintStyle.Underline; //Underline if (printStyleModel.Underline) return PrintStyle.Underline; return PrintStyle.None; } } }