2011-04-21 58 views

回答

6

Drupal 7的帶有影像風格,它可以讓你創建預置,包括縮放,裁剪和主機其他圖像處理操作。您可以調整大小以編程方式使用theme_image_style()任何圖像:

$options = array(
    'style_name' => 'small', // Machine name of style defined in Admin UI or image_style_save() 
    'path' => 'public://myimage.png', 
    'alt' => t('resized image'), 
    'title' => t('resized image'), 
    'attributes' => array(
    'class' => array('awesome', 'inset', 'resized'), 
    'rel' => 'lightbox', 
), 
); 
$image_html = theme('image_style', $options); 

Drupal的6相當於是使用ImageCache,其中有一個類似的API和工作流程。

3

顧名思義,ImageCache將緩存調整大小的圖像,所以它不再在下一次調整大小。

ImageCache被移植幷包含在Drupal 7的核心中,所以theme_image_style()就等於它。

這些「高效的包裝」可能是你在找什麼。但是如果你只想調整大小功能,那麼看看Drupal核心中的image.inc,其中包含[image_resize()2

這個Drupal 6函數會調用您在Drupal站點中啓用的Image Toolkit(G2或Imagemagick)。

在Drupal的6的情況下,ImageAPI具有真正相似功能,但處理的圖像更有效的方式,並已列入在Drupal 7的核心,所以在Drupal 7

2
注意在 image_resize()參數的差異

有這個模塊。它被稱爲http://drupal.org/project/image_resize_filter。您需要製作新的文本過濾器格式,只添加圖像大小過濾器,註釋過濾器機器名稱。然後在代碼中使用check_markup()將過濾器應用於圖像標記的html字符串。過濾器將尋找寬度和/或高度標記來調整圖像大小,並在您的文件系統中保存大小以備將來使用。