Umožnit variantu černobílý tisk pro formuláře pro iNUVIO

PříspěvekNapsal: 19.02.2019 08:39
od sejpka.jan
Nastavení tisku tisku formuláře
Odbarvení formuláře se děje pomocí funkcionality nastavení tisku nad konkrétním tiskovým formulářem (ribonový pás Akce a ribbon Nastavení). Je navázaný na položku Varianta tisku, hodnota musí být na Varianta 2

Obrázek

Definice tisku
- Do formuláře se musí napojit PL se jménem Informace o formuláři (FormularInfo). Zajímá nás atribut Varianta tisku (VariantaTisku), který má hodnotu 0-Varianta 1 a 1-Varianta 2.

Pokud by se formulář dostal do verze 2.0 tak to nespadne, protože PL Informace o formuláři obsahuje položku Varianta tisku natvrdo nastavenou na 0.

  • Detailnější pozornost je nutné věnovat Regionu nebo čtvercům, já jsem provedl takové nastavení. Region je ve standardu obarven modrou a má nastavený rámeček, který je však nastavený jako neviditelný s určitou šířkou čáry.
    Obrázek
  • o V rámci události pak pouze řídím položku style a zviditelňuju rámeček a dělám region průhledným
    {Region 1 zčernobílení}
    Region1.Brush.Style := bsClear;
    Region1.Pen.Style := bsSolid;
  • Labely jsou ve standardu nastaveny, že barva fontu je nastavena na bílou
    Obrázek
  • V rámci události je Font změněn na černou.
    {Labely na černou}
    Label21.Font.Color := clBlack;

  • Čáry jsou ve standardu nastaveny, že barva čáry je nastavena na bílou
    Obrázek
  • V rámci události je barva čáry změněna na černou.
    {Čáry na černou}
    Line1.Pen.Color := clBlack;

Celá podmínka v události BeforePrint nad objektem sestavy Report.
IF (FormularInfo['VariantaTisku']=1) THEN
BEGIN
{Region 1 zčernobílení}
Region1.Brush.Style := bsClear;
Region1.Pen.Style := bsSolid;

{Labely na černou}
Label21.Font.Color := clBlack;
Label22.Font.Color := clBlack;
Label4.Font.Color := clBlack;
Label10.Font.Color := clBlack;
Label24.Font.Color := clBlack;
Label32.Font.Color := clBlack;

{Čáry na černou}
Line1.Pen.Color := clBlack;
Line2.Pen.Color := clBlack;
Line8.Pen.Color := clBlack;
Line11.Pen.Color := clBlack;
Line12.Pen.Color := clBlack;
Line6.Pen.Color := clBlack;
Line4.Pen.Color := clBlack;
Line7.Pen.Color := clBlack;
Line3.Pen.Color := clBlack;
Line9.Pen.Color := clBlack;
Line101.Pen.Color := clBlack;

{Hodnoty na černou}
Variable6.Font.Color := clBlack;
Variable3.Font.Color := clBlack;
Variable5.Font.Color := clBlack;
Variable6.Font.Color := clBlack;
Variable7.Font.Color := clBlack;
DBText22.Font.Color := clBlack;
DBText35.Font.Color := clBlack;
Variable2.Font.Color := clBlack;
DBText14.Font.Color := clBlack;
DBRichText1.Font.Color := clBlack;
DBRichText2.Font.Color := clBlack;
DBText6.Font.Color := clBlack;
DBText23.Font.Color := clBlack;
Variable8.Font.Color := clBlack;
Variable9.Font.Color := clBlack;

Shape1.Brush.Style := bsClear;
Shape1.Pen.Style := bsSolid;
END;