Загрузка Tmetafile и заливка

Тема в разделе "Delphi - Multimedia, Графика, Игры", создана пользователем -, 8 сен 2006.

Статус темы:
Закрыта.
  1. Гость

    Нашел интересный глюк с которым не могу разобраться. Если загруженный метафайл перерисовать в другой метафайл с помощью EnumEnhMetaFile, то в новом метафайле пропадает заливка. Кто-нибудь с этим сталкивался?

    Пример кода:
    //загружаем файл
    var
    FEmf: TMetaFile;
    mfc: TMetaFileCanvas;
    begin
    FEmf := TMetaFIle.Create;
    FEmf.LoadFromFile(filename);
    mf := TMetaFIle.Create;
    mfc := TMetaFileCanvas.Create(mf, 0);
    EnumEnhMetaFile(mfc, FEmf.Handle, @OneRecord, Self, r);
    mfc.Free;
    end;
    Если теперь вывести mf на экран с помощью PlayEnhMetaFile, то заливка пропадает.

    //процедура OneRecord имеет вид:
    function OneRecord(DC: HDC;
    lpHTable: PHANDLETABLE;
    lpEMFR: PENHMETARECORD;
    nObj: integer;
    obj: pointer): integer; stdcall;
    begin
    PlayEnhMetaFileRecord(DC, lpHTable^, lpEMFR^, nObj);
    end;
     
Загрузка...
Статус темы:
Закрыта.

Поделиться этой страницей