private void loadListBox() { this.Invoke((MethodInvoker)(() => listBox1.Items.Clear())); foreach (InventoryMember invMemb in DataStore.Inventory.Values) { Product p = DataStore.getProductByAsin(invMemb.ASIN); FNSkuLabel f = new FNSkuLabel(p.ASIN, invMemb.FNSKU, p.Title, "New", 3.0, 1.0); this.Invoke((MethodInvoker)(() => listBox1.Items.Add(f))); } }
public static void createInitialBindingList() { if (Labels == null) { Labels = new BindingList <FNSkuLabel>(); } Labels.Clear(); foreach (InventoryMember inv in Inventory.Values) { if (Products.ContainsKey(inv.ASIN)) { Product p = Products[inv.ASIN]; var label = new FNSkuLabel(inv.ASIN, inv.FNSKU, p.Title, "New", 1, 3); Labels.Add(label); } } }
public static void Upsert_Product(Product p) { loadFiles(); lock (Products) { Products[p.ASIN] = p; if (Inventory.ContainsKey(p.ASIN)) { InventoryMember inv = Inventory[p.ASIN]; var label = new FNSkuLabel(inv.ASIN, inv.FNSKU, p.Title, "New", 1, 3); if (Labels.Contains(label)) { Labels.Remove(label); } Labels.Add(label); } } saveProduct(); }
public static void Upsert_Inventory(InventoryMember inv) { loadFiles(); lock (Inventory) { Inventory[inv.ASIN] = inv; if (Products.ContainsKey(inv.ASIN)) { Product p = Products[inv.ASIN]; var label = new FNSkuLabel(inv.ASIN, inv.FNSKU, p.Title, "New", 1, 3); if (Labels.Contains(label)) { Labels.Remove(label); } Labels.Add(label); } } saveInventory(); }
public void create(FNSkuLabel label, string condition, int copies, Double widthInches, Double heightInches) { // Create a new PDF document PdfDocument document = new PdfDocument(); document.Info.Title = label.FNSKU; int ImageHeight = 0; for (int i = 0; i < copies; i++) { // Create an empty page PdfPage page = document.AddPage(); page.Orientation = PageOrientation.Landscape; page.Height = XUnit.FromInch(heightInches); page.Width = XUnit.FromInch(widthInches); // Get an XGraphics object for drawing using (XGraphics gfx = XGraphics.FromPdfPage(page)) { using (FNSKUBarcode bc = new FNSKUBarcode(label.FNSKU)) { var barCodeImage = bc.getBarCodeImage(1); ImageHeight = barCodeImage.Height; var xOffsetBcToCenter = (page.Width - barCodeImage.Width) / 2; if (xOffsetBcToCenter < 0) { xOffsetBcToCenter = 0; } gfx.DrawImage(barCodeImage, new Point((int)xOffsetBcToCenter + 20, 2)); } string labelToFit = label.Title; bool fit = false; int fontSize = 10; var font = new XFont("Verdana", fontSize); XSize sizeText = new XSize(); while (!fit) { // Create a font sizeText = gfx.MeasureString(labelToFit, font); if (sizeText.Width < page.Width) { fit = true; } else { if (fontSize > minFontSize) { fontSize--; font = new XFont("Verdana", fontSize); } else { string[] words = labelToFit.Split(' '); if (words.Length > 1) { if (words[words.Length / 2].Length <= 0) { labelToFit = labelToFit.Remove(labelToFit.Length / 2, 2); } else { labelToFit = labelToFit.Replace(words[words.Length / 2], ""); } } else { labelToFit = labelToFit.Remove(labelToFit.Length / 2, 1); } } } } Double xOffsetToCenter = (page.Width - sizeText.Width) / 2; gfx.DrawString(labelToFit, font, XBrushes.Black, new PointF((float)xOffsetToCenter, ImageHeight + 3)); sizeText = gfx.MeasureString(label.FNSKU, font); xOffsetToCenter = (page.Width - sizeText.Width) / 2; gfx.DrawString(label.FNSKU, font, XBrushes.Black, new PointF((float)xOffsetToCenter, (float)ImageHeight + (float)sizeText.Height + 6.0f)); sizeText = gfx.MeasureString(condition, font); xOffsetToCenter = (page.Width - sizeText.Width) / 2; gfx.DrawString(condition, font, XBrushes.Black, new PointF((float)xOffsetToCenter, (float)ImageHeight + (float)sizeText.Height * 2 + 8.0f)); // Draw the text //gfx.DrawString(label.title, font, XBrushes.Black, //new XRect(i.Height+1, 0, page.Width, page.Height), //XStringFormats.Center); // Save the document... } } const string filename = "HelloWorld.pdf"; document.Save(filename); Process.Start(filename); }
public printLabel(FNSkuLabel fnskuLabel) { this.label = fnskuLabel; }