![]()  | 
	
 
  | 
		
			
  | 	
	
	
		
		|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны | 
![]()  | 
	
	
| 
		 | 
	Опции темы | Поиск в этой теме | Опции просмотра | 
| 
		 
			 
			#1  
			
			
			
			
		 
		
		
	 | 
|||
		
		
  | 
|||
| 
	
	
		
			
			 вот код 
		
	
		
		
		
		
		
	
		
		
	
	
	Jpg.LoadFromFile(FileName); Canvas.StretchDraw(Bounds(PX, PY, PW, PH), Jpg); проблема в том, что FileName (jpg-файл) должен печататся 3 шт на одной странице, а печатает иногда все три, иногда одну и то такую захочет   . закономерность выявить не могу .З.Ы. на старом принтере НР LJ1100 печатает нормально(принтер поломался   ), купили новый НР 1102 на нём и любом другом не печатает  . | 
| 
		 
			 
			#2  
			
			
			
			
		 
		
		
	 | 
||||
		
		
  | 
||||
| 
	
	
		
			
			 ЖЖОШ... я тоже не могу, и, знаешь, чувак,, штатный телепат наш в отпуск ушОл. Он ща оттопыривается с деФФками на белом песочке мальдиФских островов. А мы, из-за этого *****а, не знаем КАК ЖЕ, бля, ВЫГЛЯДИТ ТВОЙ КОД. 
		
	
		
		
		
		
			
		
		
		
		
	
		
		
	
	
	 | 
| 
		 
			 
			#3  
			
			
			
			
		 
		
		
	 | 
||||
		
		
  | 
||||
| 
	
	
		
			
			 Даа, это сильно. Какое отношение кусочек вашего кода имеет к печати и уж к количеству копий - это для меня тоже загадка. 
		
	
		
		
		
		
			
		
		
		
		
	
		
		
	
	
	 | 
| 
		 
			 
			#4  
			
			
			
			
		 
		
		
	 | 
|||
		
		
  | 
|||
| 
	
	
		
			
			 звыняйте. 
		
	
		
		
		
		
		
		
			вот полностю код. Код: 
	  Result := True;
  Screen.Cursor := crHourglass;
  with Printer do
    try
      PrinterIndex := Prnt;
      BeginDoc;
      with Canvas.Font do
      begin
        Name := 'Arial Cyr';
        Size := 9;//7; //10;
        PInch := PixelsPerInch;
        Style := [fsBold];
      end;
      try
        for J := Low(Bmp) to High(Bmp) do
          begin
          DrawPrintReportBmp(Canvas, 0, PInch, Bmp[J]);
          end;
        for I := Low(Arr) to High(Arr) do
          DrawPrintReportRec(Canvas, CopyNo, PInch, Arr[i], False, DotMatrix);
      finally
        EndDoc;
      end;         
  finally
    Screen.Cursor := crDefault;
  end;
procedure DrawPrintReportBmp(Canvas: TCanvas; PageNo, PerInch: Integer;
  const Rec: TPrintReportBmp);
begin
  with Rec do
    //if (AtPage <= 0) or (AtPage = PageNo) then
      ImageDrawIn(Canvas, PerInch, X, Y, W, H, FileName);
end;
procedure ImageDrawIn(Canvas: TCanvas; PerInch: Integer;
  X, Y, W, H: Extended; const FileName: String);
var
  Jpg: TJpegImage;
  PX, PY, PW, PH: Integer;
begin
  if not FileExists(FileName) then
  begin
    ErrorFmtDlg(SDataModErrorTemplateNotExists, [FileName]);
    Exit;
  end;
  PX := Round(PerInch * X / 2.54);
  PY := Round(PerInch * Y / 2.54);
  PW := Round(PerInch * W / 2.54);
  PH := Round(PerInch * H / 2.54);
  Jpg := TJPEGImage.Create;
  try
    Jpg.LoadFromFile(FileName);
//    sleep(1500);
    Canvas.StretchDraw(Bounds(PX, PY, PW, PH), Jpg);
  finally
    Jpg.Free;
  end;
end;Последний раз редактировалось Admin, 02.05.2011 в 19:44.  |