Отрицательные координаты в C # Графика? - PullRequest
0 голосов
/ 20 ноября 2018

Я следую этой документации , в частности, метод DrawString.Он говорит, что для

public void DrawString (string s, System.Drawing.Font font, System.Drawing.Brush brush, float x, float y);

x и y - координаты верхнего левого угла нарисованного текста.

Я вызвал эту функцию с x = 0, но все еще есть некоторыепространство между границей и верхним левым углом, поэтому я называю это x = -10, и теперь оно касается границы.

Значит ли это, что мы можем как-то назвать их с отрицательными значениями?

1 Ответ

0 голосов
/ 20 ноября 2018

enter image description here

В зависимости от того, как был разработан шрифт, каждый персонаж имеет ограничительную рамку. В верхнем левом углу вы указываете не то, где начинается алфавит, а то, откуда начинается верхний левый ограничивающий прямоугольник.

На этом изображении это будет верхний левый угол черного прямоугольника. Теперь в зависимости от шрифта / типографии - либо фактический алфавит будет очень тесно выровнен с границами ограничивающего прямоугольника, либо может иметь некоторые отступы (как в моем плохом примере ниже достаточно места).

Вот почему в вашем случае -10 выглядит так, как будто символ / алфавит начинается с точного края. Но в действительности ограничивающий прямоугольник сверху-слева находится в -10 (отрицательный кординат), поэтому он выглядит так.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...