【パブリッシャー】カスタムヘッダー、スタイリング、画像を使ったブランディング

# はじめに #
時には、ビジネスのウェブレポートを作成し、ブランディングに合わせてカスタマイズしたいことがあります。その際、ウェブレポートやログイン画面に会社のロゴやコーポレートカラーを反映させることができます。

**標準ログイン画面のカスタマイズ**
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2530698/f08abc97-c442-59ac-b7e3-e1a52a0cdb8e.png)

また、WEBレポートのカスタマイズも試みましたのでここで説明します。  
[ここ](https://www.sharperlight.com/web-channel/2018/02/19/web-channel-branding/)には、このブランディングカスタマイズについてSharperlight Softwareが説明しているページもあります。

# カスタマイズ #
### リソース ###
以下のものを準備する必要があります：
- フォルダー
- 2つのHTMLファイル
- 画像
- favicon.ico

次に、2つのHTMLファイル、画像、favicon.icoをここで示されたフォルダーに配置する必要があります。

#### フォルダー ####
これは、HTMLファイル、画像、faviconが保存されるフォルダーです。  
フォルダー名は「Custom」でなければならず、次の場所に作成する必要があります：
```
C:\ProgramData\SharperLight\MetaData\
```
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2530698/3dbf45af-2a14-8482-14d7-fa524dcaaf31.png)

#### 2つのHTMLファイル ####
これらはログイン画面のブランディング用ファイルです。  
1つはヘッダー用で、名前は**UserLogonHeader.html**とし、もう1つはボディ用で、名前は**UserLogonBody.html**とする必要があります。  
以下はヘッダーHTML(**UserLogonHeader.html**)の内容の例で、スタイリング定義のみが含まれています。
```
<style>
h2 {
	background-color: #D4ECEE;
	background-image: none;
	color: #D4ECEE;
	width: 790px;
	margin-top: -2px;
}
#grLogon.k-widget, #grLogon.k-content {
	background: #005B98 !important;
	width: 800px;
	color: white;
}
.slTitle{
	color: white !important;
}
</style>
```
この部分にこのスタイルが適用されます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2530698/a892efe2-07e8-16dc-23b2-d3b23f53391a.png)

次に、これはボディHTML(**UserLogonBody.html**)の内容で、ログイン画面用のロゴが含まれています。
```
<img src="File/Custom/Qiita Branding Sample Logo 2.jpg" style="width: 800px; height: 139px" >
```
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2530698/4cdeb20b-0312-04dc-6e3c-0a80daecddcf.png)

#### 画像 ####
これは基本的に会社のロゴです。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2530698/830ff36e-d10e-f896-815b-e66df342cd62.png)
私はこの画像を準備し、「Qiita Branding Sample Logo 2.jpg」として`...\Custom\` フォルダに保存しました。**UserLogonBody.html**ファイルのこの部分で指定されています。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2530698/ed8b9c55-44f0-34b4-c93d-4a5705ae9559.png)

#### favicon.ico ####
これは、タブに表示されるアイコンや、ウェブページへのショートカットが作成された際に表示されるアイコンを上書きする小さな画像です。  
私はこのようなサンプルのicoを作成しました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2530698/18bc95fc-bec1-7538-c377-f3104374e3d2.png)
このようにタブに表示されます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2530698/4b4e5639-eefc-28e6-ecb8-1e7d4f8ca117.png)

### その他のブランド化 ###  
ログイン画面については、前述の2つのHTMLファイルが、Sharperlightによって自動的に認識され使用されます。  
次に、各WEBレポートのヘッダーセクションで画像（ロゴ）の使用を指定する方法を紹介します。

#### レポートのヘッダー ####  
WEBレポートを作成する際に、ヘッダーのカスタマイズオプションを使用します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2530698/7d74eebc-860a-67b3-9188-b08562b5f6b0.png)
最初にエディタを開いたとき、テンプレートが表示されます。  
例として指定されている画像ファイルパスを、自身の画像ファイルパスに置き換えることが最も簡単な方法でしょう。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2530698/793a8d14-d6e2-45ba-f4d1-b2f1835d90b1.png)
このようにファイルパスを置き換えました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2530698/a1a152bd-6610-77b2-25ed-2bb76ffd9e2e.png)
```
'File\Custom\Qiita Branding Sample Logo 2.jpg'
```

:::note warn
注記
サンプルのヘッダー定義は、これらの特別なタグの間に記述されています。
```
<!--ReportPromptSectionBegin-->
...
...
<!--ReportPromptSectionEnd-->
```
つまり、ヘッダー定義はプロンプトエリアに配置されているため、レポートにプロンプトエリアがある場合にのみ機能します。  
こちらがここで言及されているプロンプトエリアです。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2530698/885aa7f3-ff55-a270-c6ee-131e8b8242e5.png)

これらのタグを削除することで、レポートにプロンプトがあるかどうかに関係なく、カスタムヘッダーが表示されるようになります。
:::

#### リソースオプションの使用 ####
カスタムヘッダーのコードは、前述のようにヘッダーオプションに直接記述されました。

他のレポートにも同じコードを配置し、更新が必要な場合にはそれらを一つ一つ更新しなければならないと思うかもしれません。

しかし、**リソース**オプションを使用することで、それを避けることができます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2530698/803ac84c-dff8-2c1c-4775-8a6cc2fcb27a.png)
カスタムヘッダー定義を含むHTMLファイルを作成し、そのファイルをリソースとしてここにインポートします。  
その後、ヘッダーオプションにリソースの参照コードを設定することができます。

そこで、このようなHTMLファイルを作成しました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2530698/7d916952-72a9-9988-b6de-92603c7dee80.png)
その後、リソースとしてインポートし、参照コードを取得しました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2530698/b43619d4-032e-1968-e09e-846bd5f75f3a.png)
参照コードはこのようにヘッダーエディタに貼り付けました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2530698/11a04a8c-a8a0-53a6-0c40-13206161b1dc.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2530698/86d7ef2f-a1b0-c924-9874-478bb0338c5d.png)

# おわりに #
ブランディングは、ビジネスレポートに高い品質と信頼性を与えると思います。Shaperlightを使えば、大きな努力をせずにそれを実現することができます。