Najnowsze tutoriale tworzenie stron internetowych

HTML5 SVG


Czym jest SVG?

  • SVG oznacza Scalable Vector Graphics
  • SVG jest używany do zdefiniowania grafiki dla WWW
  • SVG jest rekomendacja W3C

Scalable Vector Graphics (SVG) jest wektorem format obrazu, oparty na XML dla grafiki dwuwymiarowej ze wsparciem dla interaktywności i animacji. W specyfikacji SVG jest otwartym standardem opracowanym przez World Wide Web Consortium (W3C) od 1999 roku.

Obrazy SVG i ich zachowania są zdefiniowane w plikach tekstowych XML. Oznacza to, że mogą one być przeszukiwane, indeksowane, skrypty i skompresowane. Jako pliki XML, obrazy SVG mogą być tworzone i edytowane za pomocą dowolnego edytora tekstu, jak również z oprogramowaniem do rysowania.

Wszystkie główne przeglądarek-tym nowoczesny Mozilla Firefox, Internet Explorer, Google Chrome, Opera, Safari i Microsoft Edge-have SVG renderowania wsparcie.


HTML <svg> Element

HTML <svg> elementem (introduced in HTML5) jest kontenerem dla grafiki SVG.

SVG ma kilka sposobów rysowania ścieżek, skrzynek, okręgi, tekstu i obrazów graficznych.


Wsparcie przeglądarka

Liczby w tabeli określ pierwszą wersję przeglądarki, która w pełni obsługuje <svg> element.

Element
<svg> 4.0 9.0 3.0 3.2 10,1

SVG Koło

Przykład

<!DOCTYPE html>
<html>
<body>

<svg width="100" height="100">
  <circle cx="50" cy="50" r="40" stroke="green" stroke-width="4" fill="yellow" />
</svg>

</body>
</html>
Spróbuj sam "

SVG prostokątna

rgb (0,0,0) ">

Przykład


<svg width="400" height="100">
  <rect width="400" height="100" style="fill:rgb(0,0,255);stroke-width:10;stroke:rgb(0,0,0)" />
</svg>

Spróbuj sam "

SVG Prostokąt zaokrąglony

Niestety, Twoja przeglądarka nie obsługuje inline SVG.

Przykład


<svg width="400" height="180">
  <rect x="50" y="20" rx="20" ry="20" width="150" height="150"
  style="fill:red;stroke:black;stroke-width:5;opacity:0.5" />
</svg>

Spróbuj sam "

Gwiazda SVG

Niestety, Twoja przeglądarka nie obsługuje inline SVG.

Przykład


<svg width="300" height="200">
  <polygon points="100,10 40,198 190,78 10,78 160,198"
  style="fill:lime;stroke:purple;stroke-width:5;fill-rule:evenodd;" />
</svg>

Spróbuj sam "

SVG Logo

SVG Niestety, Twoja przeglądarka nie obsługuje inline SVG.

Przykład


<svg height="130" width="500">
  <defs>
    <linearGradient id="grad1" x1="0%" y1="0%" x2="100%" y2="0%">
      <stop offset="0%" style="stop-color:rgb(255,255,0);stop-opacity:1" />
      <stop offset="100%" style="stop-color:rgb(255,0,0);stop-opacity:1" />
    </linearGradient>
  </defs>
  <ellipse cx="100" cy="70" rx="85" ry="55" fill="url(#grad1)" />
  <text fill="#ffffff" font-size="45" font-family="Verdana" x="50" y="86">SVG</text>
  Sorry, your browser does not support inline SVG.
</svg>

Spróbuj sam "

Różnice między SVG i Canvas

SVG jest językiem do opisu grafiki 2D w formacie XML.

Canvas rysuje grafiki 2D, w locie (with a JavaScript) .

SVG jest oparty na XML, co oznacza, że ​​każdy element jest dostępny w SVG DOM. Można dołączyć obsługi zdarzeń JavaScript dla elementu.

W SVG każdy narysowany kształt jest pamiętany jako obiekt. Jeśli atrybuty obiektu SVG są zmieniane, przeglądarka może automatycznie ponownie renderować kształt.

Płótno jest renderowany piksel po pikselu. W płótnie, gdy grafika jest zasysane, jest zapomniany przez przeglądarkę. Jeśli jego pozycja powinna zostać zmieniona, cała scena musi być odnawiany, łącznie z obiektami, które mogły zostać objęte grafiki.


Porównanie Canvas i SVG

Poniższa tabela pokazuje kilka istotnych różnic między płótnie i SVG:

Canvas SVG
  • Rozdzielczość zależna
  • Brak wsparcia dla obsługi zdarzeń
  • Ubogie możliwości renderowania tekstu
  • Można zapisać obraz wynikowy jako .png lub .jpg
  • Dobrze nadaje się do intensywnych gier graficzny
  • Rozdzielczość niezależne
  • Wsparcie dla obsługi zdarzeń
  • Najlepiej nadaje się do zastosowań o dużych obszarów renderowania (Google Maps)
  • Powolne renderowania jeśli kompleks (anything that uses the DOM a lot will be slow)
  • Nie nadaje się do zastosowań gier

Aby dowiedzieć się więcej o SVG, zapoznaj się z naszą SVG Tutorial .