Apakah UNICODE itu?
UNICODE adalah suatu standar industri yang dirancang untuk mengijinkan teks dan simbol dari semua tulisan di dunia untuk ditampilkan dan dimanipulasi secara konsisten oleh komputer.
Dengan UNICODE kita dapat menampilkan teks atau simbol khusus (kode ASCII diatas 255) seperti tulisan Arab, China, Latin dan lain-lain.
Pada UNICODE setiap karakter disimpan dalam 2 byte (2x karakter biasa), sehingga memungkinkan ada $FFFF (65535 karakter).
Dukungan Delphi terhadap UNICODE dimulai sejak Delphi 2009, lalu bagaimana nasib pengguna Delphi dibawah 2009, apakah harus gigit jari ..?
TenangΓΒ ….. , dengan trik sederhana kita pengguna Delphi yang belum mendukung UNICODE (Delphi 2006 atau bahkan Delphi 7) dapat menikmati tampilan UNICODE tanpa hapus menginstall komponen tambahan.
Sudah gak sabar ya ..
Langsung aja deh ini penampakannya ..
Ini source kodenya
unit main; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs; type TFMain = class(TForm) procedure FormPaint(Sender: TObject); private { Private declarations } public { Public declarations } end; var FMain: TFMain; const arbBasmalah: array[0..30] of WideChar = (#$0628,#$0640,#$0633,#$0640,#$0640, #$0640,#$0640,#$0640,#$0640,#$0640, #$0640,#$0645,#$0020,#$0627,#$0644, #$0644,#$0647,#$0020,#$0627,#$0644, #$0631,#$062D,#$0645,#$0646,#$0020, #$0627,#$0644,#$0631,#$062D,#$064A, #$0645); arbImam: array[0..8] of WideChar = (#$0627,#$0645,#$0627,#$0645, #$0020,#$062D,#$0627,#$0644,#$0645); implementation {$R *.dfm} procedure TextSizeW(Canvas:TCanvas;ws:WideString;var sz:TSize); begin GetTextExtentPoint32W(Canvas.Handle,PWideChar(ws),Length(ws),sz); end; procedure TulisUnicode(Canvas:TCanvas;Left,Top:Integer;sText:WideString); var r: TRect; sz: TSize; begin with Canvas do begin TextSizeW(Canvas,sText,sz); r:=Rect(Left,Top,Left+sz.cx,Top+sz.cy); DrawTextW(Handle,PWideChar(sText),Length(sText),r,DT_CENTER); end; end; procedure TFMain.FormPaint(Sender: TObject); begin with Canvas do begin Brush.Style:=bsClear; with Font do begin Name:='Times New Roman'; Size:=40; Color:=clGreen; end; end; TulisUnicode(Canvas,10,10,arbBasmalah); Canvas.Font.Color:=clMaroon; TulisUnicode(Canvas,10,100,arbImam); end; end.
Kalo males ngoding sendiri, boleh langsung download aja disini
https://www.box.com/s/kbax7j9xur8ienj8v3vw
Catatan:
Telah diuji menggunakan Turbo Delphi 2006 dan Delphi 7
Tools untuk mempermudah generate array akan di posting menyusul
== Semoga Bermanfaat ==
Sumber mengenai UNICODE dapat dibaca di
http://edn.embarcadero.com/article/38437
http://en.wikipedia.org/wiki/Unicode
http://id.wikipedia.org/wiki/Unicode
Top markotop..
tinggal nyari referensi huruf arabnya π
Masih ada lanjutannya bang, ada tool untuk nulis arabnya, juga ada tool (full source) untuk convert ke arraynya π
gmn klw mau input teks arab di delphi7?
mantur suwun pak ilmune semoga bermanfaat
mantap bang, ijin copy bang buat referensi temen2 delphier Banten.
Alhamdulillah kalo bermanfaat π
siiipp pak,,,, tetap semangat untuk berbagi ya pak,,, semoga bermanfaat ,dan dinilai amal jariyah .amiiinn
Terimakasih mas Rofik π
Permisi bapak-bapak sekalian.
Bagaimana caranya menginput teks arab di
Delphi 7?.trmksh.