继续修复sablog-x 2.0的缩略图尺寸bug

前些天发了篇南京之行的图片日志,发现把图片附件插入到文章中后,缩略图悬浮信息里的尺寸显示有问题:

thumb-size-bug.png

查看缩略图显示代码,发现问题出在 include\func\attachment.func.php 153~170行:

$a_thumb_path = $attachdb[$attachid]['thumb_filepath'];
$a_path = $attachdb[$attachid]['filepath'];

if ($attachdb[$attachid]['thumb_filepath'] && $options['attachments_thumbs'] && file_exists(SABLOG_ROOT.$a_thumb_path)) {
    $attachdb[$attachid]['filepath'] = $attachdb[$attachid]['thumb_filepath'];
    $a_path = $a_thumb_path;
} else {
    $size = explode('x', strtolower($options['attachments_thumbs_size']));
    $imagesize = @getimagesize(SABLOG_ROOT.$a_path);
    $im = scale_image( array(
        'max_width'     => $size[0],
        'max_height' => $size[1],
        'cur_width'     => $imagesize[0],
        'cur_height' => $imagesize[1]
    ));
    $attachdb[$attachid]['thumb_width'] = $im['img_width'];
    $attachdb[$attachid]['thumb_height'] = $im['img_height'];
}

把第161行挪到第155行去,改成:

$a_thumb_path = $attachdb[$attachid]['thumb_filepath'];
$a_path = $attachdb[$attachid]['filepath'];
$imagesize = @getimagesize(SABLOG_ROOT.$a_path);

if ($attachdb[$attachid]['thumb_filepath'] && $options['attachments_thumbs'] && file_exists(SABLOG_ROOT.$a_thumb_path)) {
    $attachdb[$attachid]['filepath'] = $attachdb[$attachid]['thumb_filepath'];
    $a_path = $a_thumb_path;
} else {
    $size = explode('x', strtolower($options['attachments_thumbs_size']));
    $im = scale_image( array(
        'max_width'     => $size[0],
        'max_height' => $size[1],
        'cur_width'     => $imagesize[0],
        'cur_height' => $imagesize[1]
    ));
    $attachdb[$attachid]['thumb_width'] = $im['img_width'];
    $attachdb[$attachid]['thumb_height'] = $im['img_height'];
}

这样,在缩略图的alt信息里就会显示原图的大小了。

分享这篇文章 »


无觅相关文章插件,快速提升流量