以前は、jpeg、gif などのブラウザーに表示されるグラフィックスはすべてビットマップであり、これらの画像形式はラスターに基づいていました。ラスター イメージでは、イメージ ファイルはイメージ内の各ピクセルのカラー値を定義します。ブラウザはこれらの値を読み取り、それに応じて動作する必要があります。この種の画像の再現能力は比較的高いですが、状況によっては不十分に見える場合があります。たとえば、ブラウザがさまざまなサイズで画像を表示すると、エッジがギザギザになることがよくあり、ブラウザは元の画像に存在しないピクセルの値を補間または推測する必要があり、これにより画像の歪みが生じます。さらに、ビットマップのアニメーション化は、せいぜい、個々の画像が高速で連続して表示される「パラパラ漫画」タイプのアニメーションの作成に限定されます。
ベクター グラフィックスは、値自体を指定するのではなく、各ピクセルの値を決定するために必要な命令を指定することで、これらの問題の一部を克服します。たとえば、ベクター グラフィックスは、直径 1 インチの円のピクセル値を提供する代わりに、ブラウザーに直径 1 インチの円を作成し、残りの処理はブラウザー (またはプラグイン) に実行させるように指示します。これにより、ベクトル グラフィックスに関するラスター グラフィックスの制限の多くがなくなり、ブラウザーは円を描画する必要があることのみを認識します。画像を通常の 3 倍のサイズで表示する必要がある場合、ブラウザは通常のラスター画像の補間を実行することなく、単純に正しいサイズで円を描画します。同様に、ブラウザは、アプリケーションやデータベースなどの外部情報ソースに簡単に結び付けることができる命令を受け取り、画像をアニメーション化するために、 radius や color などのプロパティを操作する方法についての命令を受け取るだけです。
HTML システムでは、ベクター グラフィックスを描画するために最も一般的に使用されているテクノロジは、SVG と HTML5 で新しく追加された Canvas 要素です。どちらのテクノロジーも、ベクター画像とラスター画像の描画をサポートしています。
SVG の概要
Scalable Vector Graphics (略して SVG) は、XML を使用して 2 次元グラフィックスを記述する言語です (SVG は XML 構文に厳密に従います)。 SVG では、ベクトル グラフィック形状 (直線と曲線で構成されるパスなど)、画像、テキストの 3 種類のグラフィック オブジェクトを使用できます。 グラフィック オブジェクト (テキストを含む) をグループ化、スタイル設定、変換し、以前にレンダリングしたオブジェクトに結合することができます。 SVG 機能セットには、ネストされた変換、クリッピング パス、アルファ マスク、およびテンプレート オブジェクトが含まれます。
SVG 描画はインタラクティブで動的です。 たとえば、スクリプトを使用してアニメーションを定義し、トリガーできます。これは Flash に比べて非常に強力です。 Flash はバイナリ ファイルであるため、動的に作成したり変更したりするのは困難です。 SVG はテキスト ファイルなので、動的操作は非常に簡単です。さらに、SVG はアニメーションを完成させるために関連する要素を直接提供するため、操作が非常に便利です。
SVG は他の Web 標準と互換性があり、Document Object Model DOM を直接サポートします。これは、HTML5 のキャンバスと比較して非常に強力な点でもあります (ここで、SVG も SVG グラフィックスを表示するために同様のキャンバスを内部的に使用していることに注意してください。後で、多くの機能が HTML5 のキャンバスに似ていることがわかります。 SVG の Canvas であるとは明示されていません。HTML5 の Canvas 要素を指します)。したがって、SVG の高度なアプリケーションの多くは、スクリプトを使用して簡単に実装できます。さらに、SVG グラフィック要素は基本的に DOM 内の標準イベントをサポートします。多数のイベント ハンドラー (「onmouseover」や「onclick」など) を任意の SVG グラフィック オブジェクトに割り当てることができます。 SVG のレンダリング速度は Canvas 要素ほど速くありませんが、DOM 操作が非常に柔軟であるため、速度の欠点を完全に補うことができます。
SVG はプロトコルでもあり言語でもあり、HTML の標準要素でもあり、画像形式でもあります。
SVG は HTML5 に含まれるものではありませんが、人気のある Web テクノロジーの 1 つであると考えられているため、当面はこのトピックに含めます。
SVG と他の画像形式の比較
他の画像形式と比較すると、SVG には多くの利点があります (多くの利点はベクター グラフィックスの利点から得られます)。
• SVGファイルは純粋な XML であり、多くのツール (メモ帳など) で読み取りおよび変更できます。
• SVG は JPEG や GIF 画像よりもサイズが小さく、圧縮率が高くなります。
• SVG はスケーラブルで、画質を損なうことなく拡大でき、どの解像度でも高品質で印刷できます。
• SVG 画像内のテキストはオプションで検索可能です (地図の作成に最適です)。
• SVG は Java テクノロジで実行できます。
• SVG はオープンスタンダードです。
SVG と Flash の比較
SVG の主な競合相手は Flash です。 Flash と比較した場合、SVG の最大の利点は、他の標準 (XSL や DOM など) と互換性があり、操作が簡単であることですが、Flash はオープンソースではない独自のテクノロジーです。保存形式や動的に生成されるグラフィックスなどの他の側面でも、SVG には大きな利点があります。
SVG の表示方法
ここでは、HTML5 と SVG をサポートするブラウザーについては説明しません。基本的には、最新の Chrome または FireFox ブラウザー (IE) をインストールするだけで十分です。 IE9 より前のバージョンについては、SVG プラグインをインストールする必要がありますが、ここでは省略します)。 SVG を直接サポートするブラウザの場合、SVG は主に両側で 2 つの表示方法を使用します。
HTML にインライン化
SVG は標準の HTML 要素であり、HTML に直接書き込むことができます。次の例を参照してください。
🎜>
;title> 初めての SVG ページ
width="200px" height="200px">
これらの部分は基本的に記述する必要がありません。 HTML5 で記述します (記述するかどうかはあなた次第です)。
スタンドアロン SVG ファイル
スタンドアロン SVG は、svg ファイル拡張子を使用して提供されるベクター グラフィック ファイル形式を指します。この svg ファイルをブラウザに埋め込むと、すぐに使用できるようになります。
1. 独立した SVG ファイル/ページ、定義されたテンプレートは基本的に次のとおりです:
2.HTML は外部 SVG ファイルを参照します。
次の小さな例のように、object 要素または img 要素を使用して SVG グラフィックを埋め込みます:
width="300px" height="300px"> ;
お使いのブラウザは SVG をサポートしていません。最新のブラウザにアップグレードしてください。
🎜>
実際、SVG は他の XML ドキュメントに配置することも、他の XML ドキュメントと同様に XML 関連テクノロジを使用してフォーマットおよび検証することもできます。これは重要ではないため、ここでは省略します。
SVG のレンダリング順序
SVG は、定義された要素の順序に従って厳密にレンダリングされます。これは、階層化を制御するために z-index 値に依存する HTML とは異なります。 。 SVG では、前に書かれた要素が最初に描画され、後ろに書かれた要素が最後に描画されます。後でレンダリングされる要素は前の要素をカバーしますが、透明度の影響でカバーされていないように見える場合もありますが、SVG は実際には厳密な順序でレンダリングされます。
注: SVG は XML で定義されているため、HTML とは異なり、大文字と小文字が区別されます。
実用的なリファレンス
:
公式ドキュメント:
http://www.w3.org/TR/SVG11/
スクリプトインデックス: http://msdn.microsoft.com/zh-cn/library/ff971910(v=vs.85).aspx
開発センター: https://developer.mozilla.org/en/ SVG
人気のリファレンス:http://www.chinasvg.com/

HTML5のコア機能には、セマンティックタグ、マルチメディアサポート、オフラインストレージ、ローカルストレージ、フォームエンハンスメントが含まれます。 1。コードの読みやすさとSEO効果を改善するためのセマンティックタグなど。 2.ラベルでマルチメディアの埋め込みを簡素化します。 3。アプリケーションキャッシュやLocalStorageなどのオフラインストレージとローカルストレージは、ネットワークのない操作とデータストレージをサポートします。 4.フォームエンハンスメントでは、処理と検証を簡素化するための新しい入力タイプと検証プロパティを導入します。

H5は、さまざまな新機能と機能を提供し、フロントエンド開発の機能を大幅に向上させます。 1.マルチメディアサポート:メディアを埋め込んで要素を埋め込み、プラグインは必要ありません。 2。キャンバス:要素を使用して、2Dグラフィックとアニメーションを動的にレンダリングします。 3。ローカルストレージ:ユーザーエクスペリエンスを改善するために、ローカルストレージとセッションストレージを介して永続的なデータストレージを実装します。

H5とHTML5は異なる概念です。HTML5は、新しい要素とAPIを含むHTMLのバージョンです。 H5は、HTML5に基づくモバイルアプリケーション開発フレームワークです。 HTML5はブラウザを介してコードを解析およびレンダリングしますが、H5アプリケーションはコンテナを実行し、JavaScriptを介してネイティブコードと対話する必要があります。

HTML5の重要な要素には、最新のWebページの構築に使用される、、,,,,などが含まれます。 1.ヘッドコンテンツを定義します。2。リンクをナビゲートするために使用されます。3。独立した記事のコンテンツを表します。4。ページコンテンツを整理します。5。サイドバーコンテンツを表示します。

HTML5とHTML5の略語であるHTML5とH5の間に違いはありません。 1.HTML5はHTMLの5番目のバージョンであり、Webページのマルチメディア関数とインタラクティブ機能を強化します。 2.H5は、HTML5ベースのモバイルWebページまたはアプリケーションを参照するためによく使用され、さまざまなモバイルデバイスに適しています。

HTML5は、W3Cによって標準化されたHyperText Markup言語の最新バージョンです。 HTML5は、新しいセマンティックタグ、マルチメディアサポート、フォームの強化、Web構造の改善、ユーザーエクスペリエンス、SEO効果を導入します。 HTML5は、Webページ構造をより明確にし、SEO効果をより良くするために、、、、、、などの新しいセマンティックタグを導入します。 HTML5はマルチメディア要素をサポートしており、サードパーティのプラグインは不要で、ユーザーエクスペリエンスと読み込み速度が向上します。 HTML5はフォーム関数を強化し、ユーザーエクスペリエンスを向上させ、フォーム検証効率を向上させるなどの新しい入力タイプを導入します。

クリーンで効率的なHTML5コードを書き込む方法は?答えは、タグのセマンティック、構造化されたコード、パフォーマンスの最適化、一般的な間違いを回避することにより、一般的な間違いを避けることです。 1.コードの読みやすさとSEO効果を改善するには、セマンティックタグなどを使用します。 2。適切なインデントとコメントを使用して、コードを構造化して読みやすいままにします。 3.不必要なタグを減らし、CDNを使用してコードを圧縮することにより、パフォーマンスを最適化します。 4.タグが閉じていないなどの一般的な間違いを避け、コードの有効性を確認してください。

H5は、マルチメディアサポート、オフラインストレージ、パフォーマンスの最適化により、Webユーザーエクスペリエンスを向上させます。 1)マルチメディアサポート:H5と要素は、開発を簡素化し、ユーザーエクスペリエンスを向上させます。 2)オフラインストレージ:WebStorageとIndexEdDBは、エクスペリエンスを改善するためにオフラインで使用できるようにします。 3)パフォーマンスの最適化:ウェブワーカーと要素は、パフォーマンスを最適化して帯域幅の消費を削減します。


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

VSCode Windows 64 ビットのダウンロード
Microsoft によって発売された無料で強力な IDE エディター

SublimeText3 Linux 新バージョン
SublimeText3 Linux 最新バージョン

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

mPDF
mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

ホットトピック









