Reply to comment

Here is an example on how to obscure email addresse (or other tekst) using http://drupal.org/project/signwriter in a formatter. You can use it on the cck field overview as a formatter (or in display suite).

<?php
//cck formatters
/**
 * Implementation of hook_field_formatter_info(),.
 */
function your_module_field_formatter_info() {
  return array(
    
'text_as_image' => array(
      
'label' => t('Text as image'),
      
'field types' => array('email''text'),
      
'multiple values' => CONTENT_HANDLE_MODULE,
    ),
  );
}

/**
 * Implementation of hook_theme().
 */
function your_module_theme() {
  
$theme_functions['your_module_formatter_text_as_image'] = array (
    
'arguments' => array('element' => NULL),
  );

  return 
$theme_functions;
}

/**
 * Themes an image from text
 */
function theme_your_module_formatter_text_as_image($element) {
  
// Set up signwriter profile    
  
$profile->fontfile drupal_get_path('module''signwriter'). '/Arial.TTF';//See this issue why its like this (http://drupal.org/node/606670)
  
$profile->fontsize 10;
  
$profile->foreground '000000';
  
$profile->background 'ffffff';
  
$profile->maxwidth 600;
  
$profile->transparent true;
  
$profile->imagetype 'png';
  
$profile->disable_span true;
  
  
$string_to_obscure $element[0]['#item']['safe']; 
    
  
$textsignwriter_title_convert($string_to_obscure$profile);
  
//Some extra logic if it is an email    
  
$output preg_replace('/alt="[0-9a-zA-Z!@#\$%^&\*~\-\.\+\_\/=\?\|\{\}}]+"/','alt="Email Address"',$text);
    
  return 
$output;
}
?>

The code in the formatter is taken from this example http://dominiquedecooman.com/bookmark/obscure-email-adresses-drupal-usin...

Reply

The content of this field is kept private and will not be shown publicly.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd><img><p><b><i><table><th><tr><td><blockquote><br /><img /><tbody><span><strike>
  • Lines and paragraphs break automatically.
  • You can enable syntax highlighting of source code with the following tags: <codes>, <blockcode>, <c>, <cpp>, <drupal5>, <drupal6>, <java>, <javascript>, <php>, <python>, <ruby>. The supported tag styles are: <foo>, [foo].
  • Web page addresses and e-mail addresses turn into links automatically.

More information about formatting options

Type the characters you see in this picture. (verify using audio)
Type the characters you see in the picture above; if you can't read them, submit the form and a new image will be generated. Not case sensitive.