21278 Posts in 5728 Topics by 2599 members
|
Page:
1
|
Go to End | |
| Author | Topic: | 513 Views |
-
Watermark in the picture.

13 September 2011 at 4:21am
Hello, I try to display the watermark on the photo. The code I created a watermark displays, unfortunately the full-page displays. Lose content, etc.
Can you tell me how to properly insert and displays a watermark in the picture? Thank you.
Sorry about my English ...class Fotka extends DataObject {
static $db = array (
'Popis' => 'Text',
'DatumVlozeni' => 'Date'
);static $has_one = array (
'Attachment' => 'Image',
'PodKategorie2' => 'PodKategorie2'
);...
public function Watermark(GD $gd) {
$temp = $this->Attachment();
$watermark = imagecreatefromjpeg(Director::absoluteBaseURL().'mysite/code/water.jpg');
$imageToWatermark = imagecreatefromjpeg(Director::absoluteBaseURL().$temp->Filename);
$imagewatermark_width = imagesx($imageToWatermark);
imagecopymerge($imageToWatermark, $watermark, 39, 45, 0, 0, 400, 400, 40);
$tm = imagejpeg($imageToWatermark);
$GDoutput= new GD($temp->Filename);
// return $tm;
return $GDoutput;
}My Template PodKategorie2.ss
$Content
<% control Fotky %>
<ul>
<li>$Popis</li>
<li>$DatumVlozeni</li>
<img="$Watermark"/>
</ul>
<% end_control %> -
Re: Watermark in the picture.

13 September 2011 at 4:55am
Hi,
could you try...
return $temp->Filename;
(in Watermark)and...
<img src="$Watermark"/>
(in the template)instead?
-
Re: Watermark in the picture.

13 September 2011 at 5:25am
Thank you for reply, unfortunately the result is the same. I still have a page on the picture.
It's a simple thing to me:I need to present images to all users. But for registered users will have the opportunity to download images without the watermark. So I thought the simple way is, insert a watermark ...
-
Re: Watermark in the picture.

13 September 2011 at 5:37am
What is "Fotky" is that an instance of Fotka?
what you are doing looks right with the watermark code (I've used that before), but there is quite a bit of missing detail about the "PodKategorie2" page, please post that too.
-
Re: Watermark in the picture.

13 September 2011 at 5:48am
Here is
class PodKategorie2 extends Page {
static $has_many = array (
'Fotky' => 'Fotka'
);public function getCMSFields()
{
$f = parent::getCMSFields();$manager = new ImageDataObjectManager(
$this, // Controller
'Fotky', // Source name
'Fotka', // Source class
'Attachment', // File name on DataObject
null, // Headings
'getCMSFields_forPopup' // Detail fields
// Filter clause
// Sort clause
// Join clause
);$f->addFieldToTab("Root.Content.Gallery",$manager);
return $f;
}
}class PodKategorie2_Controller extends Page_Controller {
}
-
Re: Watermark in the picture.

19 September 2011 at 10:02pm
Finally, it has helped create a class WatermarkImage that inherits the image. GetWatermark method, which finally displays a watermark.
class WatermarkImage extends Image {
function getWatermark() {
$watermark = imagecreatefromjpeg(Director::absoluteBaseURL().'mysite/code/watermark.jpg');
$watermark_width = imagesx($watermark);
$watermark_height = imagesy($watermark);
$image = imagecreatetruecolor($watermark_width, $watermark_height);
$image = imagecreatefromjpeg(str_replace('/','\\',Director::baseFolder().'/'.$this->Filename));
$size = getimagesize(str_replace('/','\\',Director::baseFolder().'/'.$this->Filename));
$dest_x = $size[0] - $watermark_width - 5;
$dest_y = $size[1] - $watermark_height - 5;
imagecopymerge($image, $watermark, $dest_x, $dest_y, 0, 0, $watermark_width, $watermark_height, 40);
imagejpeg($image,str_replace('/','\\',Director::baseFolder().'/'.$this->Filename));
imagedestroy($image);
imagedestroy($watermark);
}
}
in template<% control Images %>
$Attachment.SetRatioSize(150,150)
$Attachment.getWatermark<% end_control %>
| 513 Views | ||
|
Page:
1
|
Go to Top |


