Skip to content

Commit

Permalink
2024/07/26 時点の英語版に基づき新規翻訳
Browse files Browse the repository at this point in the history
  • Loading branch information
mfuji09 committed Aug 28, 2024
1 parent 07eba33 commit ce5856e
Show file tree
Hide file tree
Showing 3 changed files with 152 additions and 0 deletions.
55 changes: 55 additions & 0 deletions files/ja/web/api/navigator/mimetypes/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
---
title: "Navigator: mimeTypes プロパティ"
short-title: mimeTypes
slug: Web/API/Navigator/mimeTypes
l10n:
sourceCommit: cfb7587e3e3122630ad6cbd94d834ecadbe0a746
---

{{ ApiRef("HTML DOM") }}{{deprecated_header}}

{{domxref("MimeTypeArray")}} オブジェクトを返します。このオブジェクトには、ブラウザーが認識し対応している MIME タイプを表す {{domxref("MimeType")}} オブジェクトのリストが含まれています。
この配列を使用して、指定した形式のファイルを処理するために使用できる有効なプラグインに関する情報を取得することができます。
返されたオブジェクトの名前付きプロパティは列挙できません(非常に古いバージョンのブラウザーを除く)。

最近のバージョンの仕様では、返される MIME タイプの設定がハードコードされています。
PDF ファイルがインラインで表示できる場合は、`application/pdf``text/pdf` が掲載されています。
それ以外の場合は、空のリストが返されます。

> [!NOTE]
> PDF ファイルのインライン表示が対応しているかどうかを判断するには、{{domxref("Navigator.pdfViewerEnabled")}} を使用してください。このプロパティから推測しないでください。
古いバージョンのブラウザーでは、プロパティによって返されたリストがハードコードされておらず、他にも MIME タイプを返す可能性があります。

##

`MimeTypeArray` オブジェクトには、`length` プロパティのほか、`item(index)` および `namedItem(name)` メソッドがあります。

PDF のインライン表示に対応している場合、MIME タイプ `application/pdf``text/pdf` の項目があります。
それ以外の場合は、空の `MimeTypeArray` が返されます。
有効なプラグインが対応する説明とファイル拡張子は、それぞれ'pdf' と 'Portable Document Format' にハードコードされています。

##

下記コードは、PDF ファイルがインラインで表示できるかどうかをテストし、その後、プラグインの説明と対応しているファイル拡張子を出力します。

```js
if ("application/pdf" in navigator.mimeTypes) {
// browser supports inline viewing of PDF files.

const { description, suffixes } = navigator.mimeTypes["application/pdf"];
console.log(`Description: ${description}, Suffix: ${suffixes}`);
// expected output: Description: Portable Document Format, Suffix: pdf
}
```

上記のコードでは `application/pdf` をテストしていますが、同様に `text/pdf` を調べてもよいことに注意してください。(どちらの MIME タイプも true になります。)
さらに、現在のブラウザーでは、プラグインの説明と拡張子を取得する必要はありません。なぜなら、この情報もハードコードされているからです。

## 仕様書

{{Specifications}}

## ブラウザーの互換性

{{Compat}}
38 changes: 38 additions & 0 deletions files/ja/web/api/navigator/pdfviewerenabled/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
---
title: "Navigator: pdfViewerEnabled プロパティ"
short-title: pdfViewerEnabled
slug: Web/API/Navigator/pdfViewerEnabled
l10n:
sourceCommit: cfb7587e3e3122630ad6cbd94d834ecadbe0a746
---

{{APIRef("HTML DOM")}}

**`pdfViewerEnabled`** は {{domxref("Navigator")}} インターフェイスの読み取り専用プロパティで、ブラウザーが PDF ファイルへの移動時にインライン表示に対応しているかどうかを示します。

インライン表示に対応していない場合は、PDF がダウンロードされ、外部アプリケーションで処理される場合があります。

> [!NOTE]
> このメソッドは、PDFファイルのインライン表示に対応していることを推測する、古いメソッドのいくつかを置き換えます。
##

`true` は、ブラウザーが PDF ファイルをインラインで表示できる場合(内部ビューアーまたは PDF ビューアー拡張機能を使用して)を示します。そうでない場合は `false` です。

##

PDF のインライン表示対応を調べるには、次のようにします。

```js
if (!navigator.pdfViewerEnabled) {
// このブラウザーは PDF ファイルのインライン表示に対応していません。
}
```

## 仕様書

{{Specifications}}

## ブラウザーの互換性

{{Compat}}
59 changes: 59 additions & 0 deletions files/ja/web/api/navigator/plugins/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
---
title: "Navigator: plugins プロパティ"
short-title: plugins
slug: Web/API/Navigator/plugins
l10n:
sourceCommit: cfb7587e3e3122630ad6cbd94d834ecadbe0a746
---

{{APIRef("HTML DOM")}}{{deprecated_header}}

アプリケーションにインストールされているプラグインを記述した {{DOMxRef("Plugin")}} オブジェクトが含まれている {{DOMxRef("PluginArray")}} オブジェクトを返します。
返されたオブジェクトの名前付きプロパティは列挙できません(非常に古いバージョンのブラウザーを除く)。

最近のバージョンの仕様では、返されるリストがハードコードされています。
PDF ファイルのインライン表示に対応している場合、プロパティには 5 つの標準プラグインが掲載されています。
インライン PDF 表示に対応していない場合は、空のリストが返されます。

> [!NOTE]
> PDF ファイルのインライン表示に対応しているかどうかを判断するには、{{domxref("Navigator.pdfViewerEnabled")}} を使用してください。このプロパティから推測しないでください。
>
> 「5 つの標準プラグイン」とは、開発者がインライン PDF 表示の機能検出に使用できる最も一般的なプラグインです。
> これらのプロパティを返すことで、古いコードでもインライン表示が対応しているかどうかをより確実に判断することができます。
> ただし、このプロパティは将来的に削除される可能性があるため、新しいコードではこの手法は推奨されません。
古いバージョンのブラウザーには、Adobe Flash のプラグインや PDF ビューアーの拡張機能も含まれます。

##

`plugins` は、名前付きまたはアイテムのリストとして {{DOMxRef("Plugin")}} オブジェクトにアクセスするために使用する {{DOMxRef("PluginArray")}} オブジェクトです。

返値は JavaScript の配列ではありませんが、`length` プロパティを持っており、ブラケット記法 (`plugins[2]`) を使用して個々のアイテムにアクセスできるほか、`item(index)``namedItem("name")` メソッド経由でもアクセスできます。

PDF のインライン表示に対応している場合、次のプラグインの項目が格納されます。

- "PDF Viewer"
- "Chrome PDF Viewer"
- "Chromium PDF Viewer"
- "Microsoft Edge PDF Viewer"
- "WebKit built-in PDF"

PDF のインライン表示に対応していない場合は、空オブジェクトが返されます。

##

このコードは、PDFファイルをインラインで表示させることができるかどうかを調べる方法を示しています。

```js
if ("PDF Viewer" in navigator.plugins) {
// ブラウザーが PDF ファイルのインライン表示に対応している
}
```

## 仕様書

{{Specifications}}

## ブラウザーの互換性

{{Compat}}

0 comments on commit ce5856e

Please sign in to comment.