您在這裡

用于cck的imagefield模組的兩個問題

say2sky's 的頭像
say2sky 在 2008-07-08 (二) 07:32 發表

1)上傳圖像文件名
不同的drupal模組對用戶上傳的圖像文件名有不同的處理方法, 有的是賦予上傳的文件以一個新的名稱後存儲, 而imagefield模組是保留原始文件名, 當有同名的圖像文件上傳時, imagefield在其後添加_0, _1

如有兩個image.jpg文件分別上傳, 系統儲存的第一個是image.jpg, 第二個是image_0.jpg

我的問題是如何能將儲存的上傳文件名改為 "登入用戶名+時間"的格式

2)上傳圖像文件的resolution

imagefield模組提供一個Maximum resolution for Images用戶設置參數來控制收到的用戶上傳圖像大小, 如果用戶上傳的圖像的解像度更大, 系統將會改變其尺寸到設定的Maximum resolution for Images值

我的應用是希望能收到並存儲原始的圖像大小, 但是在views中顯示一個thumbnail

我在drupal4.7版本中曾經做過嘗試通過更改imagefield.module文件的
function imagefield_field_formatter(...)

return theme('imagefield_image', $file, $item['alt'], $item['title']);
改為
return theme('imagefield_image', $file, $file['alt'], $file['title'], array('height' => '60','width' => '90'), FALSE);

可以實現, 但是我知道這不是一個好的辦法. 請求一個合理的解決辦法.

感謝你的回應和幫助!

1. 我用了imagecache, 它幫我解決了接受原始圖片和在views中顯示thumbnail的問題. 可以很方便的任意尺寸的更改.

2. imce模組我試了, 但是它沒有和imagefield整合起來提供用戶圖像文件目錄的創建, 及圖像文件名的更改. 它是提供了一種用戶的自主目錄創建. 所以還要尋找其他的辦法.

謝謝你的回應和資訊!

我嘗試了imceimage模組, 情況是這樣:

1) imce幫助自動創建用戶目錄和選擇是否采用thumbnail
2) imceimage讓用戶可以在創建內容時上載圖片到自己的目錄和從目錄中選擇圖形文件.

與我的使用情形還是有些差別. 我的要求是:

1) 內容類型中有一個字段是imagefield字段, 當各個用戶使用這一內容類型提交內容時幫用戶各自創建一個自己的目錄, 並將用戶通過imagefield字段提交的圖形文件放入他的目錄, 圖像文件名改為以上傳時間為文件名.

2) 以後各個用戶提交的圖像文件都在自己的目錄中. 而這一過程和處理方法是用戶不可見的. 用戶不需要從已經上傳的圖像文件中選擇和使用圖像, views模組已經設定了圖像的顯示方式.