@ablogcms/resize-image
v3.2.35
Published
Browser-side image resizing engine and admin drop-area controller for a-blog cms
Keywords
Readme
@ablogcms/resize-image
管理画面のフォームに画像をドラッグ&ドロップ/選択したときに、ブラウザ側で画像を縮小してから アップロードするための「リサイズエンジン」と「DOM 配線コントローラー」を提供するパッケージ。
構成
.(ResizeImageEngine): canvas を使った画像のリサイズ計算・描画・EXIF 回転補正を行う、 グローバル非依存の純粋なロジック層。./controller(ResizeImageController): input 要素・ドロップエリア・プレビュー要素を 走査してイベントを配線する DOM 層。a-blog cms 管理画面の DOM/クラス名規約に依存する。React から使う場合の Hook 化(マウント/アンマウント管理)は利用側(@ablogcms/unit-editor等)が担う。
特徴
window.ACMSへの直接参照を持たない。a-blog cms 本体固有のセレクタ名や文言(GIF ドロップ時の 確認メッセージ、バナーモジュールのサイズ設定の読み書き等)は、すべて呼び出し側がResizeImageOptionsとして注入する設計になっている。- DOM 構造・クラス名規約(
.js-img_resize_*等)自体は a-blog cms 管理画面専用のまま 抽象化していない。汎用ヘッドレスライブラリ的な完全な見た目非依存は目指さず、除去したのは カスタムグローバルへの依存だけにとどめている。 - ドロップエリアのフェードアウト演出は Web Animations API(
Element.animate)で実装しており、 jQuery への依存は持たない。
