2011-07-02 12 views
19

Pracuję nad narzędziem eksportu svg dla programu do rysowania na Androidzie. Mam problem z tym, że za rozmyciem jest poza granicami kształtu - wygląda na to, że muszę zmienić rozmiar okna widoku lub zwiększyć margines lub coś podobnego. Czy ktoś wie najlepszy sposób?Ograniczenie rozmycia Gaussa na krawędziach

Adres URL pliku testowego to here - jest pobierany, ponieważ typ MIME nie jest poprawnie skonfigurowany na serwerze i nie można go w tej chwili ponownie uruchomić :(W pliku znajdują się osadzone obrazy i czcionki, dlatego duże. Ale jeśli zapisać go na dysku można otworzyć w chrome, FF, etc ...

powiększony przykładem tego problemu jest podane. Zauważ, kwadratowe krawędzie na pomarańczową poświatą.

Odpowiedz

30

Płaszczyzna filtrów ma wartości domyślne: x = y = -10% i szerokość = wysokość = 120%. Możesz je zmienić za pomocą Atrybuty x, y, width i height na elemencie filtrującym.

spróbuj ustawić większy kanwie:

<filter x="-50%" y="-50%" width="200%" height="200%"/> 

Jednak, ponieważ płótno jest większy, nie będzie strat wydajności.

+2

Spec: http://www.w3.org/TR/SVG11/filters.html#FilterEffectsRegion – Tangui

+0

Wydaje się nie mieć dla mnie żadnego efektu. – trusktr

+0

Ups, nevermind, Zastosowałem atrybuty elementu feGuassianBlur, a nie elementu filtrującego. To działa. – trusktr