2013-06-11 5 views
3

Как описано в another post, я пытаюсь воссоздать SVG из векторных графических команд в PDF-файле, и я сталкиваюсь с некоторыми трудностями в той части, где мне нужно пересечь набор путей клипов. Например, у raw SVG есть несколько элементов пути прохода линии №16, которые необходимо пересечь и применить к заполнению прямоугольника (строка # 17), чтобы получить то, что выглядит следующим образом: expected outcome of applying intersected clip paths on rectangle fill.Каков правильный способ достижения пересечения нескольких путей клипов?

Я не совсем понимаю, как правильно и наилучшим образом достичь пересечения нескольких путей клипов в SVG. Я был не в состоянии найти много информации об этом в Интернете, кроме this one, идя по которому я придумал this SVG, где я вводил последовательность дополнительных элементов клипа, которые пытаются пересечь текущее пересечение со следующим оригиналом clipPath для добавления в набор пересечений. Этот подход кажется мне довольно неуместным. Кроме того, этот SVG, похоже, не работает в некоторых версиях Firefox (ESR 17.x), хотя он отображает ожидаемый результат на Firefox 5, Chrome и IE. Что-то не так с SVG? Или даже если это правильно, есть ли более простой/лучший способ достичь пересечения?

+0

Если вы считаете, что обнаружили ошибку в Firefox, поднимите ошибку в bugzilla: https://bugzilla.mozilla.org/enter_bug.cgi?product=Core&component=SVG –

+0

@RobertLongson Конечно, появится ошибка. Но если предположить, что мой SVG на самом деле правильный, есть ли лучший способ добиться пересечения путей клипов? – so2

ответ

3

Как вы это сделали, разумно. В testuite есть w3c example.

+0

Спасибо! Я продолжил этот подход и получил SVG http://pastebin.com/d9ni4dYQ, соответствующий странице в формате PDF. К сожалению, хотя формы в SVG верны, цвета заливки, видимые в PDF, не видны, когда SVG отображается любым стандартным браузером. Предполагается, что верхний левый треугольник в SVG имеет желтую заливку, а нижний правый треугольник, как ожидается, будет иметь сине-зеленую заливку. Я вижу два прямоугольных клип-пути (ids clip_2 и clip_3) в SVG ** XML **, имеющие эти цвета, но почему это не SVG-рендеринг, отображающий эти цвета? – so2

+0

Я разместил этот последующий вопрос в качестве нового вопроса - http://stackoverflow.com/questions/17288182/fill-colors-associated-with-svg-clip-paths-what-the-expected-behaviour. Не могли бы вы ответить на него, если вы определили проблему с упомянутым SVG? – so2

 Смежные вопросы

  • Нет связанных вопросов^_^