2

PHP の使用: 電子メール アドレスを表示する画像を作成するにはどうすればよいですか (スパムを減らすため)。

つまり、Web ページに「joe@example.com」を表示したい場合、クローラーはそのテキストを簡単に見つけることができるため、電子メール アドレスを「joe@example.com」という画像として表示したいと考えています。

それ、どうやったら出来るの?フォントを次のようにしたい:

  • カラー:#20c
  • フォント: 11px 通常のタホマ
4

4 に答える 4

4

簡単にできる簡単な検索....

ただし:(色、フォント、文字列は指定したものではありません)

header("Content-type: image/png");
$im = @imagecreate(110, 20)
    or die("Cannot Initialize new GD image stream");
$background_color = imagecolorallocate($im, 0, 0, 0);
$text_color = imagecolorallocate($im, 233, 14, 91);
imagestring($im, 1, 5, 5,  "A Simple Text String", $text_color);
imagepng($im);
imagedestroy($im);

関連する関数定義:

php.net/imagecreate

php.net/imagestring

于 2010-05-14T17:00:19.483 に答える
3

これらを使用します。

  • header、ブラウザに HTML の代わりに画像を期待するように指示します (PHP のデフォルト)。画像関数のドキュメント ページには、これに関する詳細情報があります。
  • imagettfbbox、画像に必要なサイズを調べる
  • imagecreatetruecolor、画像リソースを作成します
  • imagecolorallocate、テキストの色を割り当てる
  • imagettftext、テキストを描画します(例を読んでください。必要なものはほとんどすべてです)
  • imagepng、ブラウザに画像を出力します
于 2010-05-14T17:01:04.090 に答える
0

gd 画像処理ライブラリを使用する必要があります。

于 2010-05-14T17:00:53.753 に答える
0

1 つのアドレスに対してのみこれを行う場合は、パフォーマンス上の理由から、ページが読み込まれるたびに動的に行うべきではありません。このような場合は、次のような電子メール難読化ツールをオンラインで見つけることができます。

http://digitalcolony.com/lab/maskemail/maskemail.aspx

于 2010-05-14T17:02:07.847 に答える