/[projects]/dao/DelphiScanner/LabelPrint.pas
ViewVC logotype

Diff of /dao/DelphiScanner/LabelPrint.pas

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 3094 by torben, Fri Aug 19 14:35:39 2016 UTC revision 3099 by torben, Mon Aug 22 18:27:30 2016 UTC
# Line 20  type Line 20  type
20    
21      procedure SendTilPrinter(kontrolKoreliste, RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted : String; var PrintNyLabel : Boolean; BoghandlerNummer : string = '');      procedure SendTilPrinter(kontrolKoreliste, RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted : String; var PrintNyLabel : Boolean; BoghandlerNummer : string = '');
22    
23        procedure PrintSimpelLabel( LabelData : TLabelData) ;
24    
25      procedure PrintFuldPakkeLabel( PakkeshopLabel : TLabelData);      procedure PrintFuldPakkeLabel( PakkeshopLabel : TLabelData);
26      procedure PrintFuldPakkeLabelLille( PakkeshopLabel : TLabelData);      procedure PrintFuldPakkeLabelLille( PakkeshopLabel : TLabelData);
27      procedure PrintFuldPakkeLabelStor( PakkeshopLabel : TLabelData);      procedure PrintFuldPakkeLabelStor( PakkeshopLabel : TLabelData);
# Line 27  type Line 29  type
29    
30      procedure PrintDaodirekteLabel( RuteNummer, Kommentar, BoghandlerNavn : String) ;      procedure PrintDaodirekteLabel( RuteNummer, Kommentar, BoghandlerNavn : String) ;
31    
     procedure TestZpl();  
32      procedure PrintZPL( ZplData : string);      procedure PrintZPL( ZplData : string);
33    
34      function GetPrinterCount() : Integer;      function GetPrinterCount() : Integer;
# Line 55  uses Line 56  uses
56    Math, // DegToRad() bruges i PrinTLabelData    Math, // DegToRad() bruges i PrinTLabelData
57    Forms,    Forms,
58    IdHTTP,    IdHTTP,
59    Graphics    Graphics,
60      XMLDoc
61    ;    ;
62    
63    
# Line 163  begin Line 165  begin
165  //            'Test'  skal vise alarmlinie, samt opdatere listbox1  //            'Test'  skal vise alarmlinie, samt opdatere listbox1
166  //            'Timer' skal kun vise alarmlinie  //            'Timer' skal kun vise alarmlinie
167    
168    if (PrinterNavn = 'Ingen') and ( (tjektype = 'Opstart') or (tjektype = 'Test') ) then  //  if (PrinterNavn = 'Ingen') and ( (tjektype = 'Opstart') or (tjektype = 'Test') ) then
169    begin  //  begin
170    //
171      parentForm.LogMessage( 'Der er fravalgt printer i dette program' );  //    parentForm.LogMessage( 'Der er fravalgt printer i dette program' );
172    end  //  end
173    else if (Printer.Printers.Count = 0) and ( (tjektype = 'Opstart') or (tjektype = 'Test') ) then  //  else
174      if (Printer.Printers.Count = 0) and ( (tjektype = 'Opstart') or (tjektype = 'Test') ) then
175    begin    begin
176      parentForm.LogMessage( 'Der er ikke installeret en printer på denne PC' );      parentForm.LogMessage( 'Der er ikke installeret en printer på denne PC' );
177    end    end
# Line 249  var Line 252  var
252    
253    httpClient: TIdHTTP;    httpClient: TIdHTTP;
254    
255      XMLDocument1: TXMLDocument;
256    
257      LabelData: TLabelData;
258    
259    
260  begin  begin
# Line 263  begin Line 269  begin
269    httpClient.Free();    httpClient.Free();
270    
271    
272      XMLDocument1 := parentForm.GetXMLDocument();
273    
274      XMLDocument1.LoadFromXML(response);
275    
276      LabelData := TLabelData.Create(XMLDocument1);
277    
278      if LabelData.LabelType = 'zpl' then
279      begin
280        PrintZPL(LabelData.ZPL);
281      end
282      else if (LabelData.LabelType = 'simpel') then
283      begin
284        PrintSimpelLabel(LabelData);
285      end
286      else
287      begin
288        PrintFuldPakkeLabel(LabelData);
289      end;
290    
291    
292    
293    
294    
295    
296    
297  end;  end;
# Line 601  begin Line 630  begin
630  end;  end;
631    
632  // Online zpl viewer  // Online zpl viewer
 // http://labelary.com/viewer.html  
 procedure TLabelPrint.TestZpl();  
 var  
   zpl: string;  
 begin  
   zpl :=  
 '^XA'#13#10 +  
 '^PON'#13#10 +  
 '^FWN'#13#10 +  
   
 '^FX Top section with company logo, name and address.'#13#10 +  
 '^CF0,60'#13#10 +  
 '^FO50,50^GB100,100,100^FS'#13#10+  
 '^FO75,75^FR^GB100,100,100^FS'#13#10+  
 '^FO88,88^GB50,50,50^FS'#13#10+  
 '^FO220,50^FDInternational Shipping, Inc.^FS'#13#10+  
 '^CF0,40'#13#10+  
 '^FO220,100^FD1000 Shipping Lane^FS'#13#10+  
 '^FO220,135^FDShelbyville TN 38102^FS'#13#10+  
 '^FO220,170^FDUnited States (USA)^FS'#13#10+  
 '^FO50,250^GB700,1,3^FS'#13#10 +  
 '^XZ'#13#10  
   ;  
633    
   PrintZpl(zpl);  
 end;  
634    
635  procedure TLabelPrint.PrintZPL( ZplData : string);  procedure TLabelPrint.PrintZPL( ZplData : string);
636  var  var
# Line 699  begin Line 703  begin
703    
704  end;  end;
705    
706    procedure TLabelPrint.PrintSimpelLabel( LabelData : TLabelData) ;
707    begin
708      with Printer do
709          begin
710            BeginDoc;
711    
712            Canvas.Font.Size := Config.FontSizeRute;
713            if (Length(LabelData.SimpelLinie1) > 7) then
714            begin
715              Canvas.Font.Size := Config.FontSizeRuteLille;
716            end;
717            Canvas.TextOut(Config.XPosRute, Config.YPosRute, LabelData.SimpelLinie1);
718            Canvas.Font.Size := Config.FontSizeKommentar;
719            LabelData.SimpelLinie2 := StringReplace(LabelData.SimpelLinie2, #$A, ' - ', [rfReplaceAll, rfIgnoreCase]);
720            if (LabelData.SimpelLinie2 = 'Ok') or (LabelData.SimpelLinie2 = 'ALLEREDE SCANNET') then
721            begin
722              LabelData.SimpelLinie2 := '';
723            end;
724            if (LabelData.SimpelLinie3 = 'PAKKE ER SCANNET') then
725            begin
726              LabelData.SimpelLinie3 := '';
727            end;
728            Canvas.TextOut(Config.XPosKommentar, Config.YPosKommentar, LabelData.SimpelLinie2);
729            Canvas.Font.Size := Config.FontSizeBoghandler;
730            Canvas.TextOut(Config.XPosBoghandler, Config.YPosBoghandler, LabelData.SimpelLinie3);
731            EndDoc;
732          end;
733    
734    
735    
736      Printers.SetPrinter( TPrinter.Create() ).Free();//Work around for KB3177725
737    
738    end;
739    
740    
741    
742  function TLabelPrint.GetPrinterCount() : Integer;  function TLabelPrint.GetPrinterCount() : Integer;
743  begin  begin

Legend:
Removed from v.3094  
changed lines
  Added in v.3099

  ViewVC Help
Powered by ViewVC 1.1.20