2013-03-14 79 views
2

首先讓我總結的情況:如何覆蓋來自URL的文字圖像?

我們目前運行的獎勵制度爲當地的零售商,目前其通過電子郵件發送給客戶的優惠券是可以打印並返回到店裏一個簡單的PNG文件爲促銷折扣。

我們希望在點擊發送到他們的電子郵件地址的鏈接時將客戶成員編號和姓名覆蓋到優惠券上。我們的電子郵件系統使我們能夠個性化每個客戶收到的鏈接。

例如在客戶收到下面鏈接的時刻:從我瞭解的一些經驗有限www.website.com/testvoucher.htm

現在有可能使用PHP來覆蓋憑證圖像來創建personlised憑證。我想象中的鏈接將成爲這樣的事情:

www.website.com/testvoucher.php?membernumber='2100000' &成員名稱=‘夫人%20Smith’

我的問題是使用PHP如果可能的話怎麼能我創建了一個從URL中個性化的圖像?

任何反饋將不勝感激。

感謝,

回答

2

你會想看看進入ImageMagick API。更具體地說,annotateImage功能描述爲here

<?php 
    /* Create some objects */ 
    $image = new Imagick(); 
    $draw = new ImagickDraw(); 
    $pixel = new ImagickPixel('gray'); 

    /* New image */ 
    $image->newImage(800, 75, $pixel); 

    /* Black text */ 
    $draw->setFillColor('black'); 

    /* Font properties */ 
    $draw->setFont('Bookman-DemiItalic'); 
    $draw->setFontSize(30); 

    /* Create text */ 
    $image->annotateImage($draw, 10, 45, 0, 'The quick brown fox jumps over the lazy dog'); 

    /* Give image a format */ 
    $image->setImageFormat('png'); 

    /* Output the image with headers */ 
    header('Content-type: image/png'); 
    echo $image; 
?> 

複製從功能文檔頁面粘貼)

您可以簡單地鏈接到www.website.com/testvoucher.php?membernumber=2100000&membername=Mrs%20Smith那裏駐留上述PHP代碼稍加修改使用優惠券的圖像,並從文本給他們發電子郵件網址。

+0

謝謝,我會看看這個! – 2013-03-14 12:23:52

+0

@JackNaylor另外,爲了增加花哨,你可以通過使用具有'src'屬性的'img'標籤和所討論的url格式來將圖像放在電子郵件中。還有一點需要記住的是,我選擇ImageMagick的原因是每個人都說它比ImageMagick的早期分支GD有更多的選擇和更好的性能。 – 2013-03-14 12:30:49

+0

感謝您的全力幫助,我現在已按要求開展工作。我用這兩個答案來找到我需要的。此外,電子郵件提示非常有幫助。 – 2013-03-14 14:28:25

0

您可以使用GD圖像庫爲:

http://php.net/manual/en/book.image.php

您可以使用多種功能來打開根據他們對如擴展的圖像。 :

http://www.php.net/manual/en/function.imagecreatefromjpeg.php爲JPEG

http://www.php.net/manual/en/function.imagecreatefrompng.php爲PNG

您也可以通過$_GET['membername']獲取名稱和使用打印圖像:

http://www.php.net/manual/en/function.imagefttext.php

+0

謝謝,我會研究這個! – 2013-03-14 12:23:28