bug 2682: Watermark sizing calculation is made on the requested size not on the final one
git-svn-id: http://piwigo.org/svn/trunk@16989 68402e56-0260-453c-a942-63ccdbb3a9ee
This commit is contained in:
parent
9571cf5e45
commit
7502b3bbee
3 changed files with 17 additions and 5 deletions
9
i.php
9
i.php
|
@ -104,6 +104,7 @@ function ierror($msg, $code)
|
|||
header('Request-URI: '.$url);
|
||||
header('Content-Location: '.$url);
|
||||
header('Location: '.$url);
|
||||
ilog('WARN', $code, $url, $_SERVER['REQUEST_URI']);
|
||||
exit;
|
||||
}
|
||||
if ($code>=400)
|
||||
|
@ -203,7 +204,7 @@ function parse_request()
|
|||
{
|
||||
preg_match($conf['sync_chars_regex'], $token) or ierror('Invalid chars in request', 400);
|
||||
}
|
||||
|
||||
|
||||
$page['derivative_path'] = PHPWG_ROOT_PATH.PWG_DERIVATIVE_DIR.$req;
|
||||
|
||||
$pos = strrpos($req, '.');
|
||||
|
@ -452,7 +453,7 @@ SELECT *
|
|||
FROM '.$prefixeTable.'images
|
||||
WHERE path=\''.$page['src_location'].'\'
|
||||
;';
|
||||
|
||||
|
||||
if ( ($row=pwg_db_fetch_assoc(pwg_query($query))) )
|
||||
{
|
||||
if (isset($row['width']))
|
||||
|
@ -464,7 +465,7 @@ SELECT *
|
|||
if (!isset($row['rotation']))
|
||||
{
|
||||
$page['rotation_angle'] = pwg_image::get_rotation_angle($page['src_path']);
|
||||
|
||||
|
||||
single_update(
|
||||
$prefixeTable.'images',
|
||||
array('rotation' => pwg_image::get_rotation_code_from_angle($page['rotation_angle'])),
|
||||
|
@ -540,7 +541,7 @@ if ($params->sharpen)
|
|||
$timing['sharpen'] = time_step($step);
|
||||
}
|
||||
|
||||
if ($params->use_watermark)
|
||||
if ($params->will_watermark($d_size))
|
||||
{
|
||||
$wm = ImageStdParams::get_watermark();
|
||||
$wm_image = new pwg_image(PHPWG_ROOT_PATH.$wm->file);
|
||||
|
|
|
@ -197,7 +197,7 @@ final class DerivativeImage
|
|||
{
|
||||
if ( $src->has_size() && $params->is_identity( $src->get_size() ) )
|
||||
{
|
||||
if (!$params->use_watermark && !$src->rotation)
|
||||
if (!$params->will_watermark($src->get_size()) && !$src->rotation)
|
||||
{
|
||||
$params = null;
|
||||
$rel_path = $rel_url = $src->rel_path;
|
||||
|
|
|
@ -281,5 +281,16 @@ final class DerivativeParams
|
|||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
function will_watermark($out_size)
|
||||
{
|
||||
if ($this->use_watermark)
|
||||
{
|
||||
$min_size = ImageStdParams::get_watermark()->min_size;
|
||||
return $min_size[0]<=$out_size[0]
|
||||
&& $min_size[1]<=$$out_size[1];
|
||||
}
|
||||
return false;
|
||||
}
|
||||
}
|
||||
?>
|
Loading…
Add table
Reference in a new issue