Notice that the coordinates given are absolute - they aren't tranformed using the transformation matrix.
The following example shows a simple function that shows an url and adds a weblink.
As illustrated it only works when the page isn't transformed.
<?php
function linkxy($x,$y,$url,$font,$size) {
global $pdf;
pdf_setfont($pdf, $font, $size);
pdf_show_xy($pdf,$url,$x,$y);
pdf_add_weblink($pdf,
$x-2,
$y-2+pdf_get_value($pdf,"descender",$font)*$size,
$x+2+pdf_stringwidth($pdf,$url,$font,$size),
$y+2+pdf_get_value($pdf,"ascender",$font)*$size,
$url);
}
$pdf = pdf_new();
pdf_open_file($pdf);
pdf_begin_page($pdf, 595, 421);
$font = PDF_findfont($pdf, "Helvetica", "host", 0);
linkxy(50,300,"http://www.ruf.dk",$font,30);
/* the following does not work, sorry */
pdf_translate($pdf,250,100);
pdf_scale($pdf,0.6,1.2);
linkxy(10,100,"http://www.google.com",$font,30);
pdf_end_page($pdf);
pdf_close($pdf);
$data = pdf_get_buffer($pdf);
header('Content-type: application/pdf');
header('Content-disposition: inline; filename=myTest.pdf');
header('Content-length: ' . strlen($data));
echo $data;
pdf_delete($pdf);
?>
PDF_add_weblink
(PHP 4, PECL pdflib >= 1.0.0)
PDF_add_weblink — [Obsolète] Ajoute un lien web sur la page PDF courante
Description
bool PDF_add_weblink
( resource
$pdfdoc
, float $lowerleftx
, float $lowerlefty
, float $upperrightx
, float $upperrighty
, string $url
)
PDF_add_weblink() ajoute un lien web url
sur la page courante.
Cette fonction retourne TRUE en cas de
succès ou FALSE si une erreur survient.
Cette fonction est obsolète depuis la version 6 de la PDFlib, utilisez la fonction
PDF_create_action() avec le paramètre
type=URI et la fonction
PDF_create_annotation() avec le paramètre
type=Link à la place.
rz at daimi dot au dot dk ¶
8 years ago
js at justnet dot com dot au ¶
10 years ago
The example given in the above comment is potentially confusing, since the 4th and 5th arguments appear to be the width and height of the link area, but are actually the coordinates of the diagonally opposite corner. This is much more evident when the starting point for the weblink is something other than 0,0 (which is of course very likely).
A better example:
$starting_xpos = 100;
$starting_ypos = 150;
pdf_add_weblink($pdf, $starting_xpos, $starting_ypos, $starting_xpos + $width, $starting_ypos + $height, "http://goweb.com.au/");
bob at nijman dot de ¶
11 years ago
Try this:
<?php
//create & open PDF-Object
$pdf = pdf_new();
pdf_open_file($pdf);
pdf_set_info($pdf, "Author","Bob Nijman");
//the interesting bit...
$pdfimage = pdf_open_image_file($pdf, "jpeg", "test.jpg");
$width = pdf_get_image_width($pdf, $pdfimage);
$height = pdf_get_image_height($pdf, $pdfimage);
pdf_begin_page($pdf, 421, 595);
pdf_place_image($pdf, $pdfimage, 0, 0, 1);
pdf_add_weblink($pdf, 0, 0, $width, $height, "http://www.hackeschermarkt.de");
//close it up
pdf_end_page($pdf);
pdf_close($pdf);
$data = pdf_get_buffer($pdf);
header('Content-type: application/pdf');
header('Content-disposition: inline; filename=myTest.pdf');
header('Content-length: ' . strlen($data));
echo $data;
?>
