一般的な使用法

Image_Transform を使う際に最初にすることは、 Image_Transform_Driver のインスタンスを 静的メソッド factory() で作ることです。 このメソッドにドライバ名を渡せば、インスタンスを取得することができます。

ドライバ名を省略することもできます。省略した場合、Image_TransformImagick2GD そして Imlib の順にドライバを探し、 最初に見つかったものを使用します。

これで、あとは load() にファイル名を指定すれば画像を読み込めるようになります。 倍率変更用のメソッドのひとつを使用したら、最後は save() で保存します。

倍率変更用のメソッドを、一度に複数使用することはできません。 ひとつ使用したら、まず保存する必要があります。

画像の縮小

<?php
require_once 'Image/Transform.php';

// 変換ドライバオブジェクトを作成します
$it Image_Transform::factory('GD');

// 元ファイルを読み込みます
$it->load('beach-large.jpg');

// 150px に縮小します
$it->scaleMaxLength(150);

// 別のファイルとして保存します
$it->save('beach-150px.jpg');
?>

上の例では一切エラーチェックをしていません。 すべてのメソッドは PEAR_Error オブジェクトを返します。 返り値をチェックするか、あるいは PHP 5 の場合はグローバル PEAR エラーハンドラを設定してエラー時に例外をスローさせるようにします。 これは、発生することがわかっているけれどもあえて無視している というエラーがある際などに問題となります。 (特に他のパッケージと併用する場合など) この方式を使用する際には注意しましょう。

画像の倍率変更に、エラーチェックを追加したもの

<?php
require_once 'Image/Transform.php';

// 変換ドライバオブジェクトを作成します
$it Image_Transform::factory('GD');
if (
PEAR::isError($it)) {
    die(
$it->getMessage());
}

// 元ファイルを読み込みます
$ret $it->load('beach-large.jpg');
if (
PEAR::isError($ret)) {
    die(
$ret->getMessage());
}

// 150px に縮小します
$ret $it->scaleByLength(150);
if (
PEAR::isError($ret)) {
    die(
$ret->getMessage());
}

// 別のファイルとして保存します
$ret $it->save('beach-150px.jpg');
if (
PEAR::isError($ret)) {
    die(
$ret->getMessage());
}
?>
Image_Transform (Previous) ドライバ (Next)
Last updated: Sun, 23 Nov 2014 — Download Documentation
Do you think that something on this page is wrong? Please file a bug report or add a note.
View this page in:

User Notes:

There are no user contributed notes for this page.