Position actuelle: Accueil> Derniers articles> Comment ajouter des filigranes de texte via ImageGetClip après la culture d'image

Comment ajouter des filigranes de texte via ImageGetClip après la culture d'image

gitbox 2025-05-28

1. Qu'est-ce que ImageGetClip?

ImageGetClip n'est pas une fonction PHP intégrée, c'est généralement une fonction définie par l'utilisateur pour le recadrage d'images. Afin de réaliser les fonctions de cet article, nous définissons simplement une fonction ImageGetClip () , qui vise à découper une zone rectangulaire à partir du diagramme de source.

2. Réalisez le processus complet de la culture et de l'ajout de filigranes

Les étapes complètes sont les suivantes:

  1. Chargez la carte source;

  2. Recadrer l'image;

  3. Ajouter un filigrane de texte;

  4. Sortir ou enregistrer l'image.

Vous trouverez ci-dessous un exemple de code complet.

 <?php

function imagegetclip($src_path, $x, $y, $width, $height) {
    $src = imagecreatefromjpeg($src_path);
    $clip = imagecreatetruecolor($width, $height);
    imagecopy($clip, $src, 0, 0, $x, $y, $width, $height);
    return $clip;
}

function addTextWatermark($image, $text, $fontSize = 12, $color = [255, 255, 255], $x = 10, $y = 20) {
    $textColor = imagecolorallocate($image, $color[0], $color[1], $color[2]);
    imagestring($image, $fontSize, $x, $y, $text, $textColor);
    return $image;
}

// Exemple:Traitement des images
$source_image = 'https://gitbox.net/images/sample.jpg';
$temp_path = '/tmp/temp.jpg';
file_put_contents($temp_path, file_get_contents($source_image));

$clip = imagegetclip($temp_path, 100, 100, 300, 200);
$clip_with_watermark = addTextWatermark($clip, 'gitbox.netExclusif');

header('Content-Type: image/jpeg');
imagejpeg($clip_with_watermark);
imagedestroy($clip_with_watermark);
?>

3. Explication

  • La fonction ImageGetClip () coupe la zone spécifiée de l'image d'origine;

  • AddTextWaterMark () Fonction pour ajouter du texte de filigrane;

  • Les polices de base ajoutées à l'aide d'Immestring () . Si vous avez besoin d'utiliser des polices et des styles personnalisés, il est recommandé d'utiliser ImageTtFText () ;

  • Les images distantes sont téléchargées dans un répertoire temporaire via file_get_contents () ;

  • Notez que le serveur doit activer l'extension GD.

4. Supplément: Utilisez des polices personnalisées pour embellir le texte de filigrane

 imagettftext($image, 16, 0, 10, 30, $textColor, '/path/to/font.ttf', 'gitbox.netExclusif');

Ce code utilise la police TTF pour réaliser un texte de filigrane plus beau. Assurez-vous que le chemin de la police est valide et prend en charge les jeux de caractères chinois ou requis.