2013-07-11 101 views
1

最近,我們推出了一項店內激活功能,讓您使用Galaxy Tab 2拍攝照片,然後將其提供給我們的中央服務器。這是用Phonegap完成的。在服務器上,我們使用PHP和GD2來生成圖像。一切工作在服務器上,並且圖像完美地創建,問題出現在我們想用打印機打印這些照片時出現。目前,我們使用的是HITI照片打印機,但同樣的問題發生在我們常規的室內打印機上,在內置打印機上打印照片,但是它的尺寸不會超過4毫米X 2毫米。PHP GD2圖像不打印

下面是我使用的PHP的服務器生成JPEG代碼:

//define image name 
$image_name = $this->genUID() .'.jpg'; 

//get image attributes 
list($curWidth, $curHeight, $type, $attr) = getimagesize($files['my_picture']['tmp_name']); 

//create image in today's directory 
$nI = imagecreatefromjpeg($files['my_picture']['tmp_name']); 
$nP = imagecreatetruecolor($this->minimum_image_width, $this->minimum_image_height); 
$widthResizeRatio = ($this->minimum_image_width/$curWidth); 
$newWidth = $this->minimum_image_width; 
$newHeight = round(($curHeight * $widthResizeRatio),0); 
$offsetX = 0; 
$offsetY = 180; 
imagecopyresampled($nP, $nI, 0, 0, $offsetX, $offsetY, $newWidth, $newHeight, $curWidth, $curHeight); 
imageinterlace($nP, true); 
imagejpeg($nP, $this->image_directory .'/'. $this->curDate .'/'. $image_name, 100); 
imagedestroy($nI); 
imagedestroy($nP); 

您的幫助將不勝感激。

回答

0

你說服務器上的所有圖像都是完美創建的...我會更仔細地測試這個說法。如果確實如此,則問題在於如何將圖像發送到打印機,或者打印機在接收到圖像後如何處理圖像。在這兩種情況下,我認爲你不會在這裏得到很多幫助.....我可能是錯的。 GL。

+0

Howzit,Thx。當我將圖像從我的電腦打印到打印機時,很不幸,該設置要求將圖像放置在USB閃存驅動器上,然後直接插入打印機,這是出錯的地方。 –

+0

所以它聽起來像圖像創建正常,因此問題不在您的代碼。探索打印機如何發送和處理圖像 – hendr1x