Я заметил, что в каждой программе векторного рисования, которую я использовал, параметры размещения штрихов «внутри» или «снаружи» отключены, когда контур открыт (или на тексте). Я предполагаю, что для этого есть причина, но это затрудняет имитацию CSS, поскольку границы никогда не находятся в «центре» линейного сегмента.
Может ли кто-нибудь объяснить, почему это так, и есть ли обходной путь, чтобы иметь трехстороннюю форму с обводкой внутри опорных точек. Подумайте о «форме вкладки», которая открыта внизу. Мне кажется, что если вы все еще можете «заполнить» открытую форму, вы также должны иметь возможность контролировать положение границы.
Если путь не закрыт, можно ли сказать, что он имеет внутреннюю часть?
Или, точнее, может ли наивный алгоритм, оптимизированный для скорости, надежно определить внутреннюю часть открытого пути произвольной формы?
Мне кажется, что для открытых путей «влево» и «вправо» (с определяющим вектором node1-node2) были бы полезны и более общий случай. К сожалению, это, кажется, не было включено в Illustrator.
Что находится за пределами открытого пути? То, что находится внутри? Открытые пути не имеют очень четкого определения снаружи и внутри. В любом случае имитация css не является приоритетной задачей в этих приложениях.
Нет никаких причин, по которым мы не могли бы определить внутреннюю и внешнюю части для открытых путей. Просто большинство пользователей, возможно, сочтут это запутанным. По крайней мере, на меня обычно смотрят пустые взгляды, когда я предполагаю, что кривая имеет направление. Так что да, это технически возможно, всегда можно сместиться наружу по часовой стрелке от пути, наблюдаемого от начала пути. Путь будет произвольно переворачиваться в Illustrator, хотя добавление пути меняет направление. Но это всего лишь функция приложения, в этом нет необходимости. Это можно было бы сделать, это было бы полезно, да.
Однако есть более простые способы эмуляции css. Можно сделать эмулятор css box напрямую. Они существуют, я видел это для иллюстратора.
Первый черновик
DA01