2010-06-05 73 views
4

任何方式我可以剪出現有圖像的一部分,然後將結果保存爲新圖像(文件)?剪出圖像的一部分(不調整大小/縮略圖等)

+1

你想剪出多少,你想從哪裏剪出來? – 2010-06-05 11:33:51

+0

我從基於內容的網址搜索圖像,我想從算法選擇的網頁上找到的圖像創建一個鑲嵌圖。我會生成隨機數字,因爲我想讓它自動運行,而不是試圖獲得圖片的「最佳部分」或類似的東西。 – user359294 2010-06-05 11:38:10

+1

@Col。 Shrapnel哇人,你的態度真的很糟糕。 – 2010-06-05 12:20:13

回答

5

imagecopy允許您爲src圖像指定x,y,w,h參數。將這與imagecreatetruecolor相結合,你應該很容易就能達到你想要的。甚至還有imagecopy文檔中的例子:

// Create image instances 
$src = imagecreatefromgif('php.gif'); 
$dest = imagecreatetruecolor(80, 40); 

// Copy 
imagecopy($dest, $src, 0, 0, 20, 13, 80, 40); 

使用​​或imagepng將圖像保存到文件中。

1

您可以使用此功能的gd功能(manual)。

加載源圖像(imagecreatefromstring()可能是有用的,所以你不必指定圖像的類型),創建一個輸出圖像(imagecreatetruecolor()),並使用imagecopy()(如果你不希望調整其大小) 。最後使用imagepng()來輸出圖像,或將其保存到文件。

請注意,gd不會在內存中使用圖像壓縮,因此創建高分辨率馬賽克時,您的PHP進程可能需要大量內存。儘快使用imagefree()