2013-07-24 4 views
3

Я использую zend и нуждаюсь в печати отчета, как в PDF, и я хочу нарисовать место для изображения. но я не могу найти решение, потому что я вижу в site. Я могу установить только размер изображения, но пока не могу найти, как установить местоположение для изображения.zend_PDF drawImage для заданного местоположения

 $image = Zend_Pdf_Image::imageWithPath($base."/images/logo_login.png"); 
     $page->drawImage($image, 10, 30, 20, 50); 

да этим кодом я не могу нарисовать место для изображения. так что кто-то знал об этом, пожалуйста, поделитесь им со мной. благодаря !

ответ

-1

drawImage function get as paramteters расположение начальной точки (вверху слева), чтобы нарисовать изображение и конечную точку (внизу справа). По этим координатам вы можете указать местоположение и размер изображения для рисования.

http://framework.zend.com/manual/1.12/en/zend.pdf.drawing.html

public function drawImage(Zend_Pdf_Resource_Image $image, $x1, $y1, $x2, $y2); 
2

Zend_Pdf использует в нижнем левом углу, как происхождение и использует точки (1/72 дюйма) в качестве единицы измерения.

Я обычно не размещать ссылки на мой собственный материал так откровенно, но я видел несколько вопросов от вас в последнее время о том, как использовать Zend_Pdf, и я думаю, что вы могли бы извлечь пользу из чтения этой статьи:

http://yetanotherprogrammingblog.com/content/zend_pdf-wrapper-and-sample-code

В этой статье содержится конкретный раздел об использовании drawImage().

+0

Есть ли способ нарисовать изображение за текстом, поэтому он становится как фон? Не существует аргумента z-index для функции drawImage. – Wouter

+0

Я не тестировал эту теорию, но я уверен, что если вы сначала нарисуете изображение, а затем нарисуете текст, текст будет отображаться поверх изображения. То есть, я уверен, что при рендеринге PDF приложение рендеринга просто следует за инструкциями один за другим в том порядке, в котором они появляются в файле, а это означает, что все, что получает второе, перезапишет все, что было нарисовано первым. – JamesG