Using Win32 functions in Visual FoxPro Image Gallery
Device Context
Code examples:
Converting twips to pixels and vice versa
Copying picture of the active form to the Clipboard using Enhanced Metafile API functions
Displaying the associated icons and descriptions for files and folders
How to find which fonts Windows uses for drawing captions, menus and message boxes
How to print a bitmap file
How to print FoxPro form
How to print FoxPro form -- II
How to print picture stored in enhanced-format metafile (*.emf)
How to view icons stored in executable files (Icon Viewer) - II
Printing text with the Escape function
Retrieving graphic capabilities of default printer
Retrieving graphic capabilities of your display
Storing screen shot of a form to enhanced metafile (*.emf)
Subclassing CommandButton control to create BackColor property
Vertical Label control
How to print FoxPro form -- II

User rating: 0/10 (0 votes)
Rate this code sample:
  • ~
More code examples    Listed functions    Add comment     W32 Constants      Translate this page Printer friendly version of this code sample
Before you begin:
Call this code from a method or event of FoxPro form to print image of the form on your default printer. Window handle of the form is obtained through GetFocus function. That is why this form has to be active, possessing the keyboard focus.

This code sample is based on Enhanced Metafile API functions. In a similar example How to print a FoxPro form a "bitmap" approach is used.

Enhanced metfaile functions make this code sample comparatively short and easy to understand.

See also:
  • How to print FoxPro form (GDI)
  • GDI+: sending image of FoxPro form to printer
  • Storing screen shot of a form to a BMP file
  • Storing clipboard contents to a BMP file
  • Using the LoadImage() to display a BMP file on the main VFP window
  • How to print a BMP file
      Members area. Log in to view this example.
      User name:
      Forgot your password?
      Sign up for
    the Membership

    User rating: 0/10 (0 votes)
    Rate this code sample:
    • ~
    3814 bytes  
    Created: 2003-05-26 09:44:05  
    Modified: 2011-12-10 09:20:22  
    Visits in 7 days: 239  
    Listed functions:
    Printer friendly API declarations
    My comment:

    #kwd: sln_printform.
    Word Index links for this example:
    Translate this page:
      Spanish    Portuguese    German    French    Italian offers instant, free translations of text or web pages.
    User Contributed Notes:
    Willson | 2007-08-23 14:52:42
    I have a question about this,

    * scaling factor values from screen to printer
    xScale = GetDeviceCaps(hPrnDC, HORZRES)/(GetDeviceCaps(hPrnDC, HORZSIZE) * 100)
    yScale = GetDeviceCaps(hPrnDC, VERTRES)/(GetDeviceCaps(hPrnDC, VERTSIZE) * 100)
    rcMeta = num2dword(0) + num2dword(0) + num2dword(nWidth*xScale) + num2dword(nHeight*yScale)

    The code following the comment, "scaling factor values from screen to printer" seems to only reference hPrnDC in each of the calls to GetDeviceCaps() -- no reference to a screen DC -- whereas in example #158, there is an identical comment which is followed by different code:

    * scaling factor values from screen to printer
    xScale = GetDeviceCaps(hPrnDC, LOGPIXELSX)/GetDeviceCaps(hFormDC, LOGPIXELSX)
    yScale = GetDeviceCaps(hPrnDC, LOGPIXELSY)/GetDeviceCaps(hFormDC, LOGPIXELSY)

    Please advise? Thanks.

    Copyright 2001-2018 News2News, Inc. Before reproducing or distributing any data from this site please ask for an approval from its owner. Unless otherwise specified, this page is for your personal and non-commercial use. The information on this page is presented AS IS, meaning that you may use it at your own risk. Microsoft Visual FoxPro and Windows are trade marks of Microsoft Corp. All other trademarks are the property of their respective owners. 

    Privacy policy
    Credits: PHP (4.4.9), an HTML-embedded scripting language, MySQL (5.6.38), the Open Source standard SQL database, AceHTML Freeware Version 4, freeware HTML Editor of choice.   Hosted by Korax Online Inc.
    Last Topics Visited (
    23 sec.Function: 'SQLInstallerError'
    Function group: 'ODBC API'
    42 sec.Function: 'CryptGetHashParam'
    Function group: 'Cryptography Reference'
    1.07 min.Function: 'FindText'
    1.4 min.Example: 'GDI+: Creating thumbnails to preview images in a directory'
    1.8 min.Function: 'SetDlgItemInt'
    2.18 min.Pwd
    2.6 min.Function: 'JetBeginSession'
    Function group: 'Extensible Storage Engine (ESE, Jet Blue)'
    3.05 min.Example: 'Using the DrawText function'
    3.58 min.Function: 'SQLGetDiagRec'
    4.18 min.Solution: 'ContextMenu ActiveX Control'
    Advertise here!