Çeviri: Ramazan Gülbahar
TRichEdit Yazdırılırken Kenarlıkların Ayarlanması
TRichEdit kontrolü Windowsun rich text kontrolünü destekler. Rich text edit kontrolleri kullanıcının (düzenle, biçim, yazdır, ve kaydet) yazı ve paragraf biçimlerini değiştirmesine olanak verir.
Rich Edit basit bir yazdırma metodu sağlar, aktif durumdaki yazıcıdan istenen biçimde yazdırma işlemi yapabiliriz.
Bu yazdırma işlemi malesef kenar biçim ayarlarını desteklemez.
Rich Edit Yazdırılırken Kenarlık Ayarlarının Yapılması
SetRichEditMargins procedure'ü PageRect özelliğini kullanarak TRichEdit kenarlık özelliklerini ayarlayabilir. PageRect özelliği rich text edit kontrolü yazdırılırken piksel boyutlarını ayarlayabilir.
İlk dört değişken Sol, Sağ, Üst, Alt kenarlığın inç boyutudur(1 IN = 2.54 cm). Son Değişken ise rich edit Kontrolüdür.
(* Aktif durumdaki yazıcı için, RichEdit kenarlıklarını ayarla(1 in = 2.54 cm)*)
Kod: Tümünü seç
procedure SetRichEditMargins(const mLeft, mRight,mTop, mBottom: extended; const re : TRichEdit) ;
var
ppiX, ppiY : integer;
spaceLeft, spaceTop : integer;
r : TRect;
begin
{Her inç için pikseller}
ppiX := GetDeviceCaps(Printer.Handle, LOGPIXELSX) ;
ppiY := GetDeviceCaps(Printer.Handle, LOGPIXELSY) ;
{Yazdırılamaz Kenarlıklar}
spaceLeft := GetDeviceCaps(Printer.Handle, PHYSICALOFFSETX) ;
spaceTop := GetDeviceCaps(Printer.Handle, PHYSICALOFFSETY) ;
{kenarlıkları hesapla}
R.Left := Round(ppiX * mLeft) - spaceLeft;
R.Right := Printer.PageWidth - Round(ppiX * mRight) - spaceLeft;
R.Top := Round(ppiY * mTop) - spaceTop;
R.Bottom := Printer.PageHeight - Round(ppiY * mBottom) - spaceTop;
{Kenarlıkları ayarla}
re.PageRect := r;
end;
Kullanılışı:
Kod: Tümünü seç
SetRichEditMargins(1, 1, 0.5, 0.5, richEdit1) ;
richEdit1.Print('Printing with margins') ;