歡迎光臨, 訪客. 請先 登入註冊一個帳號.
四月 23, 2024, 08:29:51 下午
19595 文章 在 3865 主題 由 4580 會員
最新註冊會員: aa123aa1
LifeType 中文開發論壇  |  建議  |  要求與建議  |  對於縮圖的一點建議 « 上篇主題 下篇主題 »
頁: [1]
作者 主題: 對於縮圖的一點建議  (閱讀 9977 次)
mickey9801
初級會員
**
文章: 58


檢視個人資料 個人網站
« 於: 十月 12, 2005, 04:04:58 下午 »

請問可否將現時plog判斷是否縮圖的原則,由縱向優先,改為橫向優先,或做成選項呢?

現時上傳圖片到資料夾時,如果圖片高度小於預設限制高度的時候,就不會縮圖,無論圖片有多闊。不過小弟所用的grey模版就會出現因為圖片過寬而打亂版面布局的問題,即使不使用div而使用table,也會強制性地將版面撐開。我想其他三欄式的版面可能都會面對同樣的問題。

最常出現這種情況的圖片,是商品的標誌和21:9的電影劇照。當然我也明白只要將高度上限設得小一點,就可以解決問題,不過這會令縮圖變得很小,而且只是治標不治本的做法,一旦有圖片的高度比設定的高度上限小,而長闊比例差很遠的話,仍然是會出現這個問題。

我想做網頁設計時,很多人都會先從寬度去考量,而高度較為次要,因為屏幕的寬度有限,不是800就是1024,但高度則無限。如果改成縱向優先的話,只要知道模版中放置資料夾內容的版心闊度的話,很容易就可以訂出上存圖片的寬度上限,而不用擔心因為特殊的情況而致版面移位。

希望各位加以考慮。
已記錄

我的網誌:http://blog.comicparty.com
LifeType 1.1.2/FEDORA CORE 3/Apache 2.0.53/PHP 4.3.11/MySQL 4.1.10/GD 2.0.21/ImageMagick 6.2.2.0
markwu
系統管理員
超級會員
*****
文章: 3928


Mark Wu


檢視個人資料 個人網站
« 回覆文章 #1 於: 十月 12, 2005, 10:55:47 下午 »

同意,我是想要改寫這邊的 algorithm, 事實上,應該兩個都要 follow 對。

因為這樣只要有一邊超過,就會縮圖。否則真的很難看。

Anyway, 應該可以有三個選擇吧: Width first, Height First and Both。

Mark
已記錄

mickey9801
初級會員
**
文章: 58


檢視個人資料 個人網站
« 回覆文章 #2 於: 十月 13, 2005, 12:41:19 下午 »

我在4月時寫過一個遊戲新聞網站,由於遊戲圖片有時候會刊登一些像大型遊戲的寬寬的出招表圖片,或電話繩般長長的圖片。為免縮圖會變得太長或太寬,我寫CMS的時候就只用了一個上限值,然後在上傳圖片的時候先檢查圖片是縱向還是橫向的,並計算原圖的縱長比。如果是橫向圖就橫向優先,縱向圖就縱向優先,並將上限值套用到優先的一邊,而另一邊就按照縱長比計算出來。

這樣做出錯的可能性很低,而且無論橫圖或直圖都會限制在上限值內(實際上是放在一個正方形內),排在一起也不會太大的難看,所以我沒有將選擇哪個方向優先做成選項。

程式碼:
list($width, $height) = getimagesize($image_file);
$img_ratio = $width / $height; // Obtain the image ratio
$thumbnail_dimension = 100; // or any other value you like
if ($width >= $height) {
//Landscape Image
if ($width > $thumbnail_dimension) {
$new_width = $thumbnail_dimension;
$new_height = round($new_width / $img_ratio);
} else {
$new_width = $width;
$new_height = $height;
}
} else {
//Portrait Image
if ($height > $thumbnail_dimension) {
$new_height = $thumbnail_dimension;
$new_width = round($new_height * $img_ratio);
} else {
$new_width = $width;
$new_height = $height;
}
}
// .... resize picture
已記錄

我的網誌:http://blog.comicparty.com
LifeType 1.1.2/FEDORA CORE 3/Apache 2.0.53/PHP 4.3.11/MySQL 4.1.10/GD 2.0.21/ImageMagick 6.2.2.0
markwu
系統管理員
超級會員
*****
文章: 3928


Mark Wu


檢視個人資料 個人網站
« 回覆文章 #3 於: 十月 14, 2005, 11:33:50 上午 »

謝謝!我會參考這部分來改 code 的。

Mark
已記錄

頁: [1]
LifeType 中文開發論壇  |  建議  |  要求與建議  |  對於縮圖的一點建議 « 上篇主題 下篇主題 »
    前往: