plugins:mediautils

NP_MediaUtils

概要

メディア処理/管理/表示のための静的メソッド集であるMediaUtilsと、ファイルのためのオブジェクトであるMediumをロードします。このプラグイン単体では、ウェブログIDを特定するためのCookieを維持することしかしません。

General Plugin info
作者: Mocchi
最新のバージョン: Ver.0.9.6 (RC2)
フォーラム参照先: 現トピック ベータテスト
依存関係: なし
対応環境: Nucleus CMS 3.40以上、PHPのバージョン5以上

インストール方法

  1. ZIPファイルを展開して、中身をサーバーのプラグインディレクトリにアップロードします
  2. スクリプトのパーミションを変更し、実行権限を付与します
  3. 管理画面からプラグインをインストールして下さい

リサイズのルール

リサイズに関するルールだけ記述しておきます。以下の4つのパターンがあります。

  1. 最大の横幅と縦幅が0のとき
  2. 最大の横幅が0のとき
  3. 最大の縦幅が0のとき
  4. 最大の横幅と縦幅指定されているとき

最大の横幅と縦幅が0のとき

何も処理しません。

最大の横幅が0のとき

最大の縦幅は指定されているため、どんな画像でもこの縦幅に合わせてリサイズします。縦長の画像でも横長の画像でも、縦幅をこの値に合わせてリサイズします。場合によっては画像が拡大されることもあります。

最大の縦幅が0のとき

最大の横幅は指定されているため、どんな画像もこの横幅に合わせてリサイズします。縦長の画像でも横長の画像でも、横幅をこの値に合わせてリサイズします。場合によっては画像が拡大されることもあります。

最大の横幅と縦幅が指定されているとき

最大の横幅と最大の縦幅によって作られる「箱」に、ぴったり合うようにリサイズされます。これは(X)HTMLのBlock要素や、CSSのボックスレイアウトを考慮してのことです。

使い方

基本的に開発者用のプラグインとなります。ソース中にPHPdocでドキュメントを記述してありますので、そちらを参照して下さい。

静的メソッド集「MediaUtils」

プロパティ

NP_MediaUtilsで維持するクッキーの名前です

MediaUtils::$cookiename

NP_MediaUtilsで維持されたウェブログIDです

MediaUtils::$blogid

NP_MediaUtilsの機能で維持されたウェブログIDの示す短縮名です

MediaUtils::$bshortname

現在システムに登録されているウェブログIDとその短縮名の配列です

MediaUtils::$blogs

現在システムで設定されている$CONF['MediaPrefix']のBoolean値が入ります

MediaUtils::$prefix

現在システムで設定されている$CONF['MaxUploadSize']の数値が入ります

MediaUtils::$maxsize

現在システムで設定されている$CONF['AllowedTypes']をカンマをデリミタとして区切った配列が入ります

MediaUtils::$suffixes

ハッシュ化アルゴリズムです。標準はmd5です

MediaUtils::$algorism

画像のmime型と拡張子の連想配列です。

MediaUtils::$image_mime

画像リサンプリング系メソッド

リサンプリングしたバイナリをファイルとして保存します

MediaUtils::storeResampledImage

リサンプリングしたバイナリをブラウザに向けてHTTP送信します

MediaUtils::responseResampledImage

404エラーをブラウザに送信します

MediaUtils::error

ファイル情報系メソッド

ファイル情報のリストを再帰的に返します。ファイル情報はオブジェクトMediumのインスタンスとなります。

MediaUtils::getMediaList

ディレクトリ情報系メソッド

指定したディレクトリに関する情報を返します。情報は配列となっています。

MediaUtils::getPathData

ディレクトリに関する情報のリストを再帰的に返します。情報はMediaUtils::getPathDataに基づいています。

MediaUtils::getPathList

指定したディレクトリがあるか、書き込み可能か確認します。なければ作成を試します

MediaUtils::checkDir

指定したディレクトリを削除します

MediaUtils::purgeDir

ファイルアップロード系

ファイルをアップロードします。ファイル名の上書きなどに対応しています。

MediaUtils::uploadMedium

Mediumオブジェクト

コンストラクト

引数にメディア用ディレクトリのルート、ルートからの相対パス、接頭辞のありなしを指定します。接頭辞の書式はNucleus CMSに準じます。

$medium = new MEDIUM($root, $path [$prefix])

プロパティ

メディア用ルートディレクトリ

$medium->root

ルートディレクトリからファイルのあるディレクトリまでの相対パス

$medium->path

ファイル名

$medium->name

更新日

$medium->update

接頭辞から計算したアップロードの日付

$medium->prefix

ファイル拡張子

$medium->suffix

接頭辞と拡張子を取り除いたファイル名

$medium->filename

ファイルサイズ

$medium->size

ファイルのMIME型。 Fileinfoが利用可能なシステムであればそちらから判定し、そうでなければgetimagesizeによる判定となります。

$medium->mime

ファイルが画像であればその横幅。

$medium->width

ファイルが画像であればその縦幅。

$medium->height

$medium→setResampledSizeで設定したリサンプリング後の横幅。先述した「リサンプリングのルール」に従います。

$medium->resampledwidth

$medium→setResampledSizeで設定したリサンプリング後の縦幅。先述した「リサンプリングのルール」に従います。

$medium->resampledheight

メソッド

最大の縦幅・横幅を指定して、先述した「リサンプリングのルール」に従い、リサンプリング後の縦幅・横幅を設定します。

$medium->setResampledSize($maxwidth, $maxheight)

リサンプリングしたバイナリを取得します。$image_mimeにはMediaUtils::$image_mimeの配列を指定します。リサンプリングは、PHPで標準的に利用できるGD (Graphics Draw) Libraryのバインディングを利用しているため、サーバ環境によって機能制限が出ることもあります。

$medium->getResampledBinary($image_mime)

$algorismでハッシュ化したファイル名を取得します。サムネイル画像のファイル名などに使用する、一位のStringを得ることができます。

$medium->gethashedName($algorism)

開発履歴

  • 2011.04.04 Ver.0.9.6 (RC2)
    • [Mocchi] 仕様変更
    • [Mocchi] リリースキャンディデート2
  • 2010.12.26 Ver.0.9.5 (RC1) 非公開
    • [Mocchi] リリースキャンディデート1
  • 2010.12.15 Ver.0.9
    • [Mocchi] Ver.1.0のベータ版としてリリース
 
plugins/mediautils.txt · 最終更新: 2012/01/28 23:17 (外部編集)