LonghornPHP 2026

ImagickKernel::scale

(PECL imagick >= 3.3.0)

ImagickKernel::scaleМасштабирует список ядер на заданную величину

Описание

public function ImagickKernel::scale(float $scale, int $normalizeFlag = ?): void

Масштабирует заданный список ядер на заданную величину, с нормализацией или без нормализации суммы значений ядер (согласно заданным флагам). Точное поведение функции зависит от используемого типа нормализации, смотрите подробности на http://www.imagemagick.org/api/morphology.php#ScaleKernelInfo.

Список параметров

scale
normalizeFlag

  • Imagick::NORMALIZE_KERNEL_NONE
  • Imagick::NORMALIZE_KERNEL_VALUE
  • Imagick::NORMALIZE_KERNEL_CORRELATE
  • Imagick::NORMALIZE_KERNEL_PERCENT

Возвращаемые значения

Примеры

Пример #1 Пример использования ImagickKernel::scale()

<?php
 function renderKernelTable($matrix) {
 $output = "<table class='infoTable'>";
 foreach ($matrix as $row) {
 $output .= "<tr>";
 foreach ($row as $cell) {
 $output .= "<td style='text-align:left'>";
 if ($cell === false) {
 $output .= "false";
 }
 else {
 $output .= round($cell, 3);
 }
 $output .= "</td>";
 }
 $output .= "</tr>";
 }
 $output .= "</table>";
 return $output;
 }
 $output = "";
 $matrix = [
 [-1, 0, -1],
 [ 0, 4, 0],
 [-1, 0, -1],
 ];
 $kernel = \ImagickKernel::fromMatrix($matrix);
 $kernelClone = clone $kernel;
 $output .= "Старт ядра<br/>";
 $output .= renderKernelTable($kernel->getMatrix());
 $output .= "Масштабирование с NORMALIZE_KERNEL_VALUE. The <br/>";
 $kernel->scale(2, \Imagick::NORMALIZE_KERNEL_VALUE);
 $output .= renderKernelTable($kernel->getMatrix());
 $kernel = clone $kernelClone;
 $output .= "Масштабирование в процентах<br/>";
 $kernel->scale(2, \Imagick::NORMALIZE_KERNEL_PERCENT);
 $output .= renderKernelTable($kernel->getMatrix());
 $matrix2 = [
 [-1, -1, 1],
 [ -1, false, 1],
 [1, 1, 1],
 ];
 $kernel = \ImagickKernel::fromMatrix($matrix2);
 $output .= "Масштабирование по корреляции<br/>";
 $kernel->scale(1, \Imagick::NORMALIZE_KERNEL_CORRELATE);
 $output .= renderKernelTable($kernel->getMatrix());
 return $output;
?>

Нашли ошибку?

ИнструкцияИсправлениеСообщение об ошибке
+Добавить

Примечания пользователей

Пользователи ещё не добавляли примечания для страницы

AltStyle によって変換されたページ (->オリジナル) /