| |
| How do I draw using LoEnglish Mapping Modes? |
 |
How do I draw using LoEnglish Mapping Modes?
You will need to call the Windows API functions SetMapMode() and SetViewportOrgEx() to change the mapping mode and the origin, then draw using coordinates that are oriented from the bottom of the canvas.
Notes:
1) Change the drawing mode back as soon as you are finished drawing, or you may get unexpected results.
2) Screen measurements are based on a concept of "Logical Pixels" and may not always reflect a true measurement. Printers should give satisfactory results when measurement are compared against a ruler.
Example:
procedure TForm .Button Click(Sender: TObject);
var
OldMapMode : integer;
OldOrigin : TSize;
Inch : integer;
begin
Inch := 00;
with Form .Canvas do begin
SetViewportOrgEx(Handle,
0,
ClientHeight,
@OldOrigin);
OldMapMode := SetMapMode(Handle,
MM_LOENGLISH);
Rectangle( * inch, * inch,
0 * inch, 0 * inch);
SetMapMode(Handle,
OldMapMode);
SetViewportExtEx(Handle,
OldOrigin.cx,
OldOrigin.cy,
nil);
end;
end;
|
|
| Hits/month |
2,500,000+ |
Downloads (Since May 2000) |
7,393,709 |
| Total Files |
6,023 |
| Forum msgs |
7,670 |
| Articles/FAQs |
70+/900+ |
Top Selling Software at Amazon
|