Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.10.23;
Скачать: CL | DM;

Вниз

Функция Printer и лазерные принтеры   Найти похожие ветки 

 
JB   (2005-10-03 13:48) [0]

Уважаемые Мастера! Подскажите пожалуйста в чем тут проблема.
Пишу программу (курсовая работа), и надо на принтер кое чего отправить, я использую функцию Printer. Дома где у меня струйник все работает, а на лазерниках (на всех которые мне попались под руку) из принтера вылазиет пустой лист бумаги.
                                                          Заранее спасибо


 
_RusLAN ©   (2005-10-03 16:57) [1]

У тебя ошибка в программе есть, из-за которой на струйниках печатается, а на лазерниках нет.

ЗЫ Ну как ответ? Помог?


 
Goral ©   (2005-10-03 16:57) [2]

я использую процедуру
procedure PrintStrings(S: TStrings; Font: TFont; Title: string); и все работает как на лазерниках так и на струйниках попробуй ;-)

//Printer pRoc
procedure PrintStrings(S: TStrings; Font: TFont; Title: string);
var
 LeftMargin, TopMargin, LineCoord, LineOnPage, LinesOnDoc,
 CurrentLine, TextHeight, LinesPerPage, LineInterval: integer;

 procedure StartDoc;
 begin
   LinesOnDoc := S.Count;
   Printer.Canvas.Font.Assign(Font);
   Printer.Canvas.TextOut(0, 0, " ");
   LeftMargin := (Printer.Canvas.Font.PixelsPerInch) div 2;
   TopMargin  := (Printer.Canvas.Font.PixelsPerInch) div 2;
   TextHeight := Abs(Printer.Canvas.Font.Height);
   LineInterval := TextHeight {+ (TextHeight div 2)};
   LinesPerPage := (Printer.PageHeight - TopMargin) div LineInterval;
   CurrentLine := 0;
 end;

 function MorePages:boolean;
 begin
   Result := (CurrentLine < LinesOnDoc) and
             not Printer.Aborted;
 end;

 procedure StartPage;
 begin
   LineOnPage := 0;
   LineCoord := TopMargin;
 end;

 procedure NextPage;
 begin
   if MorePages then Printer.NewPage;
 end;

 function MoreLines:boolean;
 begin
   Result := (LineOnPage < LinesPerPage) and
             (LineOnPage < LinesOnDoc) and
             not Printer.Aborted;
 end;

 procedure NextLine;
 begin
   Inc(LineOnPage);
   Inc(LineCoord, LineInterval);
   Inc(CurrentLine);
 end;

 procedure PrintLine;
 begin
   Printer.Canvas.TextOut(LeftMargin, LineCoord,
S.Strings[CurrentLine]);
 end;

begin
 Printer.Title := Title;
 Printer.BeginDoc;
 StartDoc;
 while MorePages do begin
   StartPage;
   while MoreLines do begin
     PrintLine;
     NextLine;
     Application.ProcessMessages;
   end;
   NextPage;
 end;
 Printer.EndDoc;
end;
// End Printer

procedure TForm1.Button1.Click(Sender: TObject);
begin
  PrintStrings(Memo1.Lines.Create,Memo1.Font,"");
end;


 
Anatoly Podgoretsky ©   (2005-10-03 18:22) [3]

Принтер НР


 
JB   (2005-10-04 09:39) [4]

2 Anatoly Podgoretsky
Оба принтера HP и лазерник и струйник


 
ANB ©   (2005-10-04 10:56) [5]


> JB   (04.10.05 09:39) [4]
- переключи лазерник на печать в графике.


 
Anatoly Podgoretsky ©   (2005-10-04 14:05) [6]

Любимая болезнь НР, помогают пляски с бубном.



Страницы: 1 вся ветка

Текущий архив: 2005.10.23;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.039 c
6-1114571862
Stepan
2005-04-27 07:17
2005.10.23
idFtp client - вывод содержимого каталога


9-1109356049
Jilian
2005-02-25 21:27
2005.10.23
Строим лабиринт


4-1124209558
Twister1222
2005-08-16 20:25
2005.10.23
Запрет на запуск


11-1109324721
WhiteGuy
2005-02-25 12:45
2005.10.23
seek filesize


14-1128316417
Ega23
2005-10-03 09:13
2005.10.23
С днем рождения! 2 октября





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский