Udostępnij za pośrednictwem


Struktura ATL_DRAWINFO

Zawiera informacje używane do renderowania do różnych celów, takich jak drukarki, metapliku lub formantu ActiveX.

struct ATL_DRAWINFO{
   UINT cbSize;
   DWORD dwDrawAspect;
   LONG lindex;
   DVTARGETDEVICE* ptd;
   HDC hicTargetDev;
   HDC hdcDraw;
   LPCRECTL prcBounds;
   LPCRECTL prcWBounds;
   BOOL bOptimize;
   BOOL bZoomed;
   BOOL bRectInHimetric;
   SIZEL ZoomNum;
   SIZEL ZoomDen;
};

Członkowie

  • cbSize
    Rozmiar struktury w bajtach.

  • dwDrawAspect
    Określa, jak obiekt docelowy jest reprezentowana.Reprezentacje może zawierać treść, ikony, miniatury lub drukowanego dokumentu.Listy możliwych wartości, zobacz DVASPECT i DVASPECT2.

  • wartość lindex.
    Część docelowej, będące przedmiotem zainteresowania dla operacji rysowania.Jego interpretacji zależy od wartości w dwDrawAspect Członkowskich.

  • od początku okresu
    Wskaźnik DVTARGETDEVICE strukturę, która umożliwia optymalizacje rysunku, w zależności od proporcji określonej.Należy zauważyć, że tego członka, jak również obsługują nowsze obiektów i kontenerach, które obsługują interfejsy rysunku zoptymalizowane.Określ obiekty starszych i pojemniki, które nie obsługują interfejsy rysunku zoptymalizowane zawsze NULL dla tego członka.

  • hicTargetDev
    Informacje kontekstu urządzenia docelowego wskazywanego przez ptd z którego obiekt można wyodrębnić urządzenia metryki i badania możliwości urządzenia.Jeśli ptd jest NULL, obiekt należy zignorować wartości w hicTargetDev Członkowskich.

  • hdcDraw
    Kontekstu urządzenia, na którym rysowania.Dla obiektu bez okien hdcDraw jest MM_TEXT tryb mapowania z współrzędnych logiczne dopasowania współrzędnych klienta okna zawierającego.Ponadto kontekstu urządzenia powinny być w tym samym stanie jak normalnie przekazywane WM_PAINT wiadomości.

  • prcBounds
    Wskaźnik do RECTL Struktura określająca prostokąta na hdcDraw , w której obiekt należy wyciągnąć.Członek ten kontroluje położenie oraz rozciągnięcie obiektu.Członek ten powinien być NULL do rysowania obsługujące aktywny obiekt w miejscu.W każdej sytuacji NULL nie jest dozwoloną wartością i powinno skutkować E_INVALIDARG kod błędu.Jeżeli nie przechodzi kontenera-NULL wartość do obiektu bez okien, obiekt należy renderowania żądanej proporcji w kontekście określonego urządzenia i prostokąt.Kontener może żądać to z obiektu bez okien renderowania drugi, -aktywny widok obiektu lub drukowanie obiektu.

  • prcWBounds
    Jeśli hdcDraw jest kontekstu urządzenia metafile (zobacz GetDeviceCaps w Windows SDK), to jest wskaźnik do RECTL określające prostokąta obwiedni w metapliku podstawowej struktury.Struktura prostokąta zawiera zakres okna i okna pochodzenia.Wartości te są przydatne do rysunku metapliki.Prostokąt wskazanych przez prcBounds jest zagnieżdżona to prcWBounds prostokąta; są one w tej samej przestrzeni współrzędnych.

  • bOptimize
    Niezerowa, jeśli rysunek formantu jest być zoptymalizowane, inaczej 0.Jeśli rysunek jest zoptymalizowany, Państwo kontekstu urządzenia automatycznie przywracane po zakończeniu renderowania.

  • bZoomed
    Niezerowa, jeśli obiekt docelowy ma współczynnik powiększenia, w przeciwnym razie 0.Współczynnik powiększenia jest przechowywany w ZoomNum.

  • bRectInHimetric
    Niezerowa, jeśli wymiary prcBounds w HIMETRIC, w przeciwnym razie 0.

  • ZoomNum
    Szerokość i wysokość prostokąta, w którym obiekt jest renderowana.Współczynnik powiększenia wzdłuż osi x (część naturalnych rozmiar obiektu do jego bieżący zakres) obiektu docelowego jest wartość ZoomNum.cx podzielony przez wartość ZoomDen.cx.Współczynnik powiększenia wzdłuż osi y uzyskuje się w podobny sposób.

  • ZoomDen
    Rzeczywista szerokość i wysokość obiektu docelowego.

Uwagi

Typowym tej struktury byłoby pobieranie informacji podczas renderowania obiektu docelowego.Na przykład, można pobrać wartości z ATL_DRAWINFO wewnątrz przeciążenie sieci z CComControlBase::OnDrawAdvanced.

Ta struktura przechowuje stosowne informacje używane do renderowania wyglądu obiektu dla urządzenia.Informacje można rysunku do ekranu, drukarki lub nawet metapliku.

Wymagania

Nagłówek: atlctl.h

Zobacz też

Informacje

IViewObject::Draw

CComControlBase::OnDrawAdvanced

Inne zasoby

Struktury ATL