PHP Conference Japan 2024

Imagick::appendImages

(PECL imagick 2, PECL imagick 3)

Imagick::appendImages附加一組影像

描述

public Imagick::appendImages(bool $stack): Imagick

將一組影像附加到一個更大的影像中。

參數

stack

是否垂直堆疊影像。預設情況下(或如果指定 false),影像會從左到右堆疊。如果 stacktrue,則影像會從上到下堆疊。

回傳值

成功時回傳 Imagick 實例。

錯誤/例外

發生錯誤時會拋出 ImagickException。

範例

範例 1 Imagick::appendImages() 範例

<?php

/* 建立新的 imagick 物件 */
$im = new Imagick();

/* 建立紅色、綠色和藍色影像 */
$im->newImage(100, 50, "red");
$im->newImage(100, 50, "green");
$im->newImage(100, 50, "blue");

/* 將影像附加到一起 */
$im->resetIterator();
$combined = $im->appendImages(true);

/* 輸出影像 */
$combined->setImageFormat("png");
header("Content-Type: image/png");
echo
$combined;
?>

上述範例會輸出類似以下的內容

Output of example : Imagick::appendImages()

新增註解

使用者貢獻的註解 3 個註解

Brandon
15 年前
# 如何將多頁 PDF 檔案合併成單一長影像

<?php
$im1
= new Imagick();
$im1->readImage('multi-page-pdf.pdf');
$im1->resetIterator();
# 將多個影像合併為一個,垂直堆疊。
$ima = $im1->appendImages(true);
$ima->setImageFormat("png");
header("Content-Type: image/png");
echo
$ima;
?>
adao at adao dot eti dot br
10 年前
# 將 $ima 更改為 $ima->getimagesblob()

<?php
$im1
= new Imagick();
$im1->readImage('multi-page-pdf.pdf');
$im1->resetIterator();
# 將多個影像合併為一個,垂直堆疊。
$ima = $im1->appendImages(true);
$ima->setImageFormat("png");
header("Content-Type: image/png");
echo
$ima->getimagesblob();
?>
匿名
10 年前
有時在具有最少記憶體的伺服器上,於長時間執行的 apache24 實例上執行此程式碼時,最終的 "echo $ima;" 會回傳空字串。

執行 "apache graceful" 似乎可以清除此問題。似乎沒有其他方法可以修正或偵測此問題。真爛。
To Top