Неправильный принтер CurrentX и CurrentY

Около 10 лет назад следующий код мог вывести "Test" точно в x=0 и y=0.

Но я не знаю, почему в (Windows Xp Sp3) x=0 равно x=10, а y = 0 равно y=10!

Устройство принтера еще не изменилось!

Может кто-нибудь мне помочь?

Printer.ScaleMode = vbMillimeters
Printer.FontName = "Times New Roman"
Printer.FontSize = 7
Printer.FontBold = False
Printer.Orientation = 2
Printer.RightToLeft = False
Printer.FontItalic = False
Printer.CurrentX = 0
Printer.CurrentY = 0
Printer.Print "Test"
Printer.EndDoc

2 ответа

Решение

Я нашел ответ сам.

Просто измените (Буква) на (А4) В (Настройки принтера) в вашей операционной системе...

Посмотрите на изображение, которое я прикрепил к сообщению:

Я думаю, что 10 лет назад вы использовали другой принтер. За очень немногими исключениями, у принтеров есть непечатаемая область на краю бумаги. Для большинства лазеров это около 5 мм, но некоторые принтеры имеют большие поля печати.

Обычно Windows пытается печатать только в области печати принтера. Вот откуда берутся ваши 10 мм: ваш принтер имеет поля в 10 мм

Другие вопросы по тегам