Multiplication Tables Generator (1–100)

Multiplication Tables Generator

Generate multiplication tables from 1 to 100

Table Settings

Display & Utilities

Generated Tables 0 tables

No tables generated yet

Configure your settings and click "Generate Tables"

Your privacy is protected! No data is transmitted or stored.

'); printWindow.document.close(); }// Generate PDF - 16 tables per A4 page (4 rows × 4 columns) async function generatePdf(tablesToGenerate = 'all', specificTable = null) { showNotification('Generating PDF...'); try { const { jsPDF } = window.jspdf; const pdf = new jsPDF('portrait', 'mm', 'a4'); let tables = []; if (tablesToGenerate === 'single' && specificTable) { tables = state.tables.filter(t => t.number === specificTable); } else { tables = [...state.tables]; } if (tables.length === 0) { showNotification('No tables to generate PDF!'); return; } // PDF settings for A4 portrait const pageWidth = 210; // A4 width in mm const pageHeight = 297; // A4 height in mm const margin = 10; const contentWidth = pageWidth - 2 * margin; const contentHeight = pageHeight - 2 * margin; // Tables per page: 4 rows × 4 columns = 16 tables const tablesPerPage = 16; const tablesPerRow = 4; const tablesPerCol = 4; // Calculate table dimensions const tableWidth = (contentWidth - (tablesPerRow - 1) * 5) / tablesPerRow; const tableHeight = (contentHeight - 20 - (tablesPerCol - 1) * 5) / tablesPerCol; // Split tables into pages for (let page = 0; page < Math.ceil(tables.length / tablesPerPage); page++) { const startIdx = page * tablesPerPage; const endIdx = Math.min(startIdx + tablesPerPage, tables.length); const pageTables = tables.slice(startIdx, endIdx); // Start new page if not first page if (page > 0) { pdf.addPage(); } // Add page title pdf.setFontSize(16); pdf.setTextColor(59, 130, 246); pdf.text('Multiplication Tables', pageWidth / 2, margin + 8, { align: 'center' }); pdf.setFontSize(10); pdf.setTextColor(100, 100, 100); pdf.text(`Page ${page + 1} of ${Math.ceil(tables.length / tablesPerPage)}`, pageWidth / 2, margin + 14, { align: 'center' }); // Draw tables on this page let tableIndex = 0; for (let row = 0; row < tablesPerCol; row++) { for (let col = 0; col < tablesPerRow; col++) { if (tableIndex >= pageTables.length) break; const tableData = pageTables[tableIndex]; const xPos = margin + col * (tableWidth + 5); const yPos = margin + 20 + row * (tableHeight + 5); // Draw table border pdf.setDrawColor(200, 200, 200); pdf.rect(xPos, yPos, tableWidth, tableHeight); // Add table title pdf.setFontSize(9); pdf.setTextColor(59, 130, 246); pdf.text(`Table of ${tableData.number}`, xPos + tableWidth / 2, yPos + 5, { align: 'center' }); // Add table content (2 columns of 5 rows each) pdf.setFontSize(7); pdf.setTextColor(0, 0, 0); for (let i = 1; i <= 10; i++) { const contentCol = i <= 5 ? 0 : 1; const contentRow = i <= 5 ? i - 1 : i - 6; const contentX = xPos + 5 + (contentCol * (tableWidth / 2)); const contentY = yPos + 10 + (contentRow * 6); pdf.text(`${tableData.number} × ${i} =`, contentX, contentY); pdf.text(`${tableData.number * i}`, contentX + (tableWidth / 2) - 8, contentY, { align: 'right' }); } tableIndex++; } } // Add footer to each page pdf.setFontSize(8); pdf.setTextColor(150, 150, 150); pdf.text('Generated from: freetoolscraft.com', pageWidth / 2, pageHeight - margin, { align: 'center' }); } // Save the PDF const fileName = tablesToGenerate === 'single' ? `table-of-${specificTable}.pdf` : `multiplication-tables-${new Date().toISOString().slice(0,10)}.pdf`; pdf.save(fileName); showNotification(`PDF downloaded successfully!`); } catch (error) { console.error('PDF generation error:', error); showNotification('Error generating PDF. Using text fallback.'); // Fallback to text download if (tablesToGenerate === 'single' && specificTable) { downloadSingleText(specificTable); } else { downloadText(); } } }// Download single table as PDF function downloadSinglePdf(tableNumber) { generatePdf('single', tableNumber); }// Download all tables as PDF function downloadPdf() { if (state.tables.length === 0) { showNotification('No tables to download!'); return; } generatePdf('all'); }// Generate text content with website footer function generateTextContent(tablesToGenerate = 'all', specificTable = null) { let tables = []; if (tablesToGenerate === 'single' && specificTable) { tables = state.tables.filter(t => t.number === specificTable); } else { tables = [...state.tables]; } let text = `MULTIPLICATION TABLES\n`; text += `${'='.repeat(50)}\n`; text += `Generated on: ${new Date().toLocaleDateString()}\n`; text += `Total Tables: ${tables.length}\n`; text += `${'='.repeat(50)}\n\n`; // Generate each table separately tables.forEach(tableData => { text += `TABLE OF ${tableData.number}\n`; text += `${'='.repeat(30)}\n`; for (let i = 1; i <= 10; i++) { text += `${tableData.number} × ${i} = ${tableData.number * i}\n`; } text += '\n'; }); // Add footer text += `${'='.repeat(50)}\n`; text += `Generated from: freetoolscraft.com\n`; text += `${'='.repeat(50)}\n`; return text; }// Download all tables as text file function downloadText() { if (state.tables.length === 0) { showNotification('No tables to download!'); return; } const text = generateTextContent('all'); const blob = new Blob([text], { type: 'text/plain' }); const url = URL.createObjectURL(blob); const a = document.createElement('a'); a.href = url; a.download = `multiplication-tables-${new Date().toISOString().slice(0,10)}.txt`; document.body.appendChild(a); a.click(); document.body.removeChild(a); URL.revokeObjectURL(url); showNotification(`Text file with ${state.tables.length} tables downloaded!`); }// Download single table as text function downloadSingleText(tableNumber) { const tableData = state.tables.find(t => t.number === tableNumber); if (!tableData) return; const text = generateTextContent('single', tableNumber); const blob = new Blob([text], { type: 'text/plain' }); const url = URL.createObjectURL(blob); const a = document.createElement('a'); a.href = url; a.download = `table-of-${tableNumber}.txt`; document.body.appendChild(a); a.click(); document.body.removeChild(a); URL.revokeObjectURL(url); showNotification(`Table of ${tableNumber} downloaded as text file!`); }// Expand all tables function expandAllTables() { document.querySelectorAll('[data-table-number]').forEach(card => { const cardBody = card.querySelector('div:nth-child(2)'); const toggleIcon = card.querySelector('.fa-chevron-down, .fa-chevron-up'); if (cardBody.classList.contains('hidden')) { cardBody.classList.remove('hidden'); if (toggleIcon) { toggleIcon.classList.remove('fa-chevron-down'); toggleIcon.classList.add('fa-chevron-up'); } } }); }// Collapse all tables function collapseAllTables() { document.querySelectorAll('[data-table-number]').forEach(card => { const cardBody = card.querySelector('div:nth-child(2)'); const toggleIcon = card.querySelector('.fa-chevron-down, .fa-chevron-up'); if (!cardBody.classList.contains('hidden')) { cardBody.classList.add('hidden'); if (toggleIcon) { toggleIcon.classList.remove('fa-chevron-up'); toggleIcon.classList.add('fa-chevron-down'); } } }); }// Show notification function showNotification(message) { // Remove existing notification if any const existingNotification = document.querySelector('.notification'); if (existingNotification) { existingNotification.remove(); } // Create notification element const notification = document.createElement('div'); notification.className = 'notification fixed bottom-4 right-4 bg-gray-800 text-white px-4 py-3 rounded-lg shadow-lg z-50 transform translate-y-0 opacity-0 transition-all duration-300'; notification.textContent = message; notification.style.backgroundColor = 'var(--primary-dark)'; document.body.appendChild(notification); // Animate in setTimeout(() => { notification.classList.remove('opacity-0'); notification.classList.add('opacity-100'); }, 10); // Remove after 3 seconds setTimeout(() => { notification.classList.remove('opacity-100'); notification.classList.add('opacity-0'); setTimeout(() => { notification.remove(); }, 300); }, 3000); }// Initialize the app when DOM is loaded document.addEventListener('DOMContentLoaded', init);

Multiplication Tables Generator – How to Use Guide

🎯 What is This Tool?

The Multiplication Tables Generator is a free online tool that helps students, teachers, and parents create customized multiplication tables from 1 to 100. With this user-friendly generator, you can easily create, customize, and download multiplication tables in various formats.

📱 Key Features

  • ✅ Generate multiplication tables from 1 to 100

  • ✅ Multiple display formats (vertical and horizontal)

  • ✅ Download as PDF or text files

  • ✅ Print-friendly layouts

  • ✅ Customizable color themes

  • ✅ Dark/light mode options

  • ✅ Mobile-friendly design

  • ✅ No data collection – completely private

📖 Step-by-Step Usage Guide

Step 1: Select Table Range

  1. Choose Start and End Numbers:

    • Enter the starting table number (1-100) in the “Start Table” field

    • Enter the ending table number (1-100) in the “End Table” field

    • Example: Start=5, End=15 will generate tables from 5 to 15

  2. Quick Selection Buttons:

    • Use pre-set buttons for common ranges:

      • 1-10: Tables 1 through 10

      • 11-20: Tables 11 through 20

      • 21-50: Tables 21 through 50

      • 51-100: Tables 51 through 100

      • All (1-100): All 100 multiplication tables

Step 2: Customize Display Settings

  1. Choose Table Format:

    • Vertical Format: Shows tables in list format (recommended for easy reading)

    • Horizontal Format: Shows tables in grid format (space-efficient)

  2. Adjust Font Size:

    • Small: Compact view, more tables on screen

    • Medium: Standard size (recommended)

    • Large: Enhanced readability

  3. Select Color Theme:

    • Blue Theme: Professional and clean

    • Green Theme: Educational and calming

    • Yellow Theme: Kid-friendly and bright

    • Purple Theme: Creative and engaging

Step 3: Generate Tables

  1. Click the “Generate Tables” button

  2. Wait a moment while tables are created

  3. View your generated tables in the results section below

  4. Each table appears in a collapsible card

Step 4: Use Generated Tables

  1. Expand/Collapse Tables:

    • Click any table header to expand or collapse it

    • Use “Expand All” or “Collapse All” buttons for bulk actions

  2. View Individual Tables:

    • Each table shows multiplication from 1× to 10×

    • Results are clearly displayed with colored formatting

Step 5: Export Options

  1. Copy to Clipboard:

    • Click the copy icon on any table to copy it

    • Use “Copy All” button to copy all tables

  2. Download as Text File:

    • Click “Download as Text File” for all tables

    • Text files include website footer with proper formatting

  3. Download as PDF:

    • Click “PDF” button to download all tables as PDF

    • Each PDF page contains 16 tables (4×4 grid)

    • Professional formatting with color coding

  4. Print Tables:

    • Click “Print” button for print-friendly layout

    • Each printed page contains 16 tables

    • Includes page numbers and website footer

💡 Pro Tips for Best Results

For Students:

  • Start with small ranges (1-10) for practice

  • Use different color themes to make learning fun

  • Print tables for offline study sessions

  • Use the dark mode for night study sessions

For Teachers:

  • Generate specific ranges for classroom focus

  • Print tables for handouts or wall displays

  • Use different formats for varied learning styles

  • Create custom worksheets by combining ranges

For Parents:

  • Generate tables matching your child’s current level

  • Use the text download for creating custom worksheets

  • Print multiple copies for repeated practice

  • Utilize quick buttons for common grade levels

🖨️ Printing Guidelines

  • Optimal Settings: Use A4 paper in portrait mode

  • Layout: Each page contains 16 complete tables

  • Quality: Tables maintain readability when printed

  • Footer: Each page includes website attribution

📱 Mobile Usage Tips

  • Tool is fully responsive on all devices

  • Buttons are sized for easy tapping on mobile

  • Use landscape mode for better table viewing

  • Download PDFs for offline mobile access

🔒 Privacy Features

  • No registration required

  • No data collection or tracking

  • All processing happens in your browser

  • No internet connection needed after loading

❓ Common Questions

Q: Is this tool completely free?

A: Yes, 100% free with no hidden costs or subscriptions.

Q: Can I use this without internet?

A: Yes, once the page loads, you can use all features offline.

Q: Are there any limits on usage?

A: No limits – generate as many tables as you need.

Q: Can I share the generated tables?

A: Yes, all generated tables are yours to use and share.

Q: Is this suitable for classroom use?

A: Absolutely! Teachers worldwide use this tool for creating worksheets and study materials.

🌐 Website Information

Generated tables include footer: “Generated from: freetoolscraft.com

This Multiplication Tables Generator from FreeToolsCraft.com provides an efficient, user-friendly solution for all your multiplication table needs. Whether you’re a student learning basics, a teacher creating materials, or a parent helping with homework, this tool simplifies the process of creating and customizing multiplication tables.

The tool’s clean interface, multiple export options, and privacy-focused design make it an ideal choice for educational purposes. With its responsive design and comprehensive features, it works perfectly on computers, tablets, and mobile phones.

Start generating your custom multiplication tables today and make learning mathematics easier and more enjoyable!

Translate »
Scroll to Top