2 * Windows driver font functions
4 * Copyright 1996 John Harvey
12 /***********************************************************************
13 * WIN16DRV_GetTextExtentPoint
15 BOOL32
WIN16DRV_GetTextExtentPoint( DC
*dc
, LPCSTR str
, INT32 count
,
18 WIN16DRV_PDEVICE
*physDev
= (WIN16DRV_PDEVICE
*)dc
->physDev
;
20 printf("LPGDI_GetTextExtPoint: %04x %s %d %p\n", dc
->hSelf
, str
, count
, size
);
22 /* TTD support PS fonts */
23 /* Assume fixed font */
24 size
->cx
= count
* physDev
->tm
.tmAveCharWidth
;
25 size
->cy
= physDev
->tm
.tmHeight
;
26 printf("LPGDI_GetTextExtPoint: cx=%d, cy=%d\n", size
->cx
,size
->cy
);
31 /***********************************************************************
32 * WIN16DRV_GetTextMetrics
34 BOOL32
WIN16DRV_GetTextMetrics( DC
*dc
, TEXTMETRIC32A
*metrics
)
36 WIN16DRV_PDEVICE
*physDev
= (WIN16DRV_PDEVICE
*)dc
->physDev
;
38 printf("LPGDI_GetTextMetrics: %04x \n", dc
->hSelf
);
40 metrics
->tmHeight
= physDev
->tm
.tmHeight
;
41 metrics
->tmAscent
= physDev
->tm
.tmAscent
;
42 metrics
->tmDescent
= physDev
->tm
.tmDescent
;
43 metrics
->tmInternalLeading
= physDev
->tm
.tmInternalLeading
;
44 metrics
->tmExternalLeading
= physDev
->tm
.tmExternalLeading
;
45 metrics
->tmAveCharWidth
= physDev
->tm
.tmAveCharWidth
;
46 metrics
->tmMaxCharWidth
= physDev
->tm
.tmMaxCharWidth
;
47 metrics
->tmWeight
= physDev
->tm
.tmWeight
;
48 metrics
->tmOverhang
= physDev
->tm
.tmOverhang
;
49 metrics
->tmDigitizedAspectX
= physDev
->tm
.tmDigitizedAspectX
;
50 metrics
->tmDigitizedAspectY
= physDev
->tm
.tmDigitizedAspectY
;
51 metrics
->tmFirstChar
= physDev
->tm
.tmFirstChar
;
52 metrics
->tmLastChar
= physDev
->tm
.tmLastChar
;
53 metrics
->tmDefaultChar
= physDev
->tm
.tmDefaultChar
;
54 metrics
->tmBreakChar
= physDev
->tm
.tmBreakChar
;
55 metrics
->tmItalic
= physDev
->tm
.tmItalic
;
56 metrics
->tmUnderlined
= physDev
->tm
.tmUnderlined
;
57 metrics
->tmStruckOut
= physDev
->tm
.tmStruckOut
;
58 metrics
->tmPitchAndFamily
= physDev
->tm
.tmPitchAndFamily
;
59 metrics
->tmCharSet
= physDev
->tm
.tmCharSet
;
61 printf("H %d, A %d, D %d, Int %d, Ext %d, AW %d, MW %d, W %d\n",
64 physDev
->tm
.tmDescent
,
65 physDev
->tm
.tmInternalLeading
,
66 physDev
->tm
.tmExternalLeading
,
67 physDev
->tm
.tmAveCharWidth
,
68 physDev
->tm
.tmMaxCharWidth
,
69 physDev
->tm
.tmWeight
);