aspjpeg は非常に強力な画像処理コンポーネントであり、純粋な英語版です。ただし、無料版やクラック版はすでに存在しますが、それらを詳細かつ詳細に紹介する記事はあまりありません。あっても、画像のサムネイルと画像のウォーターマークに関するものだけです。純粋な英語だからかもしれません。
aspjepg を使用すると、主に次のことができます。
画像のサムネイル
画像の透かし
セキュリティコード技術
画像のカット
画像の結合
データベースのサポート
1. 画像のサムネイル。
加工した写真をご覧ください。
2. 画像の透かし。
。
3. セキュリティコード
。
Ping An Ma の原理は、透かしを追加するのと似ています。
。
生成されたセキュリティ コードのイメージ。
4. 画像のカット
。
長い間、aspjpeg について知らない人は、aspjpeg をカットには使用できないと考えていました。
実はそんな方法もあるのです
クロップ x1、y1、x2、y2
長方形の左上隅の x 座標と長方形の右下隅の y 座標を切り取ります。
以下にデモンストレーションを行います。
SetJpeg =
Server.CreateObject(Persits.Jpeg)
jpeg.open サーバー.MapPath(/pic/1.gif)
jpeg.width=70
Jpeg.Height = Jpeg.OriginalHeight*70 / jpeg.Originalwidth
jpeg.crop 0,0,70,52 カットの開始は、実際には 52 ピクセルを超える下の部分を削除することです。
jpeg.保存
server.MapPath(/temp_pic/small_1.gif) 保存
5. 画像の結合
。
ここでは、ロゴ画像を dodge_viper.jpg 画像に追加します。
写真のセット =
Server.CreateObject(Persits.Jpeg)
PhotoPath = Server.MapPath(画像)
& /dodge_viper.jpg
Photo.PhotoPath を開く
ロゴを設定 =
Server.CreateObject(Persits.Jpeg)
LogoPath = Server.MapPath(画像)
& /時計.jpg
ロゴ.ロゴパスを開きます。
ロゴ.幅 = 70
ロゴ.高さ = ロゴ.幅 * ロゴ.オリジナルの高さ / ロゴ.オリジナルの幅
。
Photo.DrawImage 0、0、ロゴ。
Photo.SendBinary
ここではsendBinaryの出力メソッドを使用します。もちろん、変更した dodge_viper.jpg を保存してから入力することもできます。個人的には、sendBinary メソッドはネットワーク速度が遅い場合にエラーが発生しやすいため、使いたくないです。スピードに関してもあまりありません。
6. データベースのサポート
。
ここで言うことはあまりありません。実際、これはバイナリ方式です。ご存知のとおり、画像はデータベースに保存するときにバイナリ ファイルとしてのみ保存できます。したがって、コードは遅延して書かれました。 。
7. その他のメソッドの紹介
。
Canvas.Line(左、上、右、下)
直線を引く
Canvas.Ellipse(左、上、右、下)
楕円を描く
Canvas.Circle(X, Y,
半径)
円を描く
Canvas.Bar(左、上、右、下)
導入されたコードを含む長方形を描画します
Canvas.Font.ShadowColor
テキストの影の色
Canvas.Font.ShadowXOffset と同じ長さ
影X座標設定
Canvas.Font.ShadowYOffset と同じ長さ
Y座標設定
文字列としての Canvas.Font.BkMode
テキストの背景。
'//-----Pollener.com AspJpeg コンポーネントのプレビューとウォーターマークの生成-----開始------
'プレビュー画像の作成: 呼び出し
CreateView (元のファイルへのパス、プレビュー ファイル名とパス)
サブ
CreateView(イメージ名,一時ファイル名)
'変数を定義します。
薄暗い
プレビュー画像フォルダ名
Dim ogvbox、objFont
薄暗いロゴボックス、ロゴパス
ロゴパス
= Server.MapPath(画像) & /shuiyin.gif
'//画像のパスとファイル名を追加します (私の場合は forum/images/shuiyin.gif)。
ケースの選択
アップロード_ビュータイプ
場合
0
'----------プレビュー画像の作成------
setogvbox=
Server.CreateObject(CreatePreviewImage.cGvbox)
ogvbox.SetSavePreviewImagePath=Server.MapPath(tempFilename)
'プレビュー画像の保存パス。
ogvbox.SetPreviewImageSize =SetPreviewImageSize
'プレビュー幅。
ogvbox.SetImageFile = トリム(Server.MapPath(イメージ名))
'imagename の元のファイルの物理パス。
'プレビュー画像ファイルを作成します。
もし
ogvbox.DoImageProcess=false 次に
Response.write でプレビュー画像エラーが生成されます:&
ogvbox.GetErrString
終了の場合
場合
1
'---------------------AspJpegV1.2--------------
ロゴボックスを設定 =
Server.CreateObject(Persits.Jpeg)
'//画像とテキストの透かしを同時に使用しないことをお勧めします。このコードは画像の透かしを使用します。
ロゴボックス.開く
LogoPath '//追加された画像を読み込みます。
'//画像のサイズをリセットします。
ロゴボックス.幅 = 186
'//透かしとして使用される画像の幅の値 (ピクセル)。
ロゴボックス.高さ = 52
'//透かしとして使用される画像の高さの値 (ピクセル)。
'//透かしを追加します。
ogvbox = を設定します
Server.CreateObject(Persits.Jpeg)
'//処理対象の元のファイルを読み込みます。
ogvbox.Open
Trim(サーバー.MapPath(イメージ名))
If ogvbox.OriginalWidth および FileExtgif then '//この行を IF に変更すると
画像モード
その後、アップロードされた GIF 画像に透かしを追加することもできますが、それらのアニメーション GIF には透かしを追加した後の最初のフレームのみが含まれます。必要に応じて処理できます。
'//フォントと文字色の変更について。
'//ogvbox.Canvas.Font.Color
= &H0000FF '//透かしテキストの色。&H の後に色の値を入力します。
'//ogvbox.Canvas.Font.Size =
18 '//透かしテキストのサイズ。
'//ogvbox.Canvas.Font.Family = Arial
'//透かしテキストのフォント名。
'//ogvbox.Canvas.Font.ShadowColor = &H000000
'//透かしテキストの影の色。
'//ogvbox.Canvas.Font.ShadowXoffset = 1
'//透かしテキストの影のピクセル値が右にシフトされ、左にシフトするには負の値を入力します。
'//ogvbox.Canvas.Font.ShadowYoffset = 1
'//透かしテキストの影を下に移動するピクセル値。負の値を入力すると、右に移動します。
'//ogvbox.Canvas.Font.Quality = 3
'//透かしテキストの明瞭度の範囲は 0 ~ 4 です。変化はそれほど大きくありません。2 または 3 を使用することをお勧めします。
'//ogvbox.Canvas.Font.Bold = True
'//透かしテキストが太字かどうか、True=太字、False=標準。
'ogvbox.Canvas.Print 10、10、
ImageMode '//透かしテキストの開始座標(ピクセル)。
ogvbox.Canvas.Pen.Color =
&H000000 '//透かしを追加した後の画像の境界線の色。
ogvbox.Canvas.Pen.Width = 1
'//透かしを入れた後の画像の境界線の幅を増やします。
ogvbox.Canvas.Brush.Solid = False
'//境界線が色で塗りつぶされているかどうか、値が True の場合の効果を試してみることができます^o^
ogvbox.DrawImage ogvbox.width-186、
ogvbox.height-52, Logobox, 0.5 '//透かし画像の開始座標。ここでは ogvbox.width-186,
ogvbox.height-52 は、写真が右下隅にあることを意味します。私の写真の幅は 186、高さは 52 なので、このように書くと、自分の写真に合わせて調整できます。 0.5 は透明度を意味します。ここでは半透明度を意味します。1 は不透明度を意味します。効果を確認するために 0.7 または 0.8 を試すこともできます。
ogvbox.Canvas.Bar
0、0、ogvbox.Width、ogvbox.Height
'//ウォーターマークの利用可能な範囲。ここで私が言いたいのは、透かしは画像全体の左上隅から右下隅までのどこにでも追加できるということです。
ogvbox.保存
Server.MapPath(imagename) '//上記のパラメータに基づいてウォーターマークを追加した画像ファイルを生成します。
終わり
もし
ogvbox.Width = 画像幅
ogvbox.height =
画像の高さ
'ogvbox.高さ =
ogvbox.Originalheight*ImageWidth/ogvbox.OriginalWidth
ogvbox.シャープ 1、120
ogvbox.保存
Server.MapPath(tempFilename) '//ウォーターマーク追加後の画像のプレビュー画像を生成します。
終わり
もし
Logobox=Nothing を設定します
'//------Pollener.com
AspJpeg コンポーネントのプレビューとウォーターマークの生成 ------終了-----