-->

Membuat Aplikasi Watermark dengan VB.Net

selamat malam sobat blogger yang berbahagia, kembali lagi di blog saya ini yang sederhana dan mungkin bisa memberikan agan sedikit manfaat, hehe
oke gan kali ini sesuai judulnya saya akan membagikan tutorial bagaimana caranya membuat aplikasi watermark dengan menggunakan VB.Net.
langsung aja ya gan kita praktekkan . . .
buka visual studio agan dan buat project baru serta design seperti berikut ini :



pada form diatas ada beberapa komponen yaitu :
* 1 komponen OpenFileDialog (digunakan untuk load gambar)
* 1 komponen SaveFileDialog (digunakan untuk simpan gambar watermark)
* 1 komponen textbox (digunakan untuk menampung variabel)
* 3 komponen Picture Box (1 Picturebox untuk menampilkan gambar yang akan diisi watermark dan 2 Picturebox sebagai watermark nya)
* 1 komponen ToolStrip (digunakan untuk menampilkan menu open,isi watermark dan simpan)

itu komponen yang terdapat pada form dan silahkan agan kreasikan sendiri design agan..

jika sudah sekarang waktunya kita ngoding gan, silahkan agan masuk ke bagian coding

Imports System.IO
Imports System.Drawing.Imaging

letakkan kode tersebut paling atas, diatas public class
kemudian agan buat 2 buah sub yang dinamakan isiWatermark dan DrawWatermark, kodenya seperti berikut ini :

Private Sub isiWatermark()
        Dim watermark_bm As New Bitmap(picWatermark.Image)
        Dim result_bm As New Bitmap(PictureBox1.Image)

        Dim x As Integer = (result_bm.Width - watermark_bm.Width) \ 2
        Dim y As Integer = (result_bm.Height - watermark_bm.Height) \ 3
        DrawWatermark(watermark_bm, result_bm, x, y)

        watermark_bm = New Bitmap(picWatermark2.Image)
        y = 2 * (result_bm.Height - watermark_bm.Height) \ 3
        DrawWatermark(watermark_bm, result_bm, x, y)

        PictureBox1.Image = result_bm
    End Sub
    Private Sub DrawWatermark(ByVal watermark_bm As Bitmap, ByVal result_bm As Bitmap, ByVal x As Integer, ByVal y As Integer)
        Const ALPHA As Byte = 128
        ' Set the watermark's pixels' Alpha components.
        Dim clr As Color
        For py As Integer = 0 To watermark_bm.Height - 1
            For px As Integer = 0 To watermark_bm.Width - 1
                clr = watermark_bm.GetPixel(px, py)
                watermark_bm.SetPixel(px, py, Color.FromArgb(ALPHA, clr.R, clr.G, clr.B))
            Next px
        Next py

        ' Set the watermark's transparent color.
        watermark_bm.MakeTransparent(watermark_bm.GetPixel(0, 0))

        ' Copy onto the result image.
        Dim gr As Graphics = Graphics.FromImage(result_bm)
        gr.DrawImage(watermark_bm, x, y)
    End Sub

kemduian klik 2x pada menu load gambar/buka gambar dan inputkan kode berikut

If OpenFileDialog1.ShowDialog <> Windows.Forms.DialogResult.Cancel Then
            PictureBox1.Image = Image.FromFile(OpenFileDialog1.FileName)
            TextBox1.Text = OpenFileDialog1.FileName
        End If

kode diatas digunakan untuk membuka file gambar dengan menggunakan open file dialog, kemudian menampilkannya pada picturebox. Dan path atau lokasi file gambar yang diload akan ditampung pada sebuah textbox
kemudian setelah itu agan klik 2x pada menu isi watermark dan tambahkan kode berikut :

If TextBox1.Text = "" Then
            MsgBox("Silahkan Load Gambar terlebih dahulu", vbExclamation, "Guzko Tutorial")
            Exit Sub
        Else
            isiWatermark()
        End If

pada kode diatas, pertama aplikasi akan mengecek terlebih dahulu apakah file gambar sudah diload atau belum, jika belum diload maka akan tampil peringatan untuk load gambar terlebih dahulu, namun jika gambar sudah diload maka watermark akan tampil diatas gambar.
kode terakhir yaitu pada menu simpan, silahkan agan ketikkan kode berikut :

If TextBox1.Text = "" Then
            MsgBox("Silahkan Load Gambar terlebih dahulu", vbExclamation, "Guzko Tutorial")
            Exit Sub
        Else
            SaveFileDialog1.Filter = "JPEG Files (*.jpeg)|*.jpeg"
            SaveFileDialog1.ShowDialog()

            Try
                If SaveFileDialog1.FileName > "" Then
                    PictureBox1.Image.Save(SaveFileDialog1.FileName)
                    MsgBox("Watermark berhasil disimpan", vbInformation, "Guzko Tutorial")
                End If
            Catch ex As Exception
                MsgBox(ex.Message)
            End Try
        End If

kode diatas akan mengecek terlebih dahulu apakah gambar sudah diload atau belum, jika belum akan ada peringatan untuk load gambar dulu. Dan jika berhasil disimpan watermark maka akan tampil pesan watermark berhasil disimpan.
selesai program kita gan. Saya sadari aplikasi kecil dan sederhana ini masih jauh dari kata sempurna gan, jadi untuk itu silahkan agan kembangkan lagi sesuai keperluan dan jangan lupa sharing juga ya, heheheh...

untuk kode lengkapnya silahkan agan download melalui link dibawah yang telah saya sediakan .
silahkan agan jalankan aplikasi tersebut.
sampai disini dulu pertemuan kita gan, bila ada yang kurang jelas dan ingin ditanyakan silahkan tinggalkan jejak di komentar ya gan..
seeee..uuuuuu


1 komentar:

avatar

di bagian isiwatermark apakah picwatermark itu picturebox2

Click to comment