Worksheets > Math > Grade 3 > Multiplication > Multiplication Chart

Multiplication Chart

This free printable chart contains one page of content with Multiplication table for numbers 1 to 12.


Multiplication tables for any number

Easily generate multiplication tables for any numbers you choose! Just enter numbers like 1,2,5 and instantly see clean, aligned tables for each.
No input? No problem - you'll get tables from 1 to 10 by default.

Features:

  • Clean layout (5 tables per row)
  • Print-friendly (A4 paper)
  • Export tables as PDF
  • Works great for kids, teachers, and learners!

Start using it below??

.table-box {
border: 1px solid #ccc;
padding: 10px;
background: #f9f9f9;
font-family: monospace;
}

.table-box h3 {
text-align: center;
font-family: Arial, sans-serif;
margin: 5px 0 10px;
}

.table-box div {
white-space: pre;
text-align: left;
}

function generateTables() {
const input = document.getElementById('tableInput').value.trim();
const container = document.getElementById('myoutput');
container.innerHTML = '';

let numbers = [];
if (input === '') {
numbers = Array.from({ length: 10 }, (_, i) => i + 1);
} else {
numbers = input.split(',').map(n => parseInt(n.trim())).filter(n => !isNaN(n) && n >= 1);
}

numbers.forEach(num => {
const tableBox = document.createElement('div');
tableBox.className = 'table-box';
const title = document.createElement('h3');
title.textContent = `Table of ${num}`;
tableBox.appendChild(title);

for (let i = 0; i <= 12; i++) {
const left = `${num}`.padStart(2, ' ');
const mid = `${i}`.padStart(2, ' ');
const right = `${num * i}`.padStart(3, ' ');
const row = document.createElement('div');
row.textContent = `${left} x ${mid} = ${right}`;
tableBox.appendChild(row);
}

container.appendChild(tableBox);
});
}

async function exportAsPDF() {
const { jsPDF } = window.jspdf;
const original = document.getElementById('myoutput');

if (!original.innerHTML.trim()) {
alert('Please generate tables first.');
return;
}

// Step 1: Create A4 wrapper
const a4Wrapper = document.createElement('div');
a4Wrapper.style.width = '1123px'; // A4 Landscape @ 96dpi
a4Wrapper.style.height = '794px';
a4Wrapper.style.padding = '20px';
a4Wrapper.style.background = '#ffffff';
a4Wrapper.style.display = 'flex';
a4Wrapper.style.flexWrap = 'wrap';
a4Wrapper.style.gap = '20px';
a4Wrapper.style.fontFamily = 'monospace';
a4Wrapper.style.overflow = 'hidden';
a4Wrapper.style.position = 'fixed';
a4Wrapper.style.top = '-9999px';

// Clone the content into it
a4Wrapper.innerHTML = original.innerHTML;

// Add it to the DOM
document.body.appendChild(a4Wrapper);

// Step 2: Convert to canvas
const canvas = await html2canvas(a4Wrapper, { scale: 2 });
const imgData = canvas.toDataURL('image/jpeg');

// Step 3: Scale proportionally to fit A4
const maxWidth = 1123;
const maxHeight = 794;
let width = canvas.width;
let height = canvas.height;
const scale = Math.min(maxWidth / width, maxHeight / height);
width *= scale;
height *= scale;

// Step 4: Create and save PDF
const pdf = new jsPDF({
orientation: 'landscape',
unit: 'px',
format: [1123, 794]
});

pdf.addImage(imgData, 'JPEG', 0, 0, width, height);
pdf.save('multiplication-tables.pdf');

// Step 5: Cleanup
document.body.removeChild(a4Wrapper);
}

Downloads 1
  • Multiplication Tables Chart 1 ToDownload