昊毅_周
(OpenTTC)
1
こんにちは。
私のプロジェクトは、老子道徳経の文化に焦点を当てたコミュニティを構築することです。表示する必要のある5,000冊以上の古書があり、それらをすべてAVIF画像形式に圧縮しました。これらの書籍の中には、最大2,500枚のAVIF画像を含むものもあります。
質問ですが、これらの画像を1つのDiscourse投稿に挿入して、ユーザーがオンラインで読めるようにするにはどうすればよいでしょうか?
投稿内でユーザーに以下の機能を提供する、プラグインのようなソリューションを探しています。
- 画像間を簡単に前後に移動できる(ページをめくるように)。
- 特定の画像番号に直接ジャンプできる機能。
- 決定的なのは、画像は遅延読み込みされる必要があります。投稿が開かれたときにすべて一度に読み込まれるのではなく、ユーザーがそこに移動したときにのみ読み込まれる必要があります。
私のファイルはすべて数値順に整理されており、AVIF形式です。各書籍は独自のフォルダ内にあります。平均的な画像サイズは150KBで、書籍には通常300から1,000ページが含まれており、例外的に2,500ページに達するものもあります。
なぜこの要件があるのか?
私の書籍コレクションは膨大で、現在350GBを超えています。AVIFへの圧縮は、ストレージを管理するために必要でした。
AVIFやWebPのような形式は、単一のPDFファイルに簡単にパッケージ化できません。
書籍をZIPまたはRARアーカイブとしてパッケージ化すると、オンラインでの読書ができなくなります。CBZのような電子書籍形式を使用すると、サーバーに過大な負荷がかかります。
ご協力いただき、誠にありがとうございます!
「いいね!」 1
pfaffman
(Jay Pfaffman)
2
滅多に言わないことですが、Discourse があなたの問題に適したツールかどうかはわかりません。
それでも使いたい場合は、おそらく本ごとにトピックを作成し、章ごとに投稿を作成するようなことをするでしょう。意味が通じるでしょうか(章がない可能性もありますか?)。
その後、ディレクトリ名を読み込んでトピックを作成し、以下のようなことを行うインポートスクリプトを使用できます。
files.each do |f|
u=uploader.create_upload(1, f.path, f.filename)
raw += uploader.html_for_upload(u, f.filename)
end
そして、その raw を使用してトピックを作成します。
トピックを作成する例を見つけるには、インポートスクリプトディレクトリを確認する必要がありますが、それが大まかなアイデアです。
そうすれば、すべての画像が 1 つのトピック/投稿にまとめられます。そして、たくさんの画像をスクロールできるツールがいくつかあると思います。おそらく、私よりも他の誰かがそれらに注意を払っているでしょう。
「いいね!」 2
Alteras
(Steven Chang)
3
前述の通り、Discourse は、少なくともライブラリのホスティングには役立たないでしょう。代わりに、Discourse インスタンスと並行して別の画像ホスティングサービスの使用を検討することをお勧めします。
以下は、多くの機能(すぐに使えるウェブアプリ、ユーザーフレンドリーでモバイルフレンドリーなインターフェイス、ディレクトリベースのアルバム、検索機能など)を備えている可能性のある、セルフホスト型のフォトギャラリーサービスのリストです。
画像ホスティングサービスを別々に実行し、そこからの URL を Discourse 上の埋め込み iframe として使用できます。これにより、Discourse の DB がすべての画像をダウンロードする必要がなくなり、画像ホスティングサービスが遅延読み込みを処理できるようになります。そこから、ライブラリ用のスタンドアロンページ、ユーザー投稿からの参照の自動リンクなどのテーマコンポーネントまたはプラグインの使用を検討し始めることができます。
「いいね!」 1
Jagster
(Jakke Lehtonen)
4
ホスティングの問題ではなく、読書時の使いやすさの問題だと思います。より西洋風のスタイリッシュな人々にとっては、コミックを表示するのと非常に似た問題です。そして、そのために適切なプラットフォームを見つけることができるかもしれませんが、WordPressでも解決策を提供できると確信しています。
そして、Discourseによるコンテンツとコミュニティ/ディスカッションの接続は完全に些細なことです。
しかし、Discourseのエコシステムでは、Discpageが提供していたようなものは別の解決策になる可能性があります。しかし、それは壊れています。
「いいね!」 2
thoka
(Thomas Kalka)
5
コミックファイル形式のオンラインリーダーがあり、オンデマンドでファイルを読み込みます。
たとえば、GitHub - codedread/kthoom: Comic Book Reader in the Browser は alwaysOptimizedForStreaming=true をサポートしており、kthoom はページが解凍されるとすぐにレンダリングするように指示され、範囲リクエストでURLから読み込むことができます。
これは、ユーザーグループごと、またはログインユーザーのみに書籍へのアクセスを制限したい場合にも機能しますか?
「いいね!」 1
昊毅_周
(OpenTTC)
6
ご協力いただいた皆様、本当にありがとうございました!
解決策が見つかりました。サーバーにZfileサービスをデプロイし、プライベートクラウドドライブとして機能させ、匿名ユーザーアクセスを許可するように設定しました。
ページあたりの表示ファイル数や、毎回手動で読み込む数を制御できます。匿名訪問者の権限は「プレビューのみ」に設定されています。
これにより、いくつかの重要な課題が解決されました。
複雑なファイル管理:クラウドドライブインターフェースを通じて、数十万枚の画像を管理する方がはるかに便利です。
オンデマンドプレビュー:デフォルトでは、ドライブはファイルを一覧表示するだけで、ファイルがクリックされたときにのみプレビューが生成されます。これはPhotoSwipeと非常によく似ています。(Zfileにはすべての画像を一度にプレビューするモードがありますが、後で無効にできると思います。)
Discourseとの統合:「オンラインで読む」リンクをDiscourseの投稿に追加できるようになり、クリックするとクラウドドライブインターフェースが開きます。次のようになります:https://openttc.com/t/topic/8
リソース効率:このアプローチにより、従来のギャラリーや画像ホスティングアプリケーションで一般的な不要なリソース消費を回避できます。本を読む最良の方法は、一度に1ページずつ読み込むことです。写真アルバムのように一度に複数の画像が表示されることを期待するのとは異なります。複数の本のページを同時に読み込むと、すべてのページが非常によく似ているため、視覚的にも混乱するでしょう。
Discourseをウェブサイトのホームページとして使用しており、31のカテゴリに約5,000冊の本を管理しています。各投稿は1冊の本を表し、Zfileドライブは各本の個々のコンテンツページを管理します。これは、これまでに発見した中で最高のユーザーエクスペリエンスであり、デスクトップ、携帯電話、タブレットで比較的便利です。同様のニーズを持つ他の人々にも役立つことを願っています。
いくつか注意点があります。
Zfileだけが唯一の選択肢ではありません。インターフェースは主に中国語をサポートしているようで、これは私にとって利点です。他に良い提案があれば教えてください。
将来的に、Discourseで3Dページめくりプラグイン(WordPressで利用可能なような、実際の本のめくり体験をシミュレートするもの)が利用可能になったら、それも教えてください。
重ねて感謝いたします!
「いいね!」 4
あなたのプロジェクトはとても面白そうですね!
画像を[grid]マークダウンで囲むことは試しましたか? 关于“魏伯陽 周易參同契 Cantong qi. Token for the Agreement...”类别 - 魏伯陽 周易參同契 Cantong qi. Token for the Agreement... - OpenTTC のようなトピックは、もっと管理しやすくなるでしょう。
個人的には、フォトアルバムをデジタル化し、PDFファイルに保存してDiscourseのトピックにアップロードしました。そうすれば、インラインPDFプレビューテーマコンポーネントにより、メンバーはDiscourse内で直接スクロールできるようになります。この利点は、本がそのまま残ることです。
「いいね!」 2
昊毅_周
(OpenTTC)
8
大変ありがとうございます!皆様
最近、複数のサーバーを切り替えながら開発作業を行っております。そのため、この投稿で参照されている openttc.com のリンクは不安定になる可能性があります。
現在の作業が完了次第、このスレッドに更新されたリンクを投稿し、議論の結果(Discourse の投稿に Zfile を埋め込むこと。これは将来誰かの役に立つかもしれません)を紹介させていただきます。
実は、熟考の結果、以前のアプローチは一時的に断念しました。
その理由は、管理が煩雑すぎることです。後で新しいコンテンツを追加する場合、Discourse と Zfile の両方のシステムで個別に管理し、手動で同期する必要が出てきます。
現在、コンテンツを直接 PDF として投稿に埋め込もうとしています。個々の PDF のサイズが 2GB を超えるものもあるため、まだゆっくりと対処すべき問題がたくさんあります…
皆様のご関心に感謝いたします。このコミュニティは本当に素晴らしいです!
皆様のご健康とご家族の幸せをお祈り申し上げます!
「いいね!」 2
ありがとうございます。あなたとご家族にも同じように幸あれ! 
このトピックは、問題解決のための良い選択肢が見つかったようですので、これで閉じさせていただきます。今後、また問題が発生した場合は、新しいトピックを開始してください。