2010-06-16 52 views
6

Sau khi chọn hoặc tải lên hình ảnh bằng ckfinder, người dùng có thể thay đổi chiều rộng và chiều cao. Tôi muốn nó tự động thay đổi kích thước hình ảnh theo chiều rộng và chiều cao mà người dùng đặt. Điều đó có thể không?thay đổi kích thước hình ảnh ckfinder

Tôi cho rằng trình chỉnh sửa hình ảnh ajax sẽ sửa lỗi đó nhưng không thể làm cho nó hoạt động. Ai đó có kinh nghiệm với chiều rộng và chiều cao tự động thay đổi kích thước-plugin?

Trong tập tin cấu hình của tôi về ckfinder Tôi đã có:

include_once "plugins/imageresize/plugin.php"; 

trong config.js Tôi đã có:

CKFinder.customConfig = function(config) 
{ 
config.extraPlugins = 'imageresize'; 
}; 

Trả lời

3

Trong quá khứ, tôi đã được xác định trước một tự động thay đổi kích thước giá trị vào một thư mục cụ thể trong ckFinder sao cho bất kỳ hình ảnh nào người dùng tải lên thư mục đó được thay đổi kích thước. Tôi làm điều đó bằng cách thêm một mã số ít file config.php như thế này:

// This next block sets the default max image size and quality 
$config['Images'] = Array(
     'maxWidth' => 1600, 
     'maxHeight' => 1200, 
     'quality' => 80); 

// Here we override those settings for a given folder 
if(isset($_GET['currentFolder']) && urldecode($_GET['currentFolder']) == '/some-folder-name/'){ 
    $config['Images']['maxWidth'] = 150; 
    $config['Images']['maxHeight'] = 150; 
} 

tôi sẽ nghi ngờ bạn có thể làm một hack tương tự, có lẽ sử dụng $ _SESSION giá trị. Yêu cầu người dùng của bạn chọn các giá trị tự động thay đổi kích thước mà họ cần và lưu giá trị đó vào $ _SESSION của họ. Sau đó, trong tệp cấu hình của bạn, hãy tìm giá trị phiên đó. Một cái gì đó như:

if(isset($_SESSION['resize_w']) && isset($_SESSION['resize_h'])){ 
    $config['Images']['maxWidth'] = $_SESSION['resize_w']; 
    $config['Images']['maxHeight'] = $_SESSION['resize_h']; 
} 

Lưu ý rằng bạn sẽ cần gọi session_start() trong tệp config.php nếu bạn chưa có.

0

Ckeditor không đổi kích thước hình ảnh, nó chỉ thay đổi giá trị chiều cao và chiều rộng. thay vì thay đổi kích thước hình ảnh, Đặt chiều rộng và chiều cao mặc định trong khi nhấp vào nút "ok". Ở đây tôi thay thế chiều cao người dùng đã nhập & giá trị độ rộng với chiều cao mặc định là & chiều rộng.

CKEDITOR.on('dialogDefinition', function (ev) { 

    var dialogName = ev.data.name, 
     dialogDefinition = ev.data.definition; 

    if (dialogName == 'image') { 
     var onOk = dialogDefinition.onOk; 

     dialogDefinition.onOk = function (e) { 
      var width = this.getContentElement('info', 'txtWidth'); 
      width.setValue('200');//Set Default Width 

      var height = this.getContentElement('info', 'txtHeight'); 
      height.setValue('200');//Set Default height 

      onOk && onOk.apply(this, e); 
     }; 
    } 
}); 
0

Trong tập tin "config.ascx" thay đổi giá trị của biến như

Images.MaxWidth = 0; 
Images.MaxHeight = 0; 
Images.Quality = 100; 
Các vấn đề liên quan