勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ。

JavaScriptにて電子書籍や漫画ビューア用のライブラリ「ToraViewer」の利用方法

電子書籍や漫画ビューア用を設置したい。条件としてはレスポンシブ対応していること。探してみるといくつかライブラリが見つかったが、スマホで閲覧した際に「ToraViewer」というライブラリが良さげ。以下にサンプルとソースコードをメモ。

 

ToraViewer

GitHub

https://github.com/toranoana/tora-viewer

CDN

CDNで使う場合は以下を記述する。

<script src="https://cdn.jsdelivr.net/npm/@toralab/tora-viewer"></script>

 

サンプル

https://taitan916.info/sample/ToraViewer/

 

ソースコード

<html lang="ja">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>JavaScriptにて電子書籍や漫画ビューア用のライブラリ「ToraViewer」のサンプル</title>
</head>
<body>

    <a href="javascript:void(0);" id="viewer">ビューア起動</a>

    <script type="text/javascript" src="https://code.jquery.com/jquery-3.7.1.min.js"></script>
    <script src="https://cdn.jsdelivr.net/npm/@toralab/tora-viewer"></script>
    <script>
    $(`#viewer`).on('click', function(){
        const viewer = toraViewer(
            [
                './img/001.jpg',
                './img/002.jpg',
                './img/003.jpg',
                './img/004.jpg',
                './img/005.jpg',
            ],
            {
                //タイトル
                title: 'サンプルタイトル',
                //1ページのサイズ
                pageSize: {
                    width: 600,
                    height: 800,
                },
            }
        );
    });
    </script>
</body>
</html>

 

気になる点

以下の点が気になった。

  • PCで閲覧時にページ数が奇数の場合、最終ページの表示が変
  • 最終ページの閉じるボタンのデザイン

MITライセンスなのでちょっと弄ってから実装する形になりそう。

 

所感

laymic」というライブラリも少々気になった。

あと漫画ビューアだけではなくWebカタログ(できればPDFファイルを閲覧できるビューア)にも使えそうなライブラリを探したいところ。

 - JavaScript

  関連記事

JavaScriptで小数の計算をする際にずれ(誤差)を無くす方法(decimal.js)

JavaScriptで小数の計算をすると値がずれる(誤差が発生する)ことがあった ...

JavaScriptで配列やオブジェクトの中身をブラウザに表示する方法

JavaScriptで配列やオブジェクトの中身を確認したい場合、console. ...

JavaScriptでlocalStorageを簡単に操作できる「store.js」ライブラリの利用方法

以前Dexie.jsを利用してIndexedDBを取り扱う方法をメモしたが、今回 ...

JavaScriptにてスワイプ可能なLightBox系ライブラリ「PhotoSwipe」の利用方法

あるサイトをWappalyzerで調査していた際に「PhotoSwipe」という ...

JavaScriptのマップ用ライブラリ「MapLibre GL JS」の利用方法

あるサイトをWappalyzerで調査していた際に「MapLibre GL JS ...