internal void Load() { ConfigData cd = K12.Data.School.Configuration[Global.ReportName]; #region 讀取使用者的節權設定 if (cd.Contains("節權設定") && !string.IsNullOrEmpty(cd["節權設定"])) { XmlElement config = K12.Data.XmlHelper.LoadXml(cd["節權設定"]); PrintPeriod = bool.Parse(config.SelectSingleNode("Period").InnerText); PrintCredit = bool.Parse(config.SelectSingleNode("Credit").InnerText); } else { PrintPeriod = false; PrintCredit = false; } #endregion #region 讀取使用者的假別設定 if (cd.Contains("假別設定") && !string.IsNullOrEmpty(cd["假別設定"])) { XmlElement config = K12.Data.XmlHelper.LoadXml(cd["假別設定"]); foreach (XmlElement type in config.SelectNodes("Type")) { string typeName = type.GetAttribute("Text"); if (!PrintTypes.ContainsKey(typeName)) { PrintTypes.Add(typeName, new List <string>()); } foreach (XmlElement absence in type.SelectNodes("Absence")) { string absenceName = absence.GetAttribute("Text"); if (!PrintTypes[typeName].Contains(absenceName)) { PrintTypes[typeName].Add(absenceName); } } } } #endregion #region 讀取使用者的領域科目設定 if (cd.Contains("領域科目設定") && !string.IsNullOrEmpty(cd["領域科目設定"])) { XmlElement xml = K12.Data.XmlHelper.LoadXml(cd["領域科目設定"]); XmlElement staticNode = (XmlElement)xml.SelectSingleNode("Static"); if (staticNode != null) { try { DomainSubjectSetup = (DomainSubjectSetup)Enum.Parse(DomainSubjectSetup.GetType(), staticNode.InnerText, true); } catch (Exception) { } } } #endregion }
internal AsyncPrimeFinder(PrintTypes printType, bool loadPrimes) { if (loadPrimes) { LoadPrimes(); } switch (printType) { case PrintTypes.Normal: solver.TenThousandthPrime += PrintTenThousandth; solver.MillionthPrime += PrintMillionth; break; case PrintTypes.Fast: solver.MillionthPrime += PrintMillionth; break; case PrintTypes.Fancy: solver.HundredThousandthPrime += (uint p, uint pCount) => Console.Write('*'); solver.MillionthPrime += PrintMillionthFancy; break; default: break; } solvingThread = new Thread(new ThreadStart(solver.Solve)); }
public void Load() { ConfigData cd = K12.Data.School.Configuration[_name]; #region 假別設定 if (cd.Contains("假別設定") && !string.IsNullOrEmpty(cd["假別設定"])) { XmlElement config = K12.Data.XmlHelper.LoadXml(cd["假別設定"]); foreach (XmlElement type in config.SelectNodes("Type")) { string typeName = type.GetAttribute("Text"); if (!PrintTypes.ContainsKey(typeName)) { PrintTypes.Add(typeName, new List <string>()); } foreach (XmlElement absence in type.SelectNodes("Absence")) { string absenceName = absence.GetAttribute("Text"); if (!PrintTypes[typeName].Contains(absenceName)) { PrintTypes[typeName].Add(absenceName); } } } } #endregion _asWithExam.Clear(); foreach (JHAEIncludeRecord ae in JHAEInclude.SelectAll()) { if (ae.RefExamID == Exam.ID) { if (!_asWithExam.Contains(ae.RefAssessmentSetupID)) { _asWithExam.Add(ae.RefAssessmentSetupID); } } } // 評分樣板對照 aeExamName.Clear(); foreach (JHAEIncludeRecord ae in JHAEInclude.SelectAll()) { if (aeExamName.ContainsKey(ae.RefAssessmentSetupID)) { if (!aeExamName[ae.RefAssessmentSetupID].Contains(ae.ExamName)) { aeExamName[ae.RefAssessmentSetupID].Add(ae.ExamName); } } else { List <string> exList = new List <string>(); exList.Add(ae.ExamName); aeExamName.Add(ae.RefAssessmentSetupID, exList); } } }
public bool SetupThePrinting(PrintDocument MyPrintDocument, SYSPrintsettings theSysPrintsetting, PrintInfo thePrintInfo) { PrintDialog MyPrintDialog = new PrintDialog(); MyPrintDialog.AllowCurrentPage = false; MyPrintDialog.AllowPrintToFile = false; MyPrintDialog.AllowSelection = false; MyPrintDialog.AllowSomePages = false; MyPrintDialog.PrintToFile = false; MyPrintDialog.ShowHelp = false; MyPrintDialog.ShowNetwork = false; MyPrintDialog.PrinterSettings.DefaultPageSettings.Landscape = false; MyPrintDocument.DocumentName = thePrintInfo.CustomerName + "标签"; MyPrintDocument.PrinterSettings = MyPrintDialog.PrinterSettings; MyPrintDocument.DefaultPageSettings = MyPrintDialog.PrinterSettings.DefaultPageSettings; foreach (PrinterResolution item in MyPrintDocument.PrinterSettings.PrinterResolutions) { if (item.X > 100 && item.Y > 100) { MyPrintDocument.DefaultPageSettings.PrinterResolution = item; } } MyPrintDocument.DefaultPageSettings.Margins = new Margins(0, 0, 0, 0); Invoice.Titel.Clear(); Invoice.Details.Clear(); Invoice.Floot.Clear(); PrintSettings printSettings = PrintSettings.GetSettings(); PrintTypes printTypes = new PrintTypes(); //循环printSetting表内的设置项 foreach (PrintSetting printSetting in printSettings) { foreach (PrintType printType in printTypes) { //获取属性描述对应的属性名称 if (printType.TypeText == printSetting.PrintText) { Type type = thePrintInfo.GetType(); //获取类型 System.Reflection.PropertyInfo propertyInfo = type.GetProperty(printType.TypeName); //获取指定名称的属性 string value_Old = propertyInfo.GetValue(thePrintInfo, null).ToString(); //获取属性值 Invoice.Details.Add(new InvoiceDetail(printSetting.PrintLable + value_Old, printSetting.X, printSetting.Y, printSetting.Font, printSetting.FontSize)); } } } print = new LPTPrinter(MyPrintDocument, Color.Black); Invoice.IsPageturn = theSysPrintsetting.IsPageturn; Invoice.ItemHeight_M = 40; Invoice.BlankHeight_M = 0; return(true); }
public IPrint PrintModeSelector(PrintTypes printType) { if (printType == PrintTypes.TextFile) { return(new PrintTextFile()); } else if (printType == PrintTypes.PrintToFile) { return(new PrintToPaper()); } return(null); }
/// <summary> /// Metodo de Renderização padrão /// </summary> /// <param name="e"></param> protected override void OnPaint(PaintEventArgs e) { base.OnPaint(e); PrintType = PrintTypes.Image; try { Print(e.Graphics); } catch (Exception ex) { e.Graphics.DrawString(ex.Message + "\r\n" + ex.StackTrace, new Font("Arial", 12), Brushes.Black, new RectangleF(0, 0, 640, 670)); } }
static void PrintXml(String filePath, PrintTypes printType) { String format = String.Empty; switch (printType) { case PrintTypes.PrintOriginal: format = "■ Original file:/n{0}"; break; case PrintTypes.PrintEncrypt: format = "■ Encryptd file:/n{0}"; break; case PrintTypes.PrintDecrypt: format = "■ Decrypted file:/n{0}"; break; } XmlDocument doc = new XmlDocument(); //doc.PreserveWhitespace = true; doc.Load(filePath); XmlWriterSettings xmlSetting = new XmlWriterSettings(); xmlSetting.Indent = true; xmlSetting.IndentChars = "/t"; xmlSetting.Encoding = Encoding.UTF8; MemoryStream stream = new MemoryStream(); XmlWriter writer = XmlWriter.Create(stream, xmlSetting); doc.Save(writer); doc.Save(filePath); // Reload the file and update the doc.InnerXml property. doc.PreserveWhitespace = true; doc.Load(filePath); Console.WriteLine(format, doc.InnerXml); }
public PrintTypeAttribute(PrintTypes pt) { this.PrintType = pt; }
private string ReplaceBaseInvoiceFields(Invoices invoice, string xmlMainXMLDoc, PrintTypes printType) { var order = invoice.Orders; if (printType == PrintTypes.InvoiceStorno) { xmlMainXMLDoc = xmlMainXMLDoc.Replace("#InvoiceType", "Gutschrift"); } else { xmlMainXMLDoc = xmlMainXMLDoc.Replace("#InvoiceType", "Rechnung"); } xmlMainXMLDoc = xmlMainXMLDoc.Replace("#InvoiceNumber", invoice.InvoiceNumber); xmlMainXMLDoc = xmlMainXMLDoc.Replace("#InvoiceDate", invoice.CreateDate.ToShortDateString()); xmlMainXMLDoc = xmlMainXMLDoc.Replace("#OrderNumber", order.OrderNumber); xmlMainXMLDoc = ReplaceUstId(xmlMainXMLDoc, order); xmlMainXMLDoc = ReplaceFooterTexts(xmlMainXMLDoc, order, invoice); return xmlMainXMLDoc; }
private string ReplaceFields(IOrdersManager ordersManager, int id, PrintTypes printType, string xmlMainXMLDoc, IInvoicesManager invoicesManager, ITaxesManager taxesManager, Invoices invoice = null, IInvoiceStornosManager invoiceStornosManager = null, ITransportOrdersManager transportOrdersManager = null, ITermsManager termsManager = null, IEnumerable<Image> images = null) { string result = xmlMainXMLDoc; switch (printType) { case PrintTypes.Order: var order = ordersManager.GetById(id); result = ReplaceCommonFields(order, result); result = ReplaceBaseOrderFields(order, result); result = result.Replace("#SignatureDate", order.CreateDate.AddDays(2).ToShortDateString()); result = ReplaceRentPositions(order, result, taxesManager); result = ReplaceTotalPrice(order, result, taxesManager); result = ReplaceRentAdditionalCostPositions(order, result); break; case PrintTypes.Offer: order = ordersManager.GetById(id); result = ReplaceCommonFields(order, result); result = ReplaceBaseOfferFields(order, result); result = ReplaceBaseOrderFields(order, result); result = ReplaceRentPositions(order, result, taxesManager); result = ReplaceRentAdditionalCostPositions(order, result); break; case PrintTypes.Invoice: if (invoice == null) { invoice = invoicesManager.GetById(id); } order = invoice.Orders; result = ReplaceCommonFields(order, result); result = ReplaceBaseOrderFields(order, result); result = ReplaceBaseInvoiceFields(invoice, result, printType); bool manualPricePrinted = false; result = ReplaceInvoicePositions(invoice, invoice.InvoicePositions.ToList(), result, "#PositionDescription", "#PositionPrice", "Leistungen: ", ref manualPricePrinted); result = ReplaceInvoicePrices(invoice, result); break; case PrintTypes.InvoiceStorno: var invoiceStorno = invoiceStornosManager.GetById(id); invoice = invoiceStorno.Invoices; order = invoice.Orders; result = ReplaceCommonFields(order, result); result = ReplaceBaseOrderFields(order, result); result = ReplaceBaseInvoiceFields(invoice, result, printType); result = ReplaceInvoiceStornoPrices(invoiceStorno, result); result = ReplaceFieldValue(result, "#FreeText", invoiceStorno.FreeText); break; case PrintTypes.ReminderMail: invoice = invoicesManager.GetById(id); order = invoice.Orders; result = ReplaceCommonFields(order, result); result = ReplaceReminderPositions(invoice.InvoicePositions.ToList(), result); result = ReplaceReminderTotalPrice(invoice, result, taxesManager); break; case PrintTypes.DeliveryNote: var term = termsManager.GetById(id); result = ReplaceCommonFields(term.Orders, result); result = ReplaceBaseOrderFields(term.Orders, result); result = result.Replace("#DeliveryNoteType", "Lieferschein"); result = result.Replace("#DateType", "Liefertermin"); result = result.Replace("#AdressType", "Lieferanschrift"); result = result.Replace("#OrderNumber", term.Orders.OrderNumber); result = ReplacePositionWithDescription(term, result); if (term.DeliveryNoteSignatures.Count != 0) { var doc = XDocument.Parse(result); var signatureElement = doc.Descendants().FirstOrDefault(o => o.Value.Equals("#Signature", StringComparison.InvariantCultureIgnoreCase)); if (signatureElement != null && images != null && images.Count() != 0) { var currentElement = signatureElement; for (var i = 0; i < images.Count(); i++) { var image = images.ElementAt(images.Count() - i - 1); //TODO doesnt work (( //pkg.CreateRelationship(uri, TargetMode.Internal, // "Http://schemas.openxmlformats.org/officeDocument/2006/relationships/image", // "barcodeImageId"); //insert image XmlElement tagDrawing = GetImageTag(image.Width, image.Height, term.DeliveryNoteSignatures.Count - i); signatureElement.AddAfterSelf(XDocument.Parse(tagDrawing.InnerXml).Root); } signatureElement.Remove(); result = doc.Root.ToString(); } else { result = result.Replace("#Signature", String.Empty); } } else { result = result.Replace("#Signature", String.Empty); } break; default: throw new NotImplementedException(); } return result; }
private MemoryStream PrepareCommonOrderPrintData(IOrdersManager ordersManager, int id, string path, PrintTypes type, IInvoicesManager invoicesManager, ITaxesManager taxesManager, IInvoiceStornosManager invoiceStornosManager = null, ITransportOrdersManager transportOrdersManager = null, ITermsManager termsManager = null) { var result = new MemoryStream(); try { Package pkg; PackagePart part; XmlReader xmlReader; XDocument xmlMainXMLDoc; GetXmlDoc(path, result, out pkg, out part, out xmlReader, out xmlMainXMLDoc); var images = new List<Image>(); if (type == PrintTypes.DeliveryNote) { var term = termsManager.GetById(id); for (var i = 0; i < term.DeliveryNoteSignatures.Count; i++) { var deliveryNoteSignature = term.DeliveryNoteSignatures.ElementAt(term.DeliveryNoteSignatures.Count - i - 1); //TODO doesnt work (( //pkg.CreateRelationship(uri, TargetMode.Internal, // "Http://schemas.openxmlformats.org/officeDocument/2006/relationships/image", // "barcodeImageId"); byte[] bytes = Convert.FromBase64String(deliveryNoteSignature.Signature.Replace("data:image/png;base64,", "")); Image image; using (MemoryStream ms = new MemoryStream(bytes)) { image = Image.FromStream(ms); } images.Add(image); } } //replace fields var templateBody = ReplaceFields(ordersManager, id, type, xmlMainXMLDoc.Root.ToString(), invoicesManager, taxesManager, null, invoiceStornosManager, transportOrdersManager, termsManager, images); xmlMainXMLDoc = SaveDoc(result, pkg, part, xmlReader, xmlMainXMLDoc, templateBody); InsertImages(result, images); var doc = new Spire.Doc.Document(); doc.LoadFromStream(result, Spire.Doc.FileFormat.Docx); doc.JPEGQuality = 100; result = new MemoryStream(); doc.SaveToStream(result, Spire.Doc.FileFormat.PDF); } catch { } return result; }
public MultithreadedPrimeFinder(PrintTypes printType, uint upperBound, uint batchSize = 1_000_000, byte maxBatches = 8) : this()