Selasa, 30 Juni 2009

Teknik menambahkan tulisan pada gambar

Terkadang kita butuh untuk membuat atau menambahkan tulisan pada gambar... misalnya kita ingin mengirimkan surat dengan gambar yang kita pilih dan diatasnya dituliskan nama penerimanya. Langkah sederhananya adalah mengambil pixel dari tulisan (misal dari komponen label) kemudian pixel itu di timpakan ke komponen gambar. Berikut saya berikan contohnya.

//potongan programnya
procedure TForm1.Button1Click(Sender: TObject);
var
pColor: TColor;
j,k, ATop, ALeft : integer;
PropWidth, PropHeight : Double;
S : TImage;
APath,p : string;

begin

txtNama.Visible := False;
APath := ExtractFileDir(Application.ExeName);
if not FileExists(APath+'\und51.bmp') then
begin
ShowMessage('File Not Found!!!');
Exit;
end;
image1.Picture.LoadFromFile(APath+'\und51.bmp');
pgBar.MaxValue := lblNama.Height;
pgBar.Progress := 0;
S := TImage(Form1.FindComponent('imglblNama'));
if ((S = NIL) ) then
begin
S := TImage.Create(Self);
S.Name := 'imglblNama';
S.Width := lblNama.Width;
S.Height := lblNama.Height;
S.Top := lblNama.Top;
S.Left := lblNama.Left;
S.Parent := lblNama.Parent;
end;
lblNama.Update;
S := TImage(Form1.FindComponent('imglblNama'));
S.Width := lblNama.Width;
S.Height:= lblNama.Height;
S.Update;
PropWidth := 1;
PropHeight := 1;
ATop := StrToInt(eY.Text);
ALeft:= StrToInt(eX.Text);

image1.Update;
for j := 00 to lblNama.Height-1 do
begin
for k := 00 to lblNama.Width-1 do
begin
pColor := GetPixel(lblNama.Canvas.Handle, k, j);
SetPixel(image1.Picture.Bitmap.Canvas.Handle, k+ALeft, j+ATop, pColor);
end;
pgBar.AddProgress(1);
end;
AFilename := APath+'\und_'+lblNama.Caption+'.bmp';
AFilename := StringReplace(AFilename,#13#10,'',[rfReplaceAll]);
image1.Picture.SaveToFile(AFilename);
ImgResult.Picture.LoadFromFile(AFilename);

txtNama.Visible := True;
end;

Dari program di atas saya implementasikan untuk membuat program aplikasi undangan pernikahan saya.
Download

Hasilnya.

Read more...

Selasa, 19 Februari 2008

program perhitungan sederhana di delphi

biasanya dalam matematika kita sering menemui perhitungan tambah, kali, bagi,pangkat dll. nah disini saya akan berikan contoh pembuatan program perhitungan sederhana dengan menggunakan bahasa pemrograman delphi.

source
unit Unit1;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls,math;

type
TForm1 = class(TForm)
Button1: TButton;
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
ComboBox1: TComboBox;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.Button1Click(Sender: TObject);
var
AResult : double;
begin
AResult := 0;
if ComboBox1.Text ='^' then
AResult := Power(StrToInt(Edit1.Text),StrToInt(Edit2.Text))
else if ComboBox1.Text ='+' then
AResult := StrToInt(Edit1.Text)+StrToInt(Edit2.Text)
else if ComboBox1.Text ='-' then
AResult := StrToInt(Edit1.Text)-StrToInt(Edit2.Text)
else if ComboBox1.Text ='/' then
begin
if StrToInt(Edit2.Text) = 0 then
AResult := 0
else
AResult := StrToInt(Edit1.Text)/StrToInt(Edit2.Text);
end
else if ComboBox1.Text ='*' then
AResult := StrToInt(Edit1.Text)+StrToInt(Edit2.Text);
Edit3.Text := FloatToStr(AResult);
end;

end.


hasilnya:

Read more...

Kamis, 07 Februari 2008

Mengenai Tempat Belajar

Blog Tempat belajar ini saya maksudkan untuk menulis tentang artikel atau tulisan mengenai sesuatu ilmu atau pelajaran tentang berbagai hal yang berkaitan dengan komputer. Temen-temen bisa saling berbagi disini untuk menambah wawasan bagi pembaca-pembaca baru...terimakasih sebelumnya saya ucapkan bagi temen yang telah mampir di blog ini...

Read more...

About This Blog

Blog Tempat belajar ini saya maksudkan untuk menulis tentang artikel atau tulisan mengenai sesuatu ilmu atau pelajaran tentang berbagai hal yang berkaitan dengan komputer. Temen-temen bisa saling berbagi disini untuk menambah wawasan bagi pembaca-pembaca baru...terimakasih sebelumnya saya ucapkan bagi temen yang telah mampir di blog ini...

  © Blogger templates The Professional Template modified by www.mujanxp.com 2009

Back to TOP