Help!!!
На http://codevb.narod.ru/richtextbox_12.html нашел как это можно делать, но код то для VisualBasic, а я работаю с FoxPro. И возникли в результате проблемки с переводом нескольких строк:
Здравствуйте, SergH, Вы писали:
SH>Здравствуйте, lnu, Вы писали:
lnu>>Printer.Width пробовал заменять GetDeviceCaps(hdc, HORZRES) // HORZRES=8 lnu>>но получил совсем другие значения...
SH>А если в твипсы перевести?
Как? В WINGDI.H описаны размеры по горизонтали и по вертикали в миллиметрах или в пикселях.
Никогда не бойся делать то, что ты не умеешь. Помни, ковчег был построен любителем. Профессионалы построили Титаник."
Здравствуйте, lnu, Вы писали:
SH>>А если в твипсы перевести?
lnu>Как? В WINGDI.H описаны размеры по горизонтали и по вертикали в миллиметрах или в пикселях.
Домножить на 1440 и поделить на 25,7, если не ошибаюсь. Т.е. в дюймы а из них в твипсы, только в обратном порядке, чтобы точности не терять. В числе 25,7 я не очень уверен.
Здравствуйте, lnu, Вы писали:
SH>>А если в твипсы перевести?
lnu>Как? В WINGDI.H описаны размеры по горизонтали и по вертикали в миллиметрах или в пикселях.
MSDN пишет:
By default, all Visual Basic movement, sizing, and graphical-drawing statements use a unit of one twip. A twip is 1/20 of a printer’s point (1,440 twips equal one inch, and 567 twips equal one centimeter).
GetDeviceCaps(Printer.hdc,8) дает 2338, а Printer.width дает 11904.
/* Device Parameters for GetDeviceCaps() */
#define HORZSIZE 4 /* Horizontal size in millimeters */
#define VERTSIZE 6 /* Vertical size in millimeters */
#define HORZRES 8 /* Horizontal width in pixels */
#define VERTRES 10 /* Vertical height in pixels */
GetDeviceCaps(Printer.hdc,4)*567=112266 — совсем не 11904
В чем прикол?
Никогда не бойся делать то, что ты не умеешь. Помни, ковчег был построен любителем. Профессионалы построили Титаник."
Здравствуйте, lnu, Вы писали:
lnu>MSDN пишет: lnu>By default, all Visual Basic movement, sizing, and graphical-drawing statements use a unit of one twip. A twip is 1/20 of a printer’s point (1,440 twips equal one inch, and 567 twips equal one centimeter).
lnu>GetDeviceCaps(Printer.hdc,8) дает 2338, а Printer.width дает 11904.
lnu>/* Device Parameters for GetDeviceCaps() */ lnu>#define HORZSIZE 4 /* Horizontal size in millimeters */ lnu>#define VERTSIZE 6 /* Vertical size in millimeters */ lnu>#define HORZRES 8 /* Horizontal width in pixels */ lnu>#define VERTRES 10 /* Vertical height in pixels */
lnu>GetDeviceCaps(Printer.hdc,4)*567=112266 — совсем не 11904
lnu>В чем прикол?
На десять раздели, миллиметры и сантиметры немного отличаются. Получилось уже гораздо ближе.