L_CreateZoomView

#include "l_bitmap.h"

L_LTZMV_API L_INT L_CreateZoomView(hWnd, pBitmap, pZoomViewProps)

Creates a new Zoom View and associates it with the specified window.

Parameters

HWND hWnd

Handle to a window.

pBITMAPHANDLE pBitmap

Pointer to the bitmap handle that references the bitmap displayed in hWnd.

pZOOMVIEWPROPS pZoomViewProps

Pointer to a ZOOMVIEWPROPS structure containing options for controlling the behavior of the Zoom View.

Returns

Value Meaning
SUCCESS The function was successful.
< 1 An error occurred. Refer to Return Codes.

Comments

Starts a Zoom View procedure by attaching a zoomed view to the specified window.

Note: Anytime the window's size changes or the bitmap changes, call the L_UpdateZoomView function in order to update the zoomed view settings.

When the zoomed view is no longer needed, call the L_DestroyZoomView function to stop the specified Zoom View procedure and to detach it from the window handle.

Required DLLs and Libraries

Platforms

Win32, x64.

See Also

Functions

Topics

Example

This sample shows how you can start and stop the Zoom View. It also demonstrates how to provide a callback function and how this can help you to update Zoom View options.

L_INT CreateZoomViewExample(HDC           hMemDC, 
                                            HWND          hWnd, 
                                            pBITMAPHANDLE pBitmap, 
                                            RECT        * prcView) 
{ 
 
   ZOOMVIEWPROPS ZoomViewProps; 
   L_INT nRet; 
   memset(&ZoomViewProps,0,sizeof(ZOOMVIEWPROPS)); 
   ZoomViewProps.uStructSize = sizeof(ZOOMVIEWPROPS); 
 
   SetRect(&ZoomViewProps.rcSrc, 0, 0, 100* 100, 100* 100); 
   SetRect(&ZoomViewProps.rcDst, 100* 100, 100* 100, 200* 100, 200* 100); 
 
   ZoomViewProps.nZoom                = 200; 
   ZoomViewProps.bForceDst            = FALSE; 
   ZoomViewProps.bEnabled             = TRUE; 
 
   ZoomViewProps.bCallouts            = TRUE; 
   ZoomViewProps.crCallout            = RGB(255,0,0); 
   ZoomViewProps.nCalloutPenStyle     = PS_DASH; 
 
   ZoomViewProps.crZoomViewBorder     = RGB(0,255,0); 
   ZoomViewProps.uZoomViewBorderStyle = ZOOMVIEWBORDERSTYLE_SIMPLE; 
   ZoomViewProps.nZoomViewPenStyle    = PS_SOLID; 
 
   ZoomViewProps.crSrcBorder          = RGB(0,0,255); 
   ZoomViewProps.uSrcBorderStyle      = SOURCEBORDERSTYLE_SIMPLE; 
   ZoomViewProps.nSrcPenStyle         = PS_DOT; 
 
   CopyRect(&ZoomViewProps.rcView, prcView); 
    
   nRet = L_CreateZoomView (hWnd, pBitmap, &ZoomViewProps); 
   if(nRet == SUCCESS) 
   { 
      HDC hDC = GetDC(hWnd); 
      L_RenderZoomView(hDC,hWnd); 
      ReleaseDC(hWnd, hDC); 
   } 
   else 
   { 
      return nRet; 
   } 
 
   nRet = L_RenderZoomView(hMemDC,hWnd); 
   if(nRet != SUCCESS) 
      return nRet; 
 
   return SUCCESS; 
} 

Help Version 20.0.2019.12.5
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2019 LEAD Technologies, Inc. All Rights Reserved.

LEADTOOLS Raster Imaging C API Help