Release 961215
[wine/gsoc-2012-control.git] / graphics / win16drv / font.c
blob6edc8dfa8c591f07b5922cc191e105806db6cd1f
1 /*
2 * Windows driver font functions
4 * Copyright 1996 John Harvey
5 */
7 #include <stdio.h>
8 #include "windows.h"
9 #include "win16drv.h"
10 #include "gdi.h"
13 /***********************************************************************
14 * WIN16DRV_GetTextExtentPoint
16 BOOL32 WIN16DRV_GetTextExtentPoint( DC *dc, LPCSTR str, INT32 count,
17 LPSIZE32 size )
19 WIN16DRV_PDEVICE *physDev = (WIN16DRV_PDEVICE *)dc->physDev;
21 printf("LPGDI_GetTextExtPoint: %04x %s %d %p\n", dc->hSelf, str, count, size);
23 /* TTD support PS fonts */
24 /* Assume fixed font */
25 size->cx = count * physDev->tm.tmAveCharWidth;
26 size->cy = physDev->tm.tmHeight;
27 printf("LPGDI_GetTextExtPoint: cx=%d, cy=%d\n", size->cx,size->cy);
28 return TRUE;
32 /***********************************************************************
33 * WIN16DRV_GetTextMetrics
35 BOOL32 WIN16DRV_GetTextMetrics( DC *dc, TEXTMETRIC32A *metrics )
37 WIN16DRV_PDEVICE *physDev = (WIN16DRV_PDEVICE *)dc->physDev;
39 printf("LPGDI_GetTextMetrics: %04x \n", dc->hSelf);
41 metrics->tmHeight = physDev->tm.tmHeight;
42 metrics->tmAscent = physDev->tm.tmAscent;
43 metrics->tmDescent = physDev->tm.tmDescent;
44 metrics->tmInternalLeading = physDev->tm.tmInternalLeading;
45 metrics->tmExternalLeading = physDev->tm.tmExternalLeading;
46 metrics->tmAveCharWidth = physDev->tm.tmAveCharWidth;
47 metrics->tmMaxCharWidth = physDev->tm.tmMaxCharWidth;
48 metrics->tmWeight = physDev->tm.tmWeight;
49 metrics->tmOverhang = physDev->tm.tmOverhang;
50 metrics->tmDigitizedAspectX = physDev->tm.tmDigitizedAspectX;
51 metrics->tmDigitizedAspectY = physDev->tm.tmDigitizedAspectY;
52 metrics->tmFirstChar = physDev->tm.tmFirstChar;
53 metrics->tmLastChar = physDev->tm.tmLastChar;
54 metrics->tmDefaultChar = physDev->tm.tmDefaultChar;
55 metrics->tmBreakChar = physDev->tm.tmBreakChar;
56 metrics->tmItalic = physDev->tm.tmItalic;
57 metrics->tmUnderlined = physDev->tm.tmUnderlined;
58 metrics->tmStruckOut = physDev->tm.tmStruckOut;
59 metrics->tmPitchAndFamily = physDev->tm.tmPitchAndFamily;
60 metrics->tmCharSet = physDev->tm.tmCharSet;
62 printf("H %d, A %d, D %d, Int %d, Ext %d, AW %d, MW %d, W %d\n",
63 physDev->tm.tmHeight,
64 physDev->tm.tmAscent,
65 physDev->tm.tmDescent,
66 physDev->tm.tmInternalLeading,
67 physDev->tm.tmExternalLeading,
68 physDev->tm.tmAveCharWidth,
69 physDev->tm.tmMaxCharWidth,
70 physDev->tm.tmWeight);
72 return TRUE;