Jak się pozbyć nagłówka i stopki przy drukowaniu pliku html

0

Witam mam takie pytanko. Napisałem program który pobiera konkretne dane od urzytkownika następnie generuje stronę html i ją drukuje, no i tu jest problem bo niewiem jak sie pozbyc nagłowka i stopki podczas drukowania pliku html. Wiem ze da sie to zrobic nawet opera ma taka funkcje IE chyba tez, tylko jak to zrobic bezposrednio z poziomu programu. użytkownik tylko klika na drukuj a strona sie drukuje juz bez nagłowka i stopki. Proszę o pomoc

0

Np. tak:

procedure TMainForm.KDrukujClick(Sender: TObject);
var
  Klucz : String;
  footer, header : String;
  rejestr : TRegistry;
begin
  //Drukowanie WebBrowsera

  //zmieniamy ustawienia do druku na własne, zapamiętując stare do przywrócenia
  rejestr := TRegistry.Create;
  rejestr.RootKey:= HKEY_CURRENT_USER;
  Klucz := 'Software\Microsoft\Internet Explorer\PageSetup';
  if rejestr.KeyExists(Klucz) then
    begin
    rejestr.OpenKey(Klucz, true);
    footer := rejestr.ReadString('footer');
    header := rejestr.ReadString('header');
    rejestr.WriteString('header', '');
    
    //wartosci w footer mogą być różne - zależnie od tego np. drukuje liczbę stron
    //pusty string = brak stopki (to samo z header)
    rejestr.WriteString('footer', '&bstrona &p z &P&b');
    Rejestr.CloseKey;
  end;

  //jeśli uruchamiam program spod środowiska, to nie drukuję, ale tylko podglądam
  if FindWindow('TAppBuilder', nil) > 0 then
    WebBrowser.ExecWB(OLECMDID_PRINTPREVIEW, 0)
    else
      WebBrowser.ExecWB(OLECMDID_PRINT, 0);

  //przywracam stare ustawienia dla WebBrowsera
  if rejestr.KeyExists(Klucz) then
    begin
    rejestr.OpenKey(Klucz, true);
    rejestr.WriteString('header', header);
    rejestr.WriteString('footer', footer);
    Rejestr.CloseKey;
    end;

  rejestr.Free;
end;

Tak samo można ustawić marginesy...

BTW: UŻYTKOWNIK

0

dzieki oto własnie mi chodzilo

1 użytkowników online, w tym zalogowanych: 0, gości: 1