Js Tablo yazdırma Scripti

Html Sayfalarda bir tablo id ile tetiklendiğinde tablo içeriğini yazdırmaya aktaran script

<script>
function PrintTable(tabloId) {
    let table = document.querySelector(tabloId);
    if (!table) {
        console.error("Tablo bulunamadı: " + tabloId);
        return;
    }

    let printWindow = window.open('', '', 'width=800,height=600');
    printWindow.document.write('<html><head><title>Tablo Yazdır</title>');
    printWindow.document.write('<style>');
    printWindow.document.write('table { border-collapse: collapse; width: 100%; }');
    printWindow.document.write('th, td { border: 1px solid black; padding: 8px; text-align: left; }');
    printWindow.document.write('</style></head><body>');
    
    printWindow.document.write(table.outerHTML); // Sadece tablonun içeriğini ekler
    printWindow.document.write('</body></html>');
    
    printWindow.document.close();
    printWindow.print();
}
</script>

Örnek Kullanımı

	<button onclick="PrintTable('#Tablo1')">Yazdır</button>
Delphi Web Browser Yazdırma İşlemleri

procedure TForm1.Button1Click(Sender: TObject);
begin
  WebBrowser1.Navigate(‘https://ahmetaydinlik.com/‘);
end;

// Yazdır Dialog Penceresi Açmadan Yazdırma

procedure TForm1.Button2Click(Sender: TObject);
var
  vaIn, vaOut: OleVariant;
begin
  WebBrowser1.ControlInterface.ExecWB(OLECMDID_PRINT, OLECMDEXECOPT_DONTPROMPTUSER,
    vaIn, vaOut);
end;

// Yazdırma Dialog Penceres Açarak Yazdırma

procedure TForm1.Button3Click(Sender: TObject);
var
  vaIn, vaOut: OleVariant;
begin
  WebBrowser1.ControlInterface.ExecWB(OLECMDID_PRINT, OLECMDEXECOPT_PROMPTUSER,
    vaIn, vaOut);
end;

// Önizleme

procedure TForm1.Button4Click(Sender: TObject);
var
  vaIn, vaOut: OleVariant;
begin
  WebBrowser1.ControlInterface.ExecWB(OLECMDID_PRINTPREVIEW,
    OLECMDEXECOPT_DONTPROMPTUSER, vaIn, vaOut);
end;

// Sayfa ayarları dialogu açarak

procedure TForm1.Button5Click(Sender: TObject);
var
  vaIn, vaOut: OleVariant;
begin
  WebBrowser1.ControlInterface.ExecWB(OLECMDID_PAGESETUP, OLECMDEXECOPT_PROMPTUSER,
    vaIn, vaOut);
end;