Asudahlah.com Indonesia

Programming, tutorials, mechatronics, operating systems, dan artikel teknologi lainnya.

Membuat kalkulator IP Address menggunakan java netbeans 8


Tutorial kali ini adalah video tutorial, berikut hanya saya lampirkan source code yang digunakan dalam tutorial ini. Untuk step by step nya, silahkan anda stream di youtube (karena lumayan agak panjang).
int prefix = Integer.valueOf(mask.getText());
int pos = prefix / 8; //important octet position
int rem = prefix % 8; //binary digit of importan octet

String binIpFull = "";
String subBinary = "";
String subBinaryFull = "";
String binnetidFull = "";
String binbcidFull = "";
String netmaskFull = "";
String netidFull = "";
String bcidFull = "";

//loop to generate binary mask from octet pos
for (int i = 1; i & lt; = 8; i++) {
 if (i & lt; = rem) {
  subBinary += "1";
 } else {
  subBinary += "0";
 }
}

//netmask (integer version of subBinary
int netmask = Integer.parseInt(String.valueOf(subBinary), 2);

//ip octets array
int[] oct = {
 Integer.valueOf(oct1.getText()),
 Integer.valueOf(oct2.getText()),
 Integer.valueOf(oct3.getText()),
 Integer.valueOf(oct4.getText())
};

//binary of important octet
String binOct = String.format("%8s", Integer.toBinaryString(oct[pos])).replace(' ', '0');

String binNetId = "";
String binBcId = "";

for (int i = 0; i & lt; 8; i++) {
 String binPointer = subBinary.substring(i, i + 1);
 if (binPointer.equals("1")) {
  binNetId += binOct.substring(i, i + 1);
  binBcId += binOct.substring(i, i + 1);
 } else {
  binNetId += "0";
  binBcId += "1";
 }
}

//loop to generate display-ready strings
for (int i = 0; i & lt; = 3; i++) {
 binIpFull += String.format("%8s", Integer.toBinaryString(oct[i])).replace(' ', '0');
 if (i < pos) { = ""
  subbinaryfull += "11111111"; = ""
  netmaskfull = "" += "255"
  binnetidfull = ""
  ','
  0 ');="" binbcidfull="" netidfull="" bcidfull="" ="" }else="" if(i="">pos){
  subBinaryFull += "00000000";
  netmaskFull += "0";
  binnetidFull += "00000000";
  binbcidFull += "00000000";
  netidFull += "0";
  bcidFull += "1";
 } else {
  subBinaryFull += subBinary;
  netmaskFull += String.valueOf(netmask);
  binnetidFull += binNetId;
  binbcidFull += binBcId;
  netidFull += Integer.parseInt(String.valueOf(binNetId), 2);
  bcidFull += Integer.parseInt(String.valueOf(binBcId), 2);
 }
 if (i != 3) {
  subBinaryFull += ".";
  netmaskFull += ".";
  binnetidFull += ".";
  binbcidFull += ".";
  netidFull += ".";
  bcidFull += ".";
  binIpFull += ".";
 }
}
subBinLabel.setText(subBinaryFull);
netMaskLabel.setText(netmaskFull);
netBinLabel.setText(binnetidFull);
bcBinLabel.setText(binbcidFull);
netIdLabel.setText(netidFull);
bcIdLabel.setText(bcidFull);
ipBinLabel.setText(binIpFull);


Videonya bisa anda saksikan disini:



Pengolahan citra dengan html5 dan javascript bagian 3: Grayscale,Binary,Invert

Tutorial ini merupakan lanjutan dari seri tutorial:

Pada tutorial kali ini, kita akan langsung menggunakan library untuk mempermudah proses pengolahan citra yaitu library html5-CIML. Library tersebut bisa anda download di:

https://github.com/cybermujahidz/html5-CIML

Setelah file javascript(js) anda download, simpan kedalam folder yang sama dengan file html. Kemudian copy paste script berikut :

<title>untitled</title>

<meta http-equiv="content-type" content="text/html;charset=utf-8">

<meta name="generator" content="Geany 1.23.1">

<script src="CIML.js" type="text/javascript"></script>

<img id="sumber" src="jeruk.jpg" style="display:none;">

<canvas id="jeruk"></canvas>

<canvas id="grayscale"></canvas>

<canvas id="binary"></canvas>

<canvas id="invert"></canvas>

<script type="text/javascript">

//ambil gambar sumber. ambil tinggi, lebar;

var sumberimg=document.getElementById('sumber');

var lebarSumber=sumberimg.width;

var tinggiSumber=sumberimg.height;

//ambil canvas jeruk, atur tinggi lebar

var jeruk=document.getElementById('jeruk');

jeruk.width=lebarSumber;

jeruk.height=tinggiSumber;


//gambar sumber ke kanvas jeruk

var cJeruk=jeruk.getContext('2d');

cJeruk.drawImage(sumberimg,0,0,lebarSumber,tinggiSumber);

//atur ukuran kanvas grayscale

var grayscale=document.getElementById('grayscale');

grayscale.width=lebarSumber;

grayscale.height=tinggiSumber;

//buat image baru dengan library CIML

var iGrayscale=new CIML('jeruk',0,0,lebarSumber,tinggiSumber);

//ubah ke grayscale

iGrayscale.grayscale();

//render ke canvas id=grayscale

iGrayscale.render('grayscale',0,0);

//atur ukuran kanvas Binary

var Binary=document.getElementById('binary');

Binary.width=lebarSumber;

Binary.height=tinggiSumber;

//buat image baru

var iBinary=new CIML('jeruk',0,0,lebarSumber,tinggiSumber);

//ubah ke binary

iBinary.binary(128);

//128 adalah nilai threshold;

//render ke kanvas binary

iBinary.render('binary',0,0);

//atur ukuran kanvas invert

var invert=document.getElementById('invert');

invert.width=lebarSumber;

invert.height=tinggiSumber;

</script>
Hasilnya akan tampak seperti berikut:


Sorry, this picture is missing after migration.


Untuk penjelasan yang lebih detail, bisa anda simak dalam video ini:
https://youtu.be/vWeT4HOiHkU

Resource :

Cara menambahkan font baru di fpdf | tutorial php FPDF

Pada tutorial kali ini saya akan membahas tentang cara menambahkan font pada fpdf untuk digunakan dalam file pdf.
Secara default, font yang dapat digunakan pada library php fpdf hanya font standar bawaan library seperti courier, helvetica, arial, times, symbol, dan ZapfDingbats. Fpdf tidak bisa menggunakan font yang terinstall pada pc server maupun client secara langsung. Jadi meskipun pada komputer anda sudah terinstall font semisal open sans, anda tidak bisa langsung menggunakannya dalam dokumen pdf anda.

Untuk itu, anda harus mengkonversi file font ttf menjadi font library fpdf yang terdiri dari sebuah file php dan file berekstensi "z".

Dalam tutorial ini, saya akan menjelaskan cara mengkonversi font ttf menjadi library font fpdf, kemudian meggunakannya untuk membangun sebuah file pdf.

Tutorial ini dibuat dengan asumsi bahwa anda sudah paham dasar menggunakan library fpdf. Jika belum, silahkan anda baca tutorial Cara membuat file PDF di PHP menggunakan library FPDF.

Mengkonversi font TTF agar bisa digunakan di library FPDF.

Untuk mengubah font ttf menjadi library font fpdf, fpdf sudah menyediakan script makefont.php yang bisa kita gunakan untuk mengkonversi file ttf. Script ini sudah diikutsertakan dalam distribusi library fpdf. Anda bisa mendownload library fpdf disini.

Pertama, extract library fpdf pada direktori web anda (jika belum). Didalamnya, anda akan menemukan sebuah folder bernama "makefont" yang didalamnya ada file php bernama sama.

Keluar dari direktori tersebut, siapkan font-font yang hendak anda konversi dalam sebuah folder terserah anda. Misalnya dalam tutorial ini saya menggunakan nama "customfont".
Font-font dalam folder ini yang nantinya akan kita konversi. Jadi struktur folder saya seperti berikut.
htdocs/pdf
  |-fpdf17
  |   |-doc
  |   |-font
  |   |-makefont
  |   |-...
  |-customfont
      |-alienleagueii.ttf
      |-alienleagueiiital.ttf
      |-FREESCPT.TTF
      |-JOKERMAN.TTF

Dalam tutorial ini saya menggunakan 4 font sebagai contoh.

Lalu jalankan command prompt(windows) atau terminal(linux) anda. Lalu masuk ke direktori customfont anda dengan perintah cd. 
Misalnya dalam contoh ini lokasi folder saya ada di C:\xampp\htdocs\pdf\customfont\
maka perintah yang saya gunakan adalah:

Lalu jalankan perintah berikut:
php <lokasi direktori makefont>\makefont.php <nama file font>.ttf


Dimana <lokasi direktori makefont> adalah lokasi folder makefont anda dan <nama file font> adalah nama file font anda. Perlu diperhatikan bahwa nama file disini adalah case-sensitive.
Ulangi langkah-langkah diatas untuk tiap-tiap font.

Menambahkan library font PHP FPDF baru.

Jika anda berhasil, maka dalam folder customfont akan muncul file php dan z dari masing-masing font seperti pada gambar berikut:
copy file-file tersebut kecuali file ttf kedalam folder "font" di dalam direktori fpdf17, jadi seperti pada gambar berikut.
Lalu buat file pdf generator baru seperti pada tutorial Cara membuat file PDF di PHP menggunakan library FPDF.

Kemudian tambahkan font-font baru anda dengan menggunakan perintah AddFont dengan format sebagai berikut:

<?php
//add new freescript font
$pdf->AddFont('Freescript','','FREESCPT.php');

//add new jokerman font
$pdf->AddFont('Jokerman','','JOKERMAN.php');

//add alien league (regular)
$pdf->AddFont('Alien League','','alienleagueii.php');
Parameter pertama adalah nama family font, parameter kedua adalah variant, parameter ketiga adalah nama file php font yang bersangkutan.

Nama font family bisa anda pilih terserah anda. Hanya saja, hindari menggunakan nama yg sama dengan font standar misalnya Arial.


Varian font bisa terdiri dari gabungan antara string berikut:
  • string kosong (''): regular
  • B: bold
  • I: italic
  • BI or IB: bold italic
Nilai default adalah regular.

Pada contoh ini, saya menggunakan 2 bentuk varian font Alien League. Yaitu alienleagueii.php untuk font regular dan alienleagueiiital.php untuk versi italic (miring). Saya harus menambahkan keduanya secara terpisah dengan nama family sama namun varian yang berbeda (kayak iklan es krim aja LOL), dan font file yang berbeda pula. Jadi seperti berikut:

//add alien league (regular)
$pdf->AddFont('Alien League','','alienleagueii.php');

//add alien league italic
$pdf->AddFont('Alien League','I','alienleagueiiital.php');

Perlu diingat bahwa anda harus mendambahkan font terlebih dahulu sebelum bisa menggunakannya, jadi perintah-perintah diatas harus diletakkan di baris awal  setelah deklarasi class FPDF.

Menggunakan font custom di FPDF untuk membangun file PDF.

Untuk menggunakan font yang sudah kita tambahkan, kita hanya perlu memanggil fungsi SetFont beserta nama family, varian, dan ukurannya seperti berikut:
$pdf->SetFont('Freescript','',36);

Perlu dicatat bahwa font Freescript dalam tutorial ini tidak memiliki varian lain selain regular, jadi anda tidak bisa memanggil perintah $pdf->SetFont('Freescript','I',36);. Beda dengan Alien league, kita bisa menggunakan yang reguler dan italic karena sudah kita tambahkan sebelumnya.

Berikut adalah contoh lengkapnya:

<?php
require('fpdf17/fpdf.php');

$pdf = new FPDF('P','mm','A4');

//add new freescript font
$pdf->AddFont('Freescript','','FREESCPT.php');

//add new jokerman font
$pdf->AddFont('Jokerman','','JOKERMAN.php');

//add alien league (regular)
$pdf->AddFont('Alien League','','alienleagueii.php');

//add alien league italic
$pdf->AddFont('Alien League','I','alienleagueiiital.php');

$pdf->AddPage();

//freescript font
$pdf->SetFont('Freescript','',36);
$pdf->Cell(190,20,'Freescript Font',0,1,'C');

//jokerman font
$pdf->SetFont('Jokerman','',36);
$pdf->Cell(190,20,'Jokerman Font',0,1,'C');

//alien league regular font
$pdf->SetFont('Alien League','',36);
$pdf->Cell(190,20,'Alien League Regular Font',0,1,'C');

//alien league italic font
$pdf->SetFont('Alien League','I',36);
$pdf->Cell(190,20,'Alien League Italic Font',0,1,'C');

$pdf->Output();

Dan ini adalah hasil dari script diatas:

Untuk tutorial dalam bentuk video, bisa anda simak pada channel saya di sini.

FAQ

Q: Bagaimana kalau saya pakai shared hosting, jadi tidak ada akses ke terminal atau command prompt?
A: Konversinya bisa dilakukan di komputer anda dulu, baru hasilnya di upload ke hostingan anda.

Q: Bagaimana untuk file opentype font(otf)?
A: Bisa, namun hanya yg formatnya berdasarkan True Type, kalau Type1 harus menyertakan file AFM nya dalam direktori yg sama.

Q: Kok ribet sih, ada gak cara yg lebih gampang?
A: Ada, pakai font generator online nya fpdf di sini.

Q: Nah kenapa jelasin panjang lebar kalau ada cara yg lebih gampang?
A: Biar paham dasarnya, biar gak tergantung sama online generator. Sekaligus sharing ilmu biar dapat pahala.

Membuat barcode di PDF dengan PHP FPDF

Kali ini saya akan menjelaskan bagaimana cara menambahkan barcode pada file pdf yang kita buat dengan menggunakan library php FPDF. Pada tutorial ini saya berasumsi bahwa anda sudah memahami dasar penggunaan library FPDF untuk membuat sebuah file pdf. Jika belum, anda bisa membaca tutorial Cara membuat file PDF di PHP menggunakan library FPDF.

Mengapa dan apa itu barcode?

Barcode adalah data numerik optik berupa runtutan garis-garis yang bisa dibaca oleh mesin. Biasanya anda temui pada label-label, kemasan produk, atau berkas elektronik.
Barcode digunakan untuk mempercepat input data numerik, pada toko swalayan misalnya, input produk pada sistem kasir sudah menggunakan barcode, jadi kasir tidak perlu menginputkan angka secara manual dengan keyboard (kecuali dalam kondisi tertentu). Yang pastinya akan mempercepat proses pelayanan.
Tidak hanya terbatas pada produk saja, barcode juga biasa digunakan pada label, nota tagihan, kwitansi yang umumnya digunakan oleh perusahaan-perusahaan untuk mempercepat proses input data.

Dukungan barcode untuk library FPDF.

Pada dasarnya, FPDF tidak memiliki dukungan untuk membuat barcode. Namun bukan berarti anda tidak bisa membuat barcode dengan librari FPDF.
Untuk dapat menambahkan barcode di dokumen pdf anda, anda memerlukan sebuah class custom yang menambah dukungan barcode di pdf.
Sudah saya siapkan di repository saya, silahkan download disini:
https://github.com/gemul/fpdf-barcode

Terdapat banyak format barcode yang beredar. Disini saya akan bahas hanya 2 format yang paling umum digunakan yaitu EAN13 dan UPC_A.
EAN adalah singkatan dari European Article Number. Merupakan standar yang digunakan secara global untuk mengidentifikasi produk, packaging, dan manufaktur.
UPC adalah singkatan dari Universal Product Code. Merupakan standar yang  digunakan secara luas  di amerika, kanada, inggris, australia, new zealand, dan eropa untuk mengidentifikasi barang.
Keduanya dapat menampung sebanyak 12 digit angka.
Untuk lebih lengkapnya mengenai barcode silahkan baca di wikipedia. Back to the point.

Menggunakan custom fpdf class untuk membuat barcode.

Pertama, tentu saja anda memerlukan library FPDF, bisa anda download disini.
Lalu download dan copy-paste file fpdf_barcode.php dari repository saya ke folder htdocs anda beserta library utama FPDF. Pastikan baris kedua dari file fpdf_barcode.php merujuk pada file fpdf.php dari library utama.
Berikut adalah struktur folder saya:
\htdocs\pdf\
         |-fpdf\
         |  |-fpdf.php
         |-fpdf_barcode.php
jadi baris kedua file saya harus seperti ini:
require('fpdf/fpdf.php');

Selanjutnya, buat sebuah file php baru untuk generator pdf. Lalu copy-paste kode berikut kedalamnya.

<?php
require('fpdf_barcode.php');

$pdf = new PDF_BARCODE('P','mm','A4');

$pdf->AddPage();

//EAN13 test
$pdf->EAN13(10,10,'123456789012',5,0.5,9);
$pdf->EAN13(10,20,'123456789012',5,0.35,9);
$pdf->EAN13(10,30,'123456789012',10,0.35,9);

//UPC_A test
$pdf->UPC_A(100,10,'123456789012',5,0.5,9);
$pdf->UPC_A(100,20,'123456789012',5,0.35,9);
$pdf->UPC_A(100,30,'123456789012',10,0.35,9);

$pdf->Output();

Simpan, lalu buka melalui browser. Maka hasilnya adalah seperti berikut.

Maksud dari kode diatas adalah, pertama kita muat library fpdf_barcode.php (bukan fpdf.php).
 Lalu kita buat sebuah object baru dari class PDF_BARCODE, simpan dengan variabel $pdf.
class PDF_BARCODE merupakan turunan dari FPDF, jadi parameter-parameter dan fungsi yang digunakan sama.
Lalu buat sebuah halaman baru dengan perintah AddPage().
Baris berikutnya adalah perintah untuk membuat barcode EAN13 dan UPC_A.

Pada class PDF_BARCODE, terdapat dua buah method tambahan yaitu EAN13 dan UPC_A. Sesuai namanya, masing-masing fungsi digunakan untuk membuat sebuah barcode.

Untuk EAN13, cara penggunaanya adalah:
$pdf->EAN13(float x, float y, string barcode [, float h [, float w[, int font_size]]])

Sedangkan untuk UPC_A, caranya adalah:
$pdf->UPC_A(float x, float y, string barcode [, float h [, float w[, int font_size]]])

Keduanya memiliki format parameter yang sama, dimana:
  • x dan y adalah koordinat posisi penempatan barcode. 
  • barcode adalah isi dari barcode, berupa 12 digit angka.
  • h merupakan tinggi barcode, defaultnya adalah 16.
  • w merupakan lebar garis barcode, bukan lebar keseluruhan barcode. Defaultnya adalah 0.35.
  • font_size adalah ukuran teks dibawah barcode, dalam satuan point.
Jadi, baris berikut:

$pdf->EAN13(10,10,'123456789012',5,0.5,9);

Berarti kita membuat barcode format EAN13 dengan posisi 10mm dari atas halaman, 10mm dari kiri halaman. Barcode berisi angka 123456789012 dengan tinggi 5, dan lebar garis 0.5 Dan text dibawah barcode berukuran 9 point.

Jika anda masih bingung, silahkan simak video tutorial di channel saya berikut ini:
https://www.youtube.com/watch?v=nZCvHXt2AyI
Source code bisa anda download melalui link pada deskripsi.

Cara membuat file PDF di PHP menggunakan library FPDF

Sekarang ini, ketika segala sesuatu mulai terhubung ke internet. Banyak orang yang lebih memilih menggunakan aplikasi berbasis web (biasa disebut webapp) daripada aplikasi berbasis desktop dengan berbagai alasan, salah satunya adalah mobilitas dan fleksibilitas. Dengan web app, anda bisa mengakses aplikasi anda kapan saja dimana saja.
Web app juga bisa lebih powerful daripada aplikasi stand alone. Dikarenakan pemrosesan di lakukan di sisi server, bahkan perangkat dengan kemampuan komputasi rendah dapat mengakses informasi yang menggunakan perhitungan kompleks.
Namun webapp juga memiliki beberapa kelemahan. salah satunya adalah ketika berurusan dengan dokumen fisik.

Generasi PDF di PHP dengan FPDF

PDF memberikan kemampuan web app untuk menyajikan data yang dapat di cetak dengan tata letak yang tetap. Seperti mencetak dokumen, struk, kwitansi, tagihan, laporan dan lain sebagainya.
Pada tutorial ini, saya akan menggunakan library FPDF. FPDF adalah sebuah library PHP untuk membuat dan membangun file pdf dengan memanipulasi isi dokumen pdf melalui program. Dokumentasinya bisa anda baca disini.
Berikut adalah tutorial dasar penggunaan library FPDF untuk membuat dokumen pdf di php.

Membangun struktur PDF di PHP

Pertama, download library fpdf disini.
Lalu ekstrak isinya di folder htdocs anda.
Lalu buat sebuah file php baru dan isikan kode berikut. File php ini nantinya yang akan menjadi generator dokumen pdf.
Pada contoh ini saya akan menggunakan settingan kertas ukuran A4, portrait, dengan satuan milimeter.


<?php
//call the FPDF library
require('fpdf17/fpdf.php');

//A4 width : 219mm
//default margin : 10mm each side
//writable horizontal : 219-(10*2)=189mm

//create pdf object
$pdf = new FPDF('P','mm','A4');

?>


Selanjutnya, buat sebuah halaman kosong dengan perintah $pdf->AddPage(); . Lalu output haslinya dengan perintah $pdf->Output();


<?php
//call the FPDF library
require('fpdf17/fpdf.php');

//A4 width : 219mm
//default margin : 10mm each side
//writable horizontal : 219-(10*2)=189mm

//create pdf object
$pdf = new FPDF('P','mm','A4');
//add new page
$pdf->AddPage();
//output the result
$pdf->Output();
?>


Buka browser anda, akses file php yang anda buat tadi. Maka anda akan mendapatkan tampilan pdf seperti ini.
Tutorial pdf dengan php fpdf - halaman kosong
Selamat, anda telah membuat sebuah dokumen pdf. Sekarang anda hanya tinggal mengisinya dengan konten.

Menambahkan konten pada pdf dengan cells

Konten teks di pdf ditulis dengan menggunakan cells (bayangkan cell sebagai sebuah kotak textbox). Anda bisa mengisi teks dengan cell dan tiap-tiap cell bisa memiliki properti masing-masing seperti lebar, tinggi, garis tepi, dll.
Cell ditumpuk secara horizontal dari kiri ke kanan dan satu baris berakhir dengan cell yang memiliki property new line atau dengan memanggil perintah $pdf->Ln(); ibarat menekan tombol enter ketika mengetik.
Tutorial PHP FPDF - Penjelasan cell di php fpdf
FPDF cell memiliki parameter berikut:
Cell(float w [, float h [, string txt [, mixed border [, int ln [, string align [, boolean fill [, mixed link]]]]]]])
w dan h adalah untuk lebar dan tinggi.
txt untuk konten teks nya.
border untuk mengatur border, bisa berupa angka 1 untuk semua border, atau 0 untuk tanpa border. Bisa juga kombinasi antara huruf L,T,R,B untuk left, top, right, atau bottom.
ln adalah untuk line ending (new line), angka 1 artinya baris berakhir pada cell ini (enter).
align adalah perataan teks kiri/tengah/kanan (L,C,R). Tidak ada justify
untuk fill and link, kita belum membutuhkannya kali ini. Silahkan baca dokumentasinya untuk lebih jelasnya.

Mengatur font di pdf

Sebelum menambahkan sesuatu di file pdf kita, alangkah baiknya kita mengatur font yang akan kita gunakan terlebih dahulu.
Untuk mengubah setingan font, kita bisa menggunakan perintah $pdf->SetFont(); berikut adalah petunjuknya.
SetFont(string family [, string style [, float size]])
family adalah jenis font yang digunakan ( 'Arial','Courier','Times'). Harus berupa font default atau font yang sudah didefinisikan dengan perintah AddFont (akan saya jelaskan di tutorial lain). Sementara ini kita pakai Arial saja.
style adalah kombinasi dari B,I,U (bold, italic, underlined) atau string kosong.
size adalah ukuran font dalam satuan point (sama seperti di ms word).

Demikian adalah perintah dasar yang kita butuhkan untuk membuat sebuah dokumen pdf. Sekarang mari kita coba membuat sebuah dokumen pdf.

Membuat  nota tagihan (invoice) pdf di php

Berikut adalah cuplikan kode untuk invoice di pdf. Copas kode berikut diantara setelah perintah AddPage dan sebelum perintah Output.

//set font jadi arial, bold, 14pt
$pdf->SetFont('Arial','B',14);

//Cell(width , height , text , border , end line , [align] )

$pdf->Cell(130 ,5,'GEMUL APPLIANCES.CO',0,0);
$pdf->Cell(59 ,5,'INVOICE',0,1);//end of line

//set font jadi arial, regular, 12pt
$pdf->SetFont('Arial','',12);

$pdf->Cell(130 ,5,'[Street Address]',0,0);
$pdf->Cell(59 ,5,'',0,1);//end of line

$pdf->Cell(130 ,5,'[City, Country, ZIP]',0,0);
$pdf->Cell(25 ,5,'Date',0,0);
$pdf->Cell(34 ,5,'[dd/mm/yyyy]',0,1);//end of line

$pdf->Cell(130 ,5,'Phone [+12345678]',0,0);
$pdf->Cell(25 ,5,'Invoice #',0,0);
$pdf->Cell(34 ,5,'[1234567]',0,1);//end of line

$pdf->Cell(130 ,5,'Fax [+12345678]',0,0);
$pdf->Cell(25 ,5,'Customer ID',0,0);
$pdf->Cell(34 ,5,'[1234567]',0,1);//end of line

//buat dummy cell untuk memberi jarak vertikal
$pdf->Cell(189 ,10,'',0,1);//end of line

//alamat billing 
$pdf->Cell(100 ,5,'Bill to',0,1);//end of line

//tambah dummy cell di awal untuk indentasi
$pdf->Cell(10 ,5,'',0,0);
$pdf->Cell(90 ,5,'[Name]',0,1);

$pdf->Cell(10 ,5,'',0,0);
$pdf->Cell(90 ,5,'[Company Name]',0,1);

$pdf->Cell(10 ,5,'',0,0);
$pdf->Cell(90 ,5,'[Address]',0,1);

$pdf->Cell(10 ,5,'',0,0);
$pdf->Cell(90 ,5,'[Phone]',0,1);
 
//buat dummy cell untuk memberi jarak vertikal
$pdf->Cell(189 ,10,'',0,1);//end of line

//invoice 
$pdf->SetFont('Arial','B',12);

$pdf->Cell(130 ,5,'Description',1,0);
$pdf->Cell(25 ,5,'Taxable',1,0);
$pdf->Cell(34 ,5,'Amount',1,1);//end of line

$pdf->SetFont('Arial','',12);

//Angka diratakan kanan, jadi kita beri property 'R'

$pdf->Cell(130 ,5,'UltraCool Fridge',1,0);
$pdf->Cell(25 ,5,'-',1,0);
$pdf->Cell(34 ,5,'3,250',1,1,'R');//end of line

$pdf->Cell(130 ,5,'Supaclean Diswasher',1,0);
$pdf->Cell(25 ,5,'-',1,0);
$pdf->Cell(34 ,5,'1,200',1,1,'R');//end of line

$pdf->Cell(130 ,5,'Something Else',1,0);
$pdf->Cell(25 ,5,'-',1,0);
$pdf->Cell(34 ,5,'1,000',1,1,'R');//end of line

//total
$pdf->Cell(130 ,5,'',0,0);
$pdf->Cell(25 ,5,'Subtotal',0,0);
$pdf->Cell(4 ,5,'$',1,0);
$pdf->Cell(30 ,5,'4,450',1,1,'R');//end of line

$pdf->Cell(130 ,5,'',0,0);
$pdf->Cell(25 ,5,'Taxable',0,0);
$pdf->Cell(4 ,5,'$',1,0);
$pdf->Cell(30 ,5,'0',1,1,'R');//end of line

$pdf->Cell(130 ,5,'',0,0);
$pdf->Cell(25 ,5,'Tax Rate',0,0);
$pdf->Cell(4 ,5,'$',1,0);
$pdf->Cell(30 ,5,'10%',1,1,'R');//end of line

$pdf->Cell(130 ,5,'',0,0);
$pdf->Cell(25 ,5,'Total Due',0,0);
$pdf->Cell(4 ,5,'$',1,0);
$pdf->Cell(30 ,5,'4,450',1,1,'R');//end of line

Simpan file php nya, lalu refresh browser. Jika tidak ada kesalahan pengetikan, maka hasilnya akan seperti ini.
Selamat, anda sudah bisa membuat pdf invoice anda sendiri. Sekarang anda tinggal mengotak-atik nya sesuai kebutuhan dan kreatifitas anda untuk membuat kwitansi, laporan, struk, formulir dan dokumen cetak lainnya.

Jika anda masih bingung, silahkan simak tutorial videonya di channel saya disini:
https://www.youtube.com/watch?v=R32LF_pONNY

Link untuk source code nya ada di deskripsi video.