blob: 82fe69337fc80e41eea665e6f2f8a55a46616ed5 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
|
---
title: icons
slug: Mozilla/Add-ons/WebExtensions/manifest.json/icons
tags:
- Add-ons
- Extensions
- WebExtensions
translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/icons
---
<div>{{AddonSidebar}}</div>
<table class="fullwidth-table standard-table">
<tbody>
<tr>
<th scope="row" style="width: 30%;">型</th>
<td><code>Object</code></td>
</tr>
<tr>
<th scope="row">必須</th>
<td>いいえ</td>
</tr>
<tr>
<th scope="row">例</th>
<td>
<pre class="brush: json no-line-numbers">
"icons": {
"48": "icon.png",
"96": "icon@2x.png"
}</pre>
</td>
</tr>
</tbody>
</table>
<p>The <code>icons</code> key specifies icons for your extension. Those icons will be used to represent the extension in components such as the Add-ons Manager.</p>
<p>It consists of key-value pairs of image size in px and image path relative to the root directory of the extension.</p>
<p>If <code>icons</code> is not supplied, a standard extension icon will be used by default.</p>
<p>You should supply at least a main extension icon, ideally 48x48 px in size. This is the default icon that will be used in the Add-ons Manager. You may, however, supply icons of any size and Firefox will attempt to find the best icon to display in different components.</p>
<p>Firefox will consider the screen resolution when choosing an icon. To deliver the best visual experience to users with high-resolution displays, such as Retina displays, provide double-sized versions of all your icons.</p>
<h2 id="Example" name="Example">例</h2>
<p>The keys in the <code>icons</code> object specify the icon size in px, values specify the relative icon path. This example contains a 48px extension icon and a larger version for high-resolution displays.</p>
<pre class="brush: json no-line-numbers">"icons": {
"48": "icon.png",
"96": "icon@2x.png"
}</pre>
<h2 id="SVG" name="SVG">SVG</h2>
<p>You can use SVG and the browser will scale your icon appropriately. There are currently two caveats though:</p>
<ol>
<li>You need to specify a viewBox in the image. E.g.:
<pre class="brush: html"><svg viewBox="0 0 48 48" width="48" height="48" ...</pre>
</li>
<li>Even though you can use one file, you still need to specify various size of the icon in your manifest. E.g.:
<pre class="brush: json">"icons": {
"48": "icon.svg",
"96": "icon.svg"
}</pre>
</li>
</ol>
<div class="note">
<p>If you are using a program like Inkscape for creating SVG, you might want to save it as a "plain SVG". Firefox might be confused by various special namespaces and not display your icon.</p>
</div>
<h2 id="Browser_compatibility" name="Browser_compatibility">ブラウザ実装状況</h2>
<p>{{Compat("webextensions.manifest.icons")}}</p>
|