2014-02-07 35 views
0

我正在一個網站上工作,我試圖使用圖像,唯一的問題是誰使原來的網站將所有的圖像轉換成瓷磚的人,我不知道如何使用他們所以我試圖將其轉換回我可以使用的全尺寸圖像。 我提出了一些代碼,通過該文件夾環和在一列中選擇的所有圖像,並將它們添加到一個數組,然後將其存儲在陣列中的行,然後我使用該位的代碼:從瓦片建立圖像

$image = imagecreate(1525, 2023); 
foreach($tiles as $row => $columns) { 
    foreach($columns as $col => $filename) { 
     list($w, $h) = getimagesize($filename); 
    $tile = imagecreatefromjpeg($filename); 
     imagecopy($image, $tile, $row * $w, $col * $h, 0, 0, $w, $h); 
    } 
} 
header('content-type: image/jpeg'); 
imagejpeg($image); 

所以我可以構建圖像,然後查看它的內容(我不想保存它,直到它正確地構建圖像)。但由於某種原因,當我使用它構建它時,它似乎將顏色和細節顯示出來,瓷磚不適合原始背景圖片我創建的,我知道是正確的尺寸,因爲尺寸存儲在一個XML文件,我讀,然後當我循環創建數組我使用的寬度和高度由xml文件作爲檢查,以確保瓷磚適合他們所做的尺寸。我也在煙花中構建了圖像,看起來應該是這樣,但是當我使用我的腳本構建它時,它會取出細節和顏色..

如果您需要循環代碼,無論出於何種原因讓我知道,我們將編輯它以包含它。但我已經使用存儲的文件名自己創建陣列,並且它仍然有相同的錯誤。

如果有人能幫助我會很感激。

+0

出於好奇,如果你點擊產生的圖像會發生什麼? –

+0

由於某種原因放大和縮小。 – 500111Dragon

+0

當圖像大於屏幕時,這是正常的瀏覽器行爲。我老實說,如何編寫PHP代碼來重新組裝一個平鋪的圖像,卻不知道基本的瀏覽器功能,我真的很困惑。無論如何,保存圖像。這將是正確的。 –

回答

0

我設法用

$imgdest = imagecreatetruecolor($width, $height); 
imagealphablending($imgdest, false); 
imagesavealpha($imgdest, true); 

而不是解決問題:

$image = imagecreate(1525, 2023); 

而且我還使用了錯誤的瓷磚大小不知它工作時,我得到了瓷磚尺寸出的儘管xml文件。 如果有人遇到類似的問題。