分页: 1 / 1

[演示]发贴回贴两种方式使用图:引用(图没框)或上传(图有框)

帖子发表于 : 18 10月 2013 04:41
xiaolu
在此论坛发贴或回贴时, 如果使用了贴图. 下两图是同一图(948 X 711 像素), 但是两种方式使用图,效果不同:

1. 如果是直接引用某网上的图, 或者是先把自己的图通过 FTP Client 上传到某网站上存放, 比如 photobucket.com 等专门提供存放图的网站, (甚至是我们这个论坛使用的网站 xiaolujin.com), 因此图并不是放在了此论坛的数据库 database 里, 然后使用 [i m g] 和 [ / i m g] 的TAG来引用图(给出图的链接地址), 于是图过大的话, 不显示图右边和下面的框 (这种方式: 如果图过大了,或您的电脑或手机等显示屏幕分辨率不合适, 就有可能看不到全图, 比如就可能没有看到此图右上角的加拿大国旗的全部):

图片

2. 第二种方式: 如果是用了此论坛本身提供的发贴回贴的 "Upload attachment" ("上传图"功能), 于是图过大的话, 图的右边和下面就会给加了框 (这种方式: 如果图过大了, 点击图上任何位置后可显示全图, 或者用 MOUSE (老鼠)上下或左右拉框看全图中的任何某部分):

Re: [演示]发贴回贴两种方式使用图:引用(图没框)或上传(图有框)

帖子发表于 : 18 10月 2013 05:11
xiaolu
另外, 感谢院长提供的 ReIMG 自动缩图的 MOD 的网地址, 我今晚看看, 把这个功能给搞定.

Re: [演示]发贴回贴两种方式使用图:引用(图没框)或上传(图有框)

帖子发表于 : 18 10月 2013 06:34
wenxiuxuan
谢谢站长。
我一般都是用手机上载,有时候图太大,只好用手机屏幕拷贝一下再上传。

Re: [演示]发贴回贴两种方式使用图:引用(图没框)或上传(图有框)

帖子发表于 : 18 10月 2013 06:39
wenxiuxuan
试试。

Re: [演示]发贴回贴两种方式使用图:引用(图没框)或上传(图有框)

帖子发表于 : 18 10月 2013 06:41
xiaolu
主任贴的这个图, 为什么上面和下面有黑条带?

Re: [演示]发贴回贴两种方式使用图:引用(图没框)或上传(图有框)

帖子发表于 : 18 10月 2013 06:56
XUYCA
xiaolu 写道:主任贴的这个图, 为什么上面和下面有黑条带?

手机截屏后出现的。可以编辑掉。如果用手机竖着拍,黑带会小很多。

Re: [演示]发贴回贴两种方式使用图:引用(图没框)或上传(图有框)

帖子发表于 : 18 10月 2013 07:13
D君
最好可以自动缩图
站长辛苦辛苦

Re: [演示]发贴回贴两种方式使用图:引用(图没框)或上传(图有框)

帖子发表于 : 18 10月 2013 09:48
xiaolu
D君 写道:最好可以自动缩图
站长辛苦辛苦

如果今晚上论坛人比较多, 我就明天星期六凌晨搞(因为修改程序过程中可能会影响论坛贴子特别是贴图的正常运作,显示等), 否则的话就今晚搞...

Re: [演示]发贴回贴两种方式使用图:引用(图没框)或上传(图有框)

帖子发表于 : 18 10月 2013 10:18
wenxiuxuan
Here is a very quick, simple script to do it:



$result = move_uploaded_file($tmpName, $filePath);
$orig_image = imagecreatefromjpeg($filePath);
$image_info = getimagesize($filePath);
$width_orig = $image_info[0]; // current width as found in image file
$height_orig = $image_info[1]; // current height as found in image file
$width = 1024; // new image width
$height = 768; // new image height
$destination_image = imagecreatetruecolor($width, $height);
imagecopyresampled($destination_image, $orig_image, 0, 0, 0, 0, $width, $height, $width_orig, $height_orig);
// This will just copy the new image over the original at the same filePath.
imagejpeg($destination_image, $filePath, 100);