ホームページ バックエンド開発 PHPチュートリアル php图片水印添加,压缩,剪切的封装类实现_PHP

php图片水印添加,压缩,剪切的封装类实现_PHP

May 28, 2016 pm 03:04 PM
カット 透かし

php对图片文件的操作主要是利用GD库扩展。当我们频繁利用php对图片进行操作时,会自然封装很多函数,否则会写太多重复的代码。当有很多对图片的相关函数的时候,我们可以考虑将这些函数也整理一下,因而就有了封装成类的想法。
操作图片主要历经四个步骤
1、打开图片
2、操作图片
3、输出图片
4、销毁图片
1,3,4三个步骤每次都要写,每次又都差不多。真正需要变通的只有操作图片的这一步骤了。操作图片又往往通过1或多个主要的GD函数来完成。

<&#63;php 

class Image
{  
  private $info;

  private $image;
  public $type;
  public function __construct($src)
  {

    $this->info=getimagesize($src);
    $this->type=image_type_to_extension($this->info['2'],false);
    $fun="imagecreatefrom{$this->type}";
    $this->image=$fun($src);
  }
  /**
   * 文字水印
   * @param [type] $font   字体
   * @param [type] $content 内容
   * @param [type] $size   文字大小
   * @param [type] $col   文字颜色(四元数组)
   * @param array  $location 位置 
   * @param integer $angle  倾斜角度
   * @return [type]      
   */
  public function fontMark($font,$content,$size,$col,$location,$angle=0){
    $col=imagecolorallocatealpha($this->image, $col['0'], $col['1'], $col['2'],$col['3']);

    imagettftext($this->image, $size, $angle, $location['0'], $location['1'], $col,$font,$content);
  }
  
  /**
   * 图片水印
   * @param [type] $imageMark 水印图片地址
   * @param [type] $dst    水印图片在原图片中的位置
   * @param [type] $pct    透明度
   * @return [type]      
   */
  public function imageMark($imageMark,$dst,$pct){
    $info2=getimagesize($imageMark);
    $type=image_type_to_extension($info2['2'],false);
    $func2="imagecreatefrom".$type;
    $water=$func2($imageMark);

    imagecopymerge($this->image, $water, $dst[0], $dst[1], 0, 0, $info2['0'], $info2['1'], $pct);
    imagedestroy($water);

  }
  /**
   * 压缩图片
   * @param [type] $thumbSize 压缩图片大小
   * @return [type]      [description]
   */
  public function thumb($thumbSize){
    $imageThumb=imagecreatetruecolor($thumbSize[0], $thumbSize[1]);
    
    imagecopyresampled($imageThumb, $this->image, 0, 0, 0, 0, $thumbSize[0], $thumbSize[1], $this->info['0'], $this->info['1']);
    imagedestroy($this->image);
    $this->image=$imageThumb;
  }
  /**
  * 裁剪图片
   * @param [type] $cutSize 裁剪大小
   * @param [type] $location 裁剪位置
   * @return [type]      [description]
   */
   public function cut($cutSize,$location){
     $imageCut=imagecreatetruecolor($cutSize[0],$cutSize[1]);

     imagecopyresampled($imageCut, $this->image, 0, 0, $location[0], $location[1],$cutSize[0],$cutSize[1],$cutSize[0],$cutSize[1]);
     imagedestroy($this->image);
     $this->image=$imageCut;
   }
  /**
   * 展现图片
   * @return [type] [description]
   */
  public function show(){
    header("content-type:".$this->info['mime']);

    $funn="image".$this->type;

    $funn($this->image);
  }
  /**
   * 保存图片
 * @param [type] $newname 新图片名
 * @return [type]     [description]
 */
   public function save($newname){
     header("content-type:".$this->info['mime']);

     $funn="image".$this->type;

     $funn($this->image,$newname.'.'.$this->type);
   }
   public function __destruct(){
     imagedestroy($this->image);
   }

 }

 &#63;>
ログイン後にコピー

是不是这样操作就很简单了,如果还需要其他操作,只需要再往这个类里面添加就好啦~~希望大家可以熟练掌握。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Meitu Xiuxiuに透かしを追加するにはどうすればよいですか?美しい写真にウォーターマークを追加する方法を共有してください。 Meitu Xiuxiuに透かしを追加するにはどうすればよいですか?美しい写真にウォーターマークを追加する方法を共有してください。 Mar 16, 2024 pm 09:55 PM

MeituXiuXiu に透かしを追加する方法を知りたいですか? Meitu Xiuxiuは、写真を切り取って別の写真に重ねたり、写真サイズをkb単位で変更したり、透かしを削除したり、証明写真の背景色を変更したり、時間を追加したりする機能を備えた、非常に使いやすい写真編集ソフトです。 、日付と場所のウォーターマークを全画面に表示し、ユーザーが写真の作成を迅速に完了できるようにします。ユーザーの中には、自分で作成した写真を他の人に盗まれたくない、自分の透かしを入れたいが、その方法がわからない、という人もいます。編集者が美しい写真にウォーターマークを追加する方法を紹介します。気に入ったら、ぜひダウンロードしてください! 1. 美しい写真にウォーターマークを追加するにはどうすればよいですか?美しい写真にウォーターマークを追加する方法を共有してください。 1. このサイトからダウンロードした Meitu Xiu Xiu の 2023 バージョンを開きます。 Meitu Xiu Xiu 2023 バージョン カテゴリ: 撮影と美化 ダウンロード Meitu Xiu Xiu 2023 バージョンは、機能が豊富な画像美化および編集ソフトウェアです

スキャナーでウォーターマークを削除する方法 スキャナーでウォーターマークを削除する方法 Mar 05, 2024 pm 05:34 PM

透かしの削除は、ソフトウェア スキャナーの便利なツールです。スキャナーで透かしを削除する方法がわからないユーザーもいます。保存インターフェイスの [PDF の編集] で [透かしの削除] をクリックして閉じます。次に、エディターがユーザーからの紹介について説明します。ウォーターマークの消し方までご紹介していますので、興味のある方はぜひご覧ください! Scanner King の使い方チュートリアル Scanner King でウォーターマークを削除するには? 回答: 保存インターフェイスをクリックして、PDF のウォーターマークの削除を編集できます 詳細: 1. ソフトウェアを起動し、[カメラ] アイコンをクリックします。 2. 透かしを入れる必要がある文書を写真に撮り、スキャンします。 3. [→]をクリックして次の手順に進みます。 4. 編集が完了したら、[✓]をクリックします。 5. [PDF編集]をクリックします。 6. 下の[ウォーターマークを削除]を選択します。

クリッピングからウォーターマークを削除する方法 クリッピングからウォーターマークを削除する方法 クリッピングからウォーターマークを削除する方法 クリッピングからウォーターマークを削除する方法 Feb 22, 2024 pm 05:16 PM

クリップを開いてテンプレートを選択し、ビデオを編集したら、[エクスポート]、[保存] の順にクリックし、ウォーターマークなしで共有します。チュートリアルの対象機種:iPhone13 システム:iOS15.3.1 バージョン:Cutting 6.8.0 分析 1 Cutting を開き、カッティングテンプレートを選択します。 2. クリックしてテンプレートを開いた後、右下隅にある「同じスタイルでカット」オプションをクリックします。 3アルバムから写真塗りつぶしセグメントを選択し、「次へ」をクリックします。 4ページの右上隅にあるエクスポートオプションをクリックする方法。 5最後に、「ウォーターマークなしで保存して共有」をクリックします。補足: Cutting とはどのようなソフトウェアですか? 1 Cutting は、総合的な編集機能、速度変更、フィルターや美容効果、豊富な音楽ライブラリ リソースを備えたビデオ編集ソフトウェアです。 2021 年 2 月から、携帯電話、Pad、Mac コンピューターでクリッピングがサポートされるようになります。

Wink でビデオの透かしを削除する方法 Wink でビデオの透かしを削除する方法 Feb 23, 2024 pm 07:22 PM

Wink でビデオからウォーターマークを削除するにはどうすればよいですか? winkAPP にはビデオからウォーターマークを削除するツールがありますが、ほとんどの友達は wink でビデオからウォーターマークを削除する方法を知りません。次は Wink でビデオからウォーターマークを削除する方法の画像です。編集者が持参したテキストチュートリアルですので、興味のある方はぜひ見に来てください! Wink でビデオ透かしを削除する方法 1. まず、Wink APP を開き、ホームページ領域で [透かしを削除] 機能を選択します; 2. 次に、アルバムで透かしを削除したいビデオを選択します; 3. 次に、ビデオを選択してクリックしますビデオ編集後、右上隅にある [√]; 4. 最後に、下図のように [ワンクリック印刷] をクリックし、[処理] をクリックします。

Xiaomi Mi 14に写真の透かしを設定するにはどうすればよいですか? Xiaomi Mi 14に写真の透かしを設定するにはどうすればよいですか? Mar 18, 2024 am 11:00 AM

撮影した写真をよりパーソナライズしてユニークなものにするために、Xiaomi Mi 14 には写真の透かし設定が用意されています。写真の透かしを設定することで、ユーザーは撮影した写真にパターン、テキスト、ロゴを追加できるため、各写真に貴重な瞬間や思い出をより良く記録できます。次に、Xiaomi 14 で写真のウォーターマークを設定して、写真をよりパーソナライズして鮮やかにする方法を紹介します。 Xiaomi Mi 14に写真の透かしを設定するにはどうすればよいですか? 1. まず「カメラ」をクリックします。 2. 次に「設定」をクリックします。 3. 次に、ウォーターマークを見つけて、撮影を開始できます。

Xiaomi Mi 14Ultraのウォーターマークを削除するにはどうすればよいですか? Xiaomi Mi 14Ultraのウォーターマークを削除するにはどうすればよいですか? Feb 28, 2024 pm 02:28 PM

Xiaomi Mi 14 Ultraは、非常に優れた性能と構成を備えた新しいモデルです。この携帯電話は、ユニークな外観デザインも採用しています。外観が高く、非常に認識されています。購入したい多くの消費者は、Xiaomi Miの使い方を知りたいと考えています。 14 Ultra. ウォーターマークを削除しますか?を当サイトの編集者が以下で紹介していきます! Xiaomi 14Ultraからウォーターマークを削除するにはどうすればよいですか? 1. カメラ アプリケーションを開きます。Xiaomi 14 にプリインストールされているカメラ アプリケーションを見つけて開きます。 2. 設定メニューに入ります。(使用しているバージョンに応じて) 画面の右下隅または左下隅をタップして、追加オプション ボタンを表示します。次に、ポップアップメニューで「設定」を選択します。 3. ウォーターマーク オプションをオフにする: 設定メニューには、さまざまなオプションとパラメータが表示されます。 「透かし」オプションが見つかるまで下にスクロールします

win11 24H2 の右下隅にある評価版のウォーターマークを削除する方法 win11 の右下隅にある評価版のウォーターマークを削除するためのヒント win11 24H2 の右下隅にある評価版のウォーターマークを削除する方法 win11 の右下隅にある評価版のウォーターマークを削除するためのヒント Jun 01, 2024 pm 09:52 PM

win1124H2 の右下隅にある評価コピーのテキストを削除するにはどうすればよいですか?システムを使用すると、デスクトップの画面の右下隅に透明な透かしが表示される場合がありますが、この透明な透かしを削除するにはどうすればよいでしょうか。ユーザーはサードパーティ製ソフトウェアを直接使用して操作できます。このサイトでは、win1124H2 評価版のウォーターマークを削除する方法をユーザーに丁寧に紹介します。 win1124H2評価版のウォーターマークを削除するには、UniversalWatermarkDisablerツールをダウンロードして実行すると、現在のシステムバージョンとウォーターマークのステータスが表示され、「ステータス」に「インストール準備完了」と表示されていれば削除できます。

WPSでウォーターマークを編集する方法の紹介 WPSでウォーターマークを編集する方法の紹介 Mar 27, 2024 pm 02:06 PM

1. WPS を使用してドキュメントを開きます。ウォーターマークが入っています。汚く見えます。削除するにはどうすればよいですか?下を見てください。 2. メニュー バーで [挿入] タブを見つけ、このタブの下にあるヘッダー アイコンとフッター アイコンを選択し、マウスの左ボタンでクリックします。 3. このとき、ページ上の文字は灰色になり編集できませんが、文字裏のウォーターマークはこの時点で編集可能です。 4. 透かしをクリックすると、画像の周りにいくつかの小さな四角があるため、これが画像の透かしであることがわかります。この時点で画像を編集できます。 5. キーボードの削除キーを使用して画像を削除すると、透かしが消えていることがわかります。 6. ページ上でマウスをダブルクリックしてヘッダーとフッターの編集モードを終了すると、ページ上のテキストが通常の色に戻り、編集できるようになりますが、この時点ではページ上の透かしが消えています。 7。

See all articles