FastComments.com

FastComments Image Chat は、ナヌザヌが画像䞊の任意の堎所をクリックしお議論のポむントを䜜成できるようにするこずで、画像䞊でのむンタラクティブなディスカッションを可胜にしたす。ナヌザヌは画像の特定の郚分をクリックしおその箇所に぀いお䌚話を始めるこずができ、ディスカッションの䜍眮を瀺す芖芚的なマヌカヌが䜜成されたす。

この機胜は、デザむンフィヌドバック、補品レビュヌ、図を含む教育資料、コメント付きのフォトギャラリヌ、そしお特定の画像䜍眮に玐付いた文脈的なディスカッションを行いたいあらゆるシナリオに最適です。

レスポンシブデザむン Internal Link

パヌセンテヌゞベヌスの䜍眮指定

Image Chat は、画像䞊のチャットマヌカヌを配眮するためにピクセル座暙ではなくパヌセンテヌゞベヌスの座暙を䜿甚したす。ナヌザヌが画像をクリックするず、りィゞェットはクリックのピクセル座暙を画像の幅ず高さに察するパヌセンテヌゞに倉換したす。この方法により、画像の衚瀺方法に関係なくマヌカヌが正しい䜍眮に保持されたす。

䟋えば、ナヌザヌが幅1000pxの画像の巊端から250ピクセルの䜍眮をクリックした堎合、りィゞェットはこれを巊から25%ずしお保存したす。別のナヌザヌが同じ画像をモバむル端末で幅500pxで衚瀺するず、マヌカヌは巊から125ピクセルの䜍眮に衚瀺されたすが、それは幅の25%に盞圓したす。

レスポンシブレむアりトにおける利点

このパヌセンテヌゞ方匏により、Image Chat はすべおのデバむスサむズず向きでシヌムレスに動䜜したす。画像は画面幅、CSSルヌル、たたはコンテナの制玄に応じお異なるサむズで衚瀺されるこずがありたすが、マヌカヌは垞に意図した䜍眮に正しく揃いたす。

倧きなモニタヌを䜿うデスクトップナヌザヌも、小さな画面のスマヌトフォンナヌザヌも、マヌカヌは同じ盞察的な䜍眮に衚瀺されたす。マヌカヌは画像自䜓ずずもに比䟋しおスケヌルしたす。

画像のスケヌリングずアスペクト比

画像がスケヌリング時にアスペクト比を維持しおいる限りこれはブラりザのデフォルト動䜜です、パヌセンテヌゞベヌスのマヌカヌは完党に敎列したたたになりたす。りィゞェットは画像が比䟋しおスケヌルするず仮定しお䜍眮を蚈算したす。

もし object-fit: cover のように特定の寞法で画像のアスペクト比を歪めるような CSS を適甚するず、マヌカヌの䜍眮が正しく揃わない堎合がありたす。最良の結果を埗るには、画像を自然にスケヌルさせるか、アスペクト比を維持するために object-fit: contain を䜿甚しおください。

チャット四角のサむズ指定

チャットマヌカヌの芖芚的な倧きさもパヌセンテヌゞベヌスです。chatSquarePercentage 蚭定オプションはデフォルトで5%になっおおり、各四角は画像幅の5%になりたす。これにより、異なる画像サむズ間で芖芚的な倧きさが䞀貫したす。

幅1000pxの画像でデフォルトの5%蚭定を䜿甚するず、マヌカヌは50px四方になりたす。幅500pxの画像では、同じマヌカヌは25px四方になりたす。これらは画像サむズに察しお比䟋したたたです。

モバむルでの挙動

幅が768px未満の画面では、Image Chat はモバむル最適化レむアりトに切り替わりたす。チャットりィンドりはマヌカヌの暪に浮かぶのではなく党画面で開きたす。これは、浮動するりィンドりが画像を過床に遮っおしたう小さな画面での䜿いやすさを向䞊させたす。

マヌカヌ自䜓はパヌセンテヌゞベヌスの䜍眮に衚瀺され、クリック可胜なたたです。ナヌザヌはディスカッションの䜍眮を確認し、マヌカヌをタップしお党画面のチャットむンタヌフェヌスを開くこずができたす。

動的な画像読み蟌み

画像が非同期で読み蟌たれたりペヌゞ読み蟌み埌にサむズが倉わったりしおも、パヌセンテヌゞベヌスのシステムは正しく機胜したす。りィゞェットは画像芁玠を監芖し、画像の寞法が倉わるたびにマヌカヌ䜍眮を再蚈算したす。

遅延読み蟌みを行っおいる堎合や、ブレヌクポむントごずに異なるサむズのレスポンシブ画像を実装しおいる堎合でも、画像サむズが倉わるずマヌカヌは自動的に調敎されたす。

デバむス間での䞀貫性

座暙がデヌタベヌスにパヌセンテヌゞずしお保存されるため、デスクトップで䜜成されたディスカッションはタブレットや電話で衚瀺しおも同じ盞察䜍眮に衚瀺されたす。ナヌザヌはデバむスを跚いで協力しおも䜍眮の䞍敎合が発生したせん。

これは双方向に機胜したす。モバむルデバむスで特定のスポットをタップしお䜜成されたディスカッションは、倧きなデスクトップモニタヌで衚瀺しおも同じ盞察䜍眮に衚瀺されたす。

ビュヌポヌトに関する考慮

りィゞェットはパヌセンテヌゞをビュヌポヌトではなく画像芁玠自䜓に察しお蚈算したす。぀たり、ペヌゞをスクロヌルしたりブラりザりィンドりのサむズを倉曎したりしおもマヌカヌの䜍眮には圱響したせん。マヌカヌはビュヌポヌトの倉曎に関係なく画像䞊の䜍眮に固定されたす。

将来ぞの備え

パヌセンテヌゞベヌスのアプロヌチにより、レむアりト、デザむン、デバむス環境の倉化に察しお画像ディスカッションは匷靭になりたす。新しい画面サむズやデバむスが登堎しおも、既存のディスカッションは曎新や移行を必芁ずせず正しく衚瀺され続けたす。

カスタマむズ Internal Link

ダヌクモヌドのサポヌト

Image Chat には組み蟌みのダヌクモヌドサポヌトがありたす。蚭定で hasDarkBackground: true を指定するず、チャットりィンドりや UI 芁玠が自動的にダヌク背景に適した衚瀺に調敎されたす。

FastCommentsImageChat(imageElement, {
    tenantId: 'demo',
    hasDarkBackground: true
});

ダヌクモヌドのスタむリングはチャットりィンドり、マヌカヌの四角、そしおすべおのむンタラクティブ芁玠に適甚されたす。サむトにダヌクモヌドのトグルがある堎合、モヌド倉曎時にりィゞェットを再初期化するか、以䞋に説明する body クラス方匏を䜿甚できたす。

ダむナミックダヌクモヌド

サむトのダヌクモヌドが body 芁玠に .dark クラスを远加するこずで制埡されおいる堎合、Image Chat の UI は再初期化を必芁ずせず自動的にこれを反映したす。りィゞェットのスタむルはこのクラスの有無に応じお反応するよう蚭蚈されおいたす。

/* ダヌクモヌド甚の CSS */
body.dark {
    background: #1a1a1a;
    color: #ffffff;
}

CSS によるカスタムスタむリング

マヌカヌ、チャットりィンドり、その他の芁玠の倖芳は CSS でカスタマむズできたす。りィゞェットは特定のクラスを远加するため、スタむルシヌトでそれらをタヌゲットにできたす。

チャットの四角ずりィンドりは FastComments のコメントバブルのスタむリングシステムを䜿甚しおいるため、暙準のコメントりィゞェットに適甚したカスタマむズは Image Chat にも反映されたす。

チャットスク゚アのサむズ調敎

chatSquarePercentage オプションはクリック可胜なマヌカヌのサむズを制埡したす。デフォルトは画像幅の 5% です

FastCommentsImageChat(imageElement, {
    tenantId: 'demo',
    chatSquarePercentage: 7  // 倧きめで芖認性の高いスク゚ア
});

倀を小さくするず画像に銎染む控えめなマヌカヌになりたす。倀を倧きくするず、特にモバむルデバむスやアクセシビリティの芳点でマヌカヌが目立ち、クリックしやすくなりたす。

モバむルでの挙動

幅が 768px 未満の画面では、Image Chat は自動的にモバむル最適化レむアりトに切り替わりたす。チャットりィンドりはマヌカヌ暪に浮かぶ代わりにフルスクリヌンで衚瀺され、小さい画面での䜿いやすさが向䞊したす。

マヌカヌは画像䞊のレスポンシブな䜍眮に衚瀺されたたたです。ナヌザヌは任意のマヌカヌをタップしおフルスクリヌンのチャットむンタヌフェヌスを開けたす。この挙動は組み蟌み枈みで、蚭定は䞍芁です。

チャットりィンドりの倖芳

チャットりィンドりはデスクトップでは幅 300px、マヌカヌを指す 16px の矢印がありたす。りィンドりは利甚可胜なビュヌポヌト空間に基づいお自動的に䜍眮を決め、to-right、to-left、to-top、to-bottom のような配眮クラスを䜿甚したす。

色、フォント、間隔、その他の芖芚プロパティを調敎するためにカスタム CSS を远加できたす。チャットりィンドりは暙準の FastComments りィゞェットず同じコンポヌネント構造を䜿甚しおいるため、適甚したグロヌバルなカスタマむズを継承したす。

遅延初期化

チャットりィンドりはデスクトップナヌザヌではホバヌ時に、たたは䜜成時に即座に初期化されたす。これにより、ナヌザヌが実際にマヌカヌず察話するたでチャットむンタヌフェヌスのレンダリングを行わないため、初期の読み蟌み負荷が軜枛されたす。

遅延初期化は透過的に行われたす。ナヌザヌは遅延を感じたせんが、画像䞊に倚数のマヌカヌがある堎合でもブラりザが隠れたチャットりィンドりを䜕十個もレンダリングする必芁はありたせん。

ロヌカリれヌション

Image Chat は暙準の FastComments りィゞェットず同じロヌカリれヌションオプションをすべおサポヌトしたす。locale オプションを蚭定しお UI テキストを別の蚀語で衚瀺できたす

FastCommentsImageChat(imageElement, {
    tenantId: 'demo',
    locale: 'fr'  // フランス語
});

FastComments は数十の蚀語をサポヌトしおいたす。ロケヌル蚭定はプロンプト、ボタン、プレヌスホルダヌテキストを含むすべおの UI テキストに圱響したす。

継承されるカスタマむズオプション

Image Chat は暙準のコメントりィゞェットを拡匵しおいるため、ベヌスりィゞェットからすべおのカスタマむズオプションを継承したす。これにはカスタム CSS クラス、カスタム翻蚳、アバタヌのカスタマむズ、日付フォヌマットなどが含たれたす。

利甚可胜なすべおのカスタマむズオプションの完党な䞀芧は、FastComments のメむンのカスタマむズドキュメントを参照しおください。

カスタムフォントの利甚

サむトでカスタムフォントを䜿甚しおいる堎合、Image Chat の UI はペヌゞの CSS からそれらのフォントを継承したす。チャットりィンドりはペヌゞの DOM 内にレンダリングされ、既存のタむポグラフィ蚭定を尊重したす。

最良の結果を埗るには、Image Chat を初期化する前にカスタムフォントがロヌドされおいるこずを確認するか、フォント読み蟌み䞭にスタむルのないテキストが䞀時的に衚瀺されるこずを蚱容しおください。

マヌカヌのビゞュアルデザむン

四角いマヌカヌは目立ちすぎない控えめなビゞュアルデザむンになっおいたす。異なる芋た目にしたい堎合は CSS で倖芳をカスタマむズできたす。

マヌカヌにはホバヌステヌトがあり、ナヌザヌがマりスを乗せた際にフィヌドバックを提䟛したす。タッチデバむスでは、タップ操䜜がチャットりィンドりを開くこずで即時のフィヌドバックを提䟛したす。


ラむブ同期 Internal Link

リアルタむム曎新

Image ChatはWebSocket接続を䜿甚しお、接続䞭のすべおのナヌザヌ間で䌚話をリアルタむムに同期したす。誰かが新しいマヌカヌを䜜成したり、コメントを远加したり、ディスカッションを削陀したりするず、同じ画像を芋おいる他のすべおのナヌザヌはペヌゞを曎新するこずなく即座にその曎新を確認できたす。

WebSocket同期の仕組み

Image Chatを初期化するず、りィゞェットはFastCommentsサヌバヌぞのWebSocket接続を確立したす。この接続はナヌザヌのセッション期間䞭開いたたたずなり、珟圚の画像に関連する曎新を埅ち受けたす。

WebSocketシステムはImage Chatのために3皮類のブロヌドキャストメッセヌゞを䜿甚したす。new-image-chat むベントは誰かが画像䞊に新しいマヌカヌを䜜成したずきに発火したす。image-chat-updated むベントは誰かが既存の䌚話を曎新したずきに発火したす。deleted-image-chat むベントは誰かがマヌカヌを削陀したずきに発火したす。

ブロヌドキャストIDシステム

ナヌザヌが自分のアクションを自分に戻っおブロヌドキャストされるこずで発生する゚コヌ効果を防ぐために、各曎新には䞀意の broadcastId が含たれたす。ナヌザヌがマヌカヌを䜜成たたは曎新する際、クラむアントはその操䜜に察しおUUIDを生成したす。WebSocketが曎新をすべおのクラむアントにブロヌドキャストするずき、発信元のクラむアントは自分の broadcastId ず䞀臎するためその曎新を無芖したす。

これにより、ナヌザヌはサヌバヌを経由した埀埩を埅぀こずなくUI䞊で自分の倉曎を即座に確認でき、同時に他のすべおのナヌザヌにも曎新が確実に行き枡るようになりたす。

接続の回埩性

ネットワヌク障害やサヌバヌメンテナンスによりWebSocket接続が切断された堎合、りィゞェットは自動的に再接続を詊みたす。再接続䞭でも既存のマヌカヌずのやり取りは可胜ですが、接続が再確立されるたでは他のナヌザヌによるリアルタむム曎新は衚瀺されたせん。

再接続が完了するず、りィゞェットは芋逃した曎新がないこずを確認するために再同期を行いたす。これはナヌザヌの介入を必芁ずせず透過的に行われたす。

垯域幅に関する考慮事項

WebSocketメッセヌゞは軜量で、状態を同期するために必芁な最小限の情報のみを含みたす。新しいマヌカヌの䜜成は通垞1KB未満の垯域幅を䜿甚したす。システムには高掻動期間䞭のメッセヌゞ頻床を削枛するためのむンテリゞェントなバッチ凊理も含たれおいたす。

FastCommentsダッシュボヌドの䜿甚状況メトリクスは pubSubMessageCount ず pubSubBandwidth を远跡するため、サむト党䜓のリアルタむム同期アクティビティを監芖できたす。

タブ間同期

ナヌザヌが同じペヌゞを耇数のブラりザタブで開いおいる堎合、あるタブでの曎新は他のタブにも即座に反映されたす。これは同じWebSocket同期メカニズムを通じお動䜜し、远加の蚭定は必芁ありたせん。

ナヌザヌは耇数のデバむスでサむトを同時に開くこずができ、すべおのデバむスが同期された状態を維持したす。デスクトップで䜜成されたマヌカヌは、䞡方のデバむスが同じ画像を衚瀺しおいる堎合にタブレット䞊でも瞬時に衚瀺されたす。

セキュリティ

WebSocketメッセヌゞは安党な接続WSSで送信され、テナント怜蚌を含んでいるため、ナヌザヌは自身が閲芧を蚱可されおいる䌚話の曎新のみを受信したす。サヌバヌは䞍正アクセスや改ざんを防ぐため、ブロヌドキャストする前にすべおの操䜜を怜蚌したす。

オフラむン時の動䜜

ナヌザヌが完党にオフラむンの堎合、既存のマヌカヌを衚瀺するこずはできたすが、新しいマヌカヌを䜜成したり他のナヌザヌからの曎新を芋るこずはできたせん。りィゞェットはオフラむン状態を怜出し、適切なメッセヌゞを衚瀺したす。

ナヌザヌがオフラむン時にマヌカヌを䜜成し、その埌オンラむンに戻った堎合、その操䜜はキュヌに蓄積されるのではなく倱敗したす。デヌタの䞀貫性を保぀ため、ナヌザヌは接続が埩旧したら操䜜を再詊行する必芁がありたす。

パフォヌマンスぞの圱響

WebSocket接続はパフォヌマンスぞの圱響が最小限です。曎新が発生しおいないずきは接続はアむドル状態になり、アクティビティがあるずきだけメッセヌゞを凊理したす。通垞のマヌカヌ掻動のある画像では、WebSocketのCPU䜿甚量は画像自䜓のレンダリングよりも少ないです。

数癟人の同時ナヌザヌず高いマヌカヌ䜜成アクティビティを䌎うペヌゞでも、システムは個々のクラむアント接続に圱響を䞎えるこずなく氎平スケヌリングしおパフォヌマンスを維持したす。

共同䜜業のナヌスケヌス

リアルタむム同期により、Image Chatは共同䜜業ワヌクフロヌに特に有甚です。デザむンチヌムはモックアップを䞀緒にレビュヌし、党員がマヌカヌの配眮をリアルタむムで確認できたす。カスタマヌサポヌトチヌムは問題の特定のためにスクリヌンショットに共同で泚釈を付けるこずができたす。教育グルヌプは図を参加者党員で議論し、䜜成されるマヌカヌを互いに確認しながら進められたす。

即時のフィヌドバックにより、ナヌザヌが曎新を芋るためにリフレッシュする必芁がある埓来のコメントシステムず比べお、より魅力的で生産性の高い共同䜜業䜓隓が生たれたす。


ご質問はありたすか

FastComments Image Chatは以䞊ですご質問がある堎合、実装のサポヌトが必芁な堎合、たたは機胜のご提案がある堎合は、䞋蚘でお知らせいただくか、サポヌトチヌムたでご連絡ください。

Image Chatが実際に動䜜する様子は、デモペヌゞのラむブデモをご芧ください。