aspjpeg adalah komponen pemrosesan gambar yang sangat kuat, versi bahasa Inggris murni. Namun sudah ada versi gratis dan versi cracknya, namun belum banyak artikel yang mengenalkannya secara detail dan mendalam. Kalaupun ada, hanya melibatkan thumbnail gambar dan watermark gambar saja. Mungkin karena itu dalam bahasa Inggris murni.
Menggunakan aspjepg, Anda terutama dapat melakukan:
Gambar kecil
Tanda air gambar
teknologi kode keamanan
Pemotongan gambar
Penggabungan gambar
Dukungan basis data
1. Gambar mini.
Lihat gambar yang diproses.
2. Tanda air gambar.
.
3. Kode keamanan
.
Prinsip Ping An Ma mirip dengan menambahkan watermark.
.
Gambar kode keamanan yang dihasilkan.
4. Pemotongan gambar
.
Untuk waktu yang lama, orang yang tidak mengetahui tentang aspjpeg berpikir bahwa mereka tidak dapat menggunakannya untuk memotong.
Faktanya, ada metode seperti itu
potong x1,y1,x2,y2
Potong koordinat x sudut kiri atas persegi panjang dan koordinat y sudut kanan bawah persegi panjang.
Saya akan memberikan demonstrasi di bawah ini.
SetJpeg =
Server.CreateObject(Persits.Jpeg)
jpeg.buka server.MapPath(/pic/1.gif)
jpeg.lebar=70
Jpeg.Height = Jpeg.OriginalHeight*70 / jpeg.Originawidth
jpeg.crop 0,0,70,52 Memulai pemotongan sebenarnya adalah menghilangkan bagian bawah yang melebihi 52 piksel.
jpeg.save
server.MapPath(/temp_pic/small_1.gif) Simpan
5. Penggabungan gambar
.
Di sini kita akan menambahkan gambar logo ke gambar dodge_viper.jpg
Atur Foto =
Server.CreateObject(Persits.Jpeg)
PhotoPath = Server.MapPath(gambar)
& /dodge_viper.jpg
Foto.Buka PhotoPath
Tetapkan Logo =
Server.CreateObject(Persits.Jpeg)
LogoPath = Server.MapPath(gambar)
& /jam.jpg
Logo.Buka LogoPath .
Logo.Lebar = 70
Logo.Tinggi = Logo.Lebar * Logo.Tinggi Asli / Logo.Lebar Asli
.
Foto.Gambar Gambar 0, 0, Logo .
Foto.KirimBinary
Metode keluaran sendBinary digunakan di sini. Tentu saja, Anda juga dapat menyimpan dodge_viper.jpg yang telah diubah terlebih dahulu lalu memasukkannya. Saya pribadi kurang suka menggunakan metode sendBinary karena rawan error ketika kecepatan jaringan sedang lambat. Tidak banyak dalam hal kecepatan juga.
6. Dukungan basis data
.
Tidak banyak yang bisa dikatakan di sini. Faktanya, ini adalah metode Biner. Seperti yang kita ketahui bersama, gambar hanya dapat disimpan sebagai file biner jika disimpan dalam database. Jadi kodenya ditulis dengan malas. .
7. Pengenalan metode lainnya
.
Canvas.Line (Kiri, Atas, Kanan, Bawah)
menggambar garis lurus
Canvas.Ellipse (Kiri, Atas, Kanan, Bawah)
menggambar elips
Kanvas.Lingkaran(X, Y,
Radius)
menggambar sebuah lingkaran
Canvas.Bar (Kiri, Atas, Kanan, Bawah)
Gambarlah sebuah persegi panjang dengan kode yang dimasukkan di atasnya
Kanvas.Font.ShadowColor
warna bayangan teks
Canvas.Font.ShadowXOffset Selama
Pengaturan koordinat bayangan X
Canvas.Font.ShadowYOffset Selama
Pengaturan koordinat Y
Canvas.Font.BkMode Sebagai String
latar belakang teks.
'//------Pollener.com Pratinjau komponen AspJpeg dan pembuatan tanda air------Mulai------
'Buat gambar pratinjau: panggilan
CreateView (jalur ke file asli, pratinjau nama dan jalur file)
Sub
CreateView(nama gambar,namafiletemp)
'Tentukan variabel.
Redup
PratinjauImageFolderName
Redupkan ogvbox,objFont
Redupkan Kotak Logo, LogoPath
Jalur Logo
= Server.MapPath(gambar) & /shuiyin.gif
'//Tambahkan jalur dan nama file gambar (milik saya adalah forum/images/shuiyin.gif).
Pilih Kasus
unggah_ViewType
Kasus
0
'---------------------BuatPratinjauGambar---------------
setogvbox=
Server.CreateObject(CreatePreviewImage.cGvbox)
ogvbox.SetSavePreviewImagePath=Server.MapPath(tempFilename)
'Pratinjau jalur penyimpanan gambar.
ogvbox.SetPreviewImageSize =SetPreviewImageSize
'Lebar pratinjau.
ogvbox.SetImageFile = trim(Server.MapPath(nama gambar))
'Jalur fisik dari file asli nama gambar.
'Buat file gambar pratinjau.
Jika
ogvbox.DoImageProcess=false Lalu
Response.write menghasilkan kesalahan gambar pratinjau:&
ogvbox.GetErrString
Akhiri Jika
Kasus
1
'------AspJpegV1.2---------------
Atur Kotak Logo =
Server.CreateObject(Persits.Jpeg)
'//Disarankan untuk tidak menggunakan tanda air gambar dan teks secara bersamaan.
Kotak Logo.Buka
LogoPath '//Baca gambar yang ditambahkan.
'//Reset ukuran gambar.
Kotak Logo.Lebar = 186
'//Nilai lebar (piksel) gambar yang digunakan sebagai tanda air.
Kotak Logo.Tinggi = 52
'//Nilai tinggi (piksel) gambar yang digunakan sebagai tanda air.
'//Tambahkan tanda air.
Setel ogvbox =
Server.CreateObject(Persits.Jpeg)
'//Baca file asli yang akan diproses.
ogvbox.Buka
Trim(Server.MapPath(nama gambar))
Jika ogvbox.OriginalWidth dan FileExtgif Then '//Jika Anda mengubah baris ini menjadi IF
Mode Gambar
Kemudian Anda juga dapat menambahkan watermark pada gambar GIF yang diupload, namun GIF animasi tersebut hanya akan memiliki frame pertama setelah menambahkan watermark tersebut.
'//Tentang mengubah font dan warna teks.
'//ogvbox.Canvas.Font.Color
= &H0000FF '//Warna teks watermark, masukkan nilai warna setelah &H.
'//ogvbox.Canvas.Font.Ukuran =
18'//Ukuran teks tanda air.
'//ogvbox.Canvas.Font.Family = Arial
'//Nama font teks tanda air.
'//ogvbox.Canvas.Font.ShadowColor = &H000000
'//Warna bayangan teks tanda air.
'//ogvbox.Canvas.Font.ShadowXoffset = 1
'//Nilai piksel bayangan teks tanda air bergeser ke kanan. Masukkan nilai negatif untuk bergeser ke kiri.
'//ogvbox.Canvas.Font.ShadowYoffset = 1
'//Nilai piksel yang menggeser bayangan teks tanda air ke bawah. Jika Anda memasukkan nilai negatif, maka akan bergeser ke kanan.
'//ogvbox.Canvas.Font.Kualitas = 3
'//Kejelasan teks watermark berkisar antara 0 hingga 4. Perubahannya tidak terlalu besar.
'//ogvbox.Canvas.Font.Bold = Benar
'//Apakah teks tanda airnya tebal, Benar=tebal Salah=normal.
'ogvbox.Canvas.Cetak 10, 10,
ImageMode '//Koordinat awal (piksel) teks tanda air.
ogvbox.Canvas.Pen.Color =
&H000000 '//Warna tepi gambar setelah ditambahkan tanda air.
ogvbox.Canvas.Pen.Lebar = 1
'//Meningkatkan lebar tepi gambar setelah diberi tanda air.
ogvbox.Canvas.Brush.Solid = Salah
'//Apakah batasnya diisi dengan warna, Anda dapat mencobanya untuk melihat efeknya ketika nilainya Benar^o^
ogvbox.DrawImage ogvbox.lebar-186,
ogvbox.height-52, Logobox, 0.5'//Koordinat awal gambar watermark, berikut ogvbox.width-186,
ogvbox.height-52 artinya gambarnya ada di pojok kanan bawah. Karena gambar saya lebarnya 186 dan tingginya 52, jadi kalau ditulis seperti ini bisa sesuaikan dengan gambar Anda sendiri. 0,5 berarti transparansi, di sini maksud saya tembus cahaya, 1 berarti opacity, Anda juga dapat mencoba 0,7 atau 0,8 untuk melihat efeknya.
ogvbox.Canvas.Bar
0, 0, ogvbox.Lebar, ogvbox.Tinggi
'//Rentang tanda air yang tersedia. Yang saya maksud disini adalah watermark bisa ditambahkan dimana saja mulai dari pojok kiri atas hingga pojok kanan bawah pada keseluruhan gambar.
ogvbox.Simpan
Server.MapPath(imagename) '//Buat file gambar dengan tanda air tambahan berdasarkan parameter di atas.
Akhir
Jika
ogvbox.Width = Lebar Gambar
ogvbox.tinggi =
Tinggi Gambar
'ogvbox.tinggi =
ogvbox.Originalheight*ImageWidth/ogvbox.OriginalWidth
ogvbox.Pertajam 1, 120
ogvbox.Simpan
Server.MapPath(tempFilename) '//Hasilkan gambar pratinjau gambar setelah menambahkan tanda air.
Akhir
Jika
Setel Kotak Logo=Tidak Ada
'//------Pollener.com
Pratinjau dan pembuatan tanda air komponen AspJpeg ------Akhir-----