Конференция "KOL" » КАК работать с SmoothDIB. [Delphi, Windows]
 
  • Valera (24.05.08 11:48) [0]
    Мне надо нарисовать линию со сглаживанием с его помощью но только
    мне надо нарисовать ёё на битмапе обычном (не пустом).

    Вот SmoothDIB
    http://www.kolnmck.ru/files/components/graphics/smoothdib.7z

    Мне надо сделать

    PSmoothDIB --> Pbitmap

    Нарисовать линию со сглаживанием.
    Потом вернуть это на Bitmap.

    Pbitmap  --> PSmoothDIB
    .

    Как преобразововать.
  • Valera (24.05.08 11:49) [1]
    Ой то есть наоборот..

    Pbitmap  --> PSmoothDIB

    Нарисовать линию со сглаживанием.
    Потом вернуть это на Bitmap.

    PSmoothDIB --> Pbitmap
  • Valera (25.05.08 00:04) [2]
    Блин почему небыло демо в данном компоненте. Очень бы помогло.
    Скажите хотя бы куда копать.
  • Дмитрий К © (25.05.08 15:33) [3]
    program testsmoothdib;

    uses
     Windows, KOL, SmoothDIB;

    var
     Bmp: PBitmap;
     SD: PSmoothDIB;

    procedure FormPaint(Dummy, Sender: PControl; DC: HDC);
    begin
     Bmp.Draw(DC, 0, 0);
    end;

    var
     Form: PControl;

    begin
     Form := NewForm(nil, 'SmoothDIB Test');
     Bmp := NewBitmap(200, 100);
     Form.Add2AutoFree(Bmp);

     with Bmp.Canvas^ do
     begin
       Brush.Color := clWhite;
       Pen.Color := clRed;
       Pen.PenWidth := 1;
       FillRect(Bmp.BoundsRect);
       MoveTo(10, 10);
       LineTo(190, 90);
     end;

     New(SD, Create);
     Form.Add2AutoFree(SD);
     SD.DIB.Assign(Bmp);
     SD.PenWidth := 0.5;
     SD.Canvas.Pen.Color := clBlue;
     SD.DrawLine(190, 10, 10, 90);
     Bmp.CopyRect(Bmp.BoundsRect, SD.DIB, SD.BoundsRect);

     Form.OnPaint := TOnPaint(MakeMethod(nil, @FormPaint));

     Run(Form);
    end.

  • Valera (24.06.08 13:36) [4]
    Спасибо большее Дмитрий К
 
Конференция "KOL" » КАК работать с SmoothDIB. [Delphi, Windows]
Есть новые Нет новых   [134431   +15][b:0][p:0.001]