예제 #1
0
 private void CurrentStationCB_SelectedIndexChanged(object sender, System.EventArgs e)
 {
     if (CurrentStationCB.Text == "Receipt")
     {
         CurrentStation = PrinterStation.Receipt;
     }
     else if (CurrentStationCB.Text == "Slip")
     {
         CurrentStation = PrinterStation.Slip;
     }
     else if (CurrentStationCB.Text == "Journal")
     {
         CurrentStation = PrinterStation.Journal;
     }
     else if (CurrentStationCB.Text == "SlipJournal")
     {
         CurrentStation = PrinterStation.TwoSlipJournal;
     }
     else if (CurrentStationCB.Text == "SlipReceipt")
     {
         CurrentStation = PrinterStation.TwoSlipReceipt;
     }
     else if (CurrentStationCB.Text == "ReceiptJournal")
     {
         CurrentStation = PrinterStation.TwoReceiptJournal;
     }
 }
예제 #2
0
        public void Execute(PosPrinter printer, PrinterStation station)
        {
            if (!printer.CapRecBarCode && station == PrinterStation.Receipt || !printer.CapSlpBarCode && station == PrinterStation.Slip)
            {
                return;
            }

            var alignment = 0;

            switch (Alignment)
            {
            case Alignment.Center:
                alignment = PosPrinter.PrinterBarCodeCenter;
                break;

            case Alignment.Left:
                alignment = PosPrinter.PrinterBarCodeLeft;
                break;

            case Alignment.Right:
                alignment = PosPrinter.PrinterBarCodeRight;
                break;
            }

            printer.PrintBarCode(station, Data, Symbology, Height, Width, alignment, TextPosition);
        }
예제 #3
0
        public void Execute(PosPrinter printer, PrinterStation station)
        {
            if (!printer.CapRecBitmap && station == PrinterStation.Receipt || !printer.CapSlpBitmap && station == PrinterStation.Slip)
            {
                return;
            }

            if (!File.Exists(FileName))
            {
                return;
            }

            var alignment = 0;

            switch (Alignment)
            {
            case Alignment.Center:
                alignment = PosPrinter.PrinterBitmapCenter;
                break;

            case Alignment.Left:
                alignment = PosPrinter.PrinterBitmapLeft;
                break;

            case Alignment.Right:
                alignment = PosPrinter.PrinterBitmapRight;
                break;
            }

            printer.PrintBitmap(PrinterStation.Receipt, FileName, PosPrinter.PrinterBitmapAsIs, alignment);
        }
예제 #4
0
        protected override PrintResults PrintNormalImpl(PrinterStation station, PrinterState printerState, string data)
        {
            if (station == PrinterStation.Receipt && (printerState.RecRotationMode & PrintRotation.Rotate180) == PrintRotation.Rotate180)
            {
                Window.DisplayText("[Begin " + printerState.RecRotationMode.ToString() + " rotation]\r\n");
            }
            else if (station == PrinterStation.Slip && (printerState.SlpRotationMode & PrintRotation.Rotate180) == PrintRotation.Rotate180)
            {
                Window.DisplayText("[Begin " + printerState.SlpRotationMode.ToString() + " rotation]\r\n");
            }

            Window.DisplayText(data);

            if (station == PrinterStation.Receipt && (printerState.RecRotationMode & PrintRotation.Rotate180) == PrintRotation.Rotate180)
            {
                Window.DisplayText("[End " + printerState.RecRotationMode.ToString() + " rotation]\r\n");
            }
            else if (station == PrinterStation.Slip && (printerState.SlpRotationMode & PrintRotation.Rotate180) == PrintRotation.Rotate180)
            {
                Window.DisplayText("[End " + printerState.SlpRotationMode.ToString() + " rotation]\r\n");
            }

            Thread.Sleep(printDelay);

            return(GetPrintStats(station, data.Length));
        }
예제 #5
0
        public void Execute(PosPrinter printer, PrinterStation station)
        {
            if (!printer.CapRecStamp && station == PrinterStation.Receipt)
            {
                return;
            }

            printer.PrintNormal(station, EscapeSequence.FireStamp);
        }
예제 #6
0
 public override void PrintMemoryBitmap(PrinterStation station, Bitmap data, int width, int alignment)
 {
     using (MemoryStream ms = new MemoryStream())
     {
         data.Save(ms, System.Drawing.Imaging.ImageFormat.Bmp);
         string memorybitmap = InteropCommon.ToStringFromByteArray(ms.ToArray(), _binaryConversion);
         VerifyResult(_cco.PrintMemoryBitmap((int)station, memorybitmap, (int)OPOSPOSPrinterConstants.PTR_BMT_BMP, width, alignment));
     }
 }
예제 #7
0
        public void Execute(PosPrinter printer, PrinterStation station)
        {
            if (!printer.CapRecPaperCut && station == PrinterStation.Receipt)
            {
                return;
            }

            printer.PrintNormal(station, EscapeSequence.FeedAndPaperCut(PercentCut));
        }
예제 #8
0
        public void Execute(PosPrinter printer, PrinterStation station)
        {
            if (!printer.CapRecBitmap && station == PrinterStation.Receipt || !printer.CapSlpBitmap && station == PrinterStation.Slip)
            {
                return;
            }

            printer.PrintNormal(station, EscapeSequence.PrintBitmap(BitmapNumber));
        }
예제 #9
0
        private PrintResults GetPrintStats(PrinterStation station, int chars)
        {
            PrintResults pr = new PrintResults();

            if (station == PrinterStation.Journal)
            {
                pr.JournalLinePrintedCount      = 1;
                pr.JournalCharacterPrintedCount = chars;
            }
            else if (station == PrinterStation.Receipt)
            {
                pr.ReceiptLinePrintedCount      = 1;
                pr.ReceiptCharacterPrintedCount = chars;
            }
            else if (station == PrinterStation.Slip)
            {
                pr.SlipLinePrintedCount      = 1;
                pr.SlipCharacterPrintedCount = chars;
            }
            return(pr);
        }
예제 #10
0
        public void Execute(PosPrinter printer, PrinterStation station)
        {
            if (CharactersPerLine.HasValue)
            {
                if (station == PrinterStation.Receipt)
                {
                    printer.RecLineChars = CharactersPerLine.Value;
                }
                else if (station == PrinterStation.Slip)
                {
                    printer.SlpLineChars = CharactersPerLine.Value;
                }
            }

            if (station == PrinterStation.Slip)
            {
                printer.PrintNormal(station, Text);
            }
            else
            {
                printer.PrintNormal(station, ToString());
            }
        }
예제 #11
0
 public override void RotatePrint(PrinterStation station, PrintRotation rotation)
 {
     VerifyResult(_cco.RotatePrint((int)station, (int)rotation));
 }
예제 #12
0
 public override void PrintNormal(PrinterStation station, string data)
 {
     VerifyResult(_cco.PrintNormal((int)station, data));
 }
예제 #13
0
 public override void PrintTwoNormal(PrinterStation stations, string data1, string data2)
 {
     VerifyResult(_cco.PrintTwoNormal((int)stations, data1, data2));
 }
예제 #14
0
 public override void PrintImmediate(PrinterStation station, string data)
 {
     VerifyResult(_cco.PrintImmediate((int)station, data));
 }
예제 #15
0
        private void CurrentStationCB_SelectedIndexChanged(object sender, System.EventArgs e)
        {
            if (CurrentStationCB.Text == "Receipt")
                CurrentStation = PrinterStation.Receipt;
            else if (CurrentStationCB.Text == "Slip")
                CurrentStation = PrinterStation.Slip;
            else if (CurrentStationCB.Text == "Journal")
                CurrentStation = PrinterStation.Journal;
            else if (CurrentStationCB.Text == "SlipJournal")
                CurrentStation = PrinterStation.TwoSlipJournal;
            else if (CurrentStationCB.Text == "SlipReceipt")
                CurrentStation = PrinterStation.TwoSlipReceipt;
            else if (CurrentStationCB.Text == "ReceiptJournal")
                CurrentStation = PrinterStation.TwoReceiptJournal;

        }
예제 #16
0
 public override void ValidateData(PrinterStation station, string data)
 {
     VerifyResult(_cco.ValidateData((int)station, data));
 }
예제 #17
0
		protected override PrintResults PrintNormalImpl(PrinterStation station, PrinterState printerState, string data)
		{
			if (station == PrinterStation.Receipt && (printerState.RecRotationMode & PrintRotation.Rotate180) == PrintRotation.Rotate180)
				Window.DisplayText("[Begin " + printerState.RecRotationMode.ToString() + " rotation]\r\n");
			else if (station == PrinterStation.Slip && (printerState.SlpRotationMode & PrintRotation.Rotate180) == PrintRotation.Rotate180)
				Window.DisplayText("[Begin " + printerState.SlpRotationMode.ToString() + " rotation]\r\n");

			Window.DisplayText(data );
			
			if (station == PrinterStation.Receipt && (printerState.RecRotationMode & PrintRotation.Rotate180) == PrintRotation.Rotate180)
				Window.DisplayText("[End " + printerState.RecRotationMode.ToString() + " rotation]\r\n");
			else if (station == PrinterStation.Slip && (printerState.SlpRotationMode & PrintRotation.Rotate180) == PrintRotation.Rotate180)
				Window.DisplayText("[End " + printerState.SlpRotationMode.ToString() + " rotation]\r\n");
			
			Thread.Sleep(printDelay);

			return GetPrintStats(station, data.Length);
		}
예제 #18
0
 protected override PrintResults PrintImmediateImpl(PrinterStation station, string data, PrinterState state)
 {
     Window.DisplayText(data);
     Thread.Sleep(printDelay);
     return(GetPrintStats(station, data.Length));
 }
예제 #19
0
 public override void DrawRuledLine(PrinterStation station, string positionList, LineDirection direction, int lineWidth, LineStyle style, int lineColor)
 {
     VerifyResult(_cco.DrawRuledLine((int)station, positionList, (int)direction, lineWidth, (int)style, lineColor));
 }
예제 #20
0
 protected override void ValidateDataImpl(PrinterStation station, string data)
 {
 }
예제 #21
0
 public void Execute(PosPrinter printer, PrinterStation station)
 {
     printer.PrintNormal(station, EscapeSequence.FeedReverse(Lines));
 }
예제 #22
0
		protected override void	ValidateDataImpl(PrinterStation station, string data)
		{
		}
예제 #23
0
		protected override PrintResults PrintImmediateImpl(PrinterStation station, string data, PrinterState state)
		{
			Window.DisplayText(data );
			Thread.Sleep(printDelay);
			return GetPrintStats(station, data.Length);
		}
예제 #24
0
		private PrintResults GetPrintStats(PrinterStation station, int chars)
		{
			PrintResults pr = new PrintResults();
			if (station == PrinterStation.Journal)
			{
				pr.JournalLinePrintedCount = 1;
				pr.JournalCharacterPrintedCount = chars;
			}
			else if (station == PrinterStation.Receipt)
			{
				pr.ReceiptLinePrintedCount = 1;
				pr.ReceiptCharacterPrintedCount = chars;
			}
			else if (station == PrinterStation.Slip)
			{
				pr.SlipLinePrintedCount = 1;
				pr.SlipCharacterPrintedCount = chars;
			}
			return pr;
		}
예제 #25
0
 public override void SetBitmap(int bitmapNumber, PrinterStation station, string fileName, int width, int alignment)
 {
     VerifyResult(_cco.SetBitmap(bitmapNumber, (int)station, fileName, width, alignment));
 }
예제 #26
0
 public override void PrintBarCode(PrinterStation station, string data, BarCodeSymbology symbology, int height, int width, int alignment, BarCodeTextPosition textPosition)
 {
     VerifyResult(_cco.PrintBarCode((int)station, data, (int)symbology, height, width, alignment, (int)textPosition));
 }
예제 #27
0
 public override void TransactionPrint(PrinterStation station, PrinterTransactionControl control)
 {
     VerifyResult(_cco.TransactionPrint((int)station, (int)control));
 }
예제 #28
0
 public override void PrintBitmap(PrinterStation station, string fileName, int width, int alignment)
 {
     VerifyResult(_cco.PrintBitmap((int)station, fileName, width, alignment));
 }
예제 #29
0
 public void Execute(PosPrinter printer, PrinterStation station)
 {
     printer.PrintNormal(station, EscapeSequence.PrintTopLogo);
 }
예제 #30
0
 public void Execute(PosPrinter printer, PrinterStation station)
 {
     printer.PrintNormal(station, EscapeSequence.FeedUnits(Units));
 }