Excel to PDF Converter
Upload a spreadsheet and convert it to PDF format instantly
Drop an Excel file here, or click to select
Supports .xlsx, .xls, and .ods formats
What is Excel to PDF?
Excel to PDF is an online spreadsheet conversion tool that transforms Microsoft Excel files (.xlsx and .xls) and OpenDocument spreadsheets (.ods) into PDF format. PDF preserves column widths, cell styles, charts, and formula layouts exactly - it looks the same on every device, making it ideal for formal reports that need to be printed or shared.
Sending an Excel file directly means anyone can edit the numbers. Converting to PDF locks the content: financial reports for executives, quotes for clients, data summaries for archiving, attendance sheets for posting. Files are deleted from the server immediately after conversion, so your data stays private.
How to Use
How to use
- Click the upload area or drag and drop an Excel file - .xlsx, .xls, and .ods are all supported
- Click "Convert to PDF" and the server will process your file in seconds
- Once done, click "Download PDF" to save the file to your device
- Need to convert more files? Click "Convert Another File" to start fresh
Layout Checks
- Set print area, page breaks, scaling, and orientation in the spreadsheet before conversion whenever possible.
- After conversion, check whether wide tables, frozen panes, charts, and hidden rows appear as expected.
Use Cases
Technical Principle
The conversion pipeline reads the uploaded workbook (.xlsx, .xls, or .ods), iterates each sheet's used range, and renders the result into a PDF document on the server. Modern Excel files are OOXML containers (ECMA-376 / ISO/IEC 29500): a .xlsx is a ZIP archive holding xl/worksheets/sheetN.xml for each sheet, xl/styles.xml for cell formatting, xl/sharedStrings.xml for deduplicated text, and [Content_Types].xml + _rels/ for relationship metadata. Legacy .xls files use the BIFF binary record format inside an OLE Compound Document (MS-CFB), and .ods files follow the ODF specification (ISO/IEC 26300) with a similar ZIP+XML layout. Each PDF page uses standard A4 (210 × 297 mm = 595.28 × 841.89 pt at 72 dpi) or US Letter (8.5 × 11 in = 612 × 792 pt) size; landscape orientation simply swaps width and height before layout begins. Unit conversion threads through the entire pipeline. PDF uses the PostScript point (1 pt = 1/72 in = 0.352 778 mm), Excel column widths are expressed in characters of the default font (Calibri 11 by default, approximately 7 px per character at 96 dpi or about 5.25 pt), and CSS pixels assume 96 dpi. Converting a 100-pixel column to PDF points is therefore 100 × (72 / 96) = 75 pt, and a 1-inch print margin is exactly 72 pt. Long strings wrap on whitespace using the active font's metrics, with mid-word breaks as a fallback for unbroken runs (URLs, hashes). When content does not fit a page, the renderer inserts an automatic page break and can repeat header rows, page numbers, and sheet names per page. Font embedding is the main fidelity trap. The output PDF must either embed the font subset used by the workbook (Type 0 CID font with an embedded TrueType program, per PDF spec section 9.6.5) or substitute a fallback at render time. Workbooks authored with Calibri, SimSun, or MS YaHei but rendered on a server without those fonts installed will fall back to Liberation Sans or DejaVu, breaking line-break positions and overflow boundaries. Server-side conversion typically runs LibreOffice in headless mode (`soffice --headless --convert-to pdf input.xlsx --outdir /tmp`), Microsoft Excel COM automation on Windows, or commercial libraries such as Aspose.Cells. Charts defined in the workbook are re-rendered as static vector shapes inside the PDF, formulas show their last-saved cached value rather than recalculating, and merged cells, frozen panes, and hidden rows follow the workbook's print layout settings. Files are uploaded to ToolAct's server-side conversion engine and deleted from the server immediately after the PDF is returned.
- OOXML container: .xlsx is a ZIP holding xl/worksheets/sheetN.xml, xl/styles.xml, xl/sharedStrings.xml under the Open Packaging Convention (ECMA-376 / ISO/IEC 29500). Legacy .xls uses BIFF inside MS-CFB; .ods follows ISO/IEC 26300 ODF.
- Page size: A4 = 210 × 297 mm = 595.28 × 841.89 pt; US Letter = 8.5 × 11 in = 612 × 792 pt; PDF unit is the PostScript point (1 pt = 1/72 in).
- Unit conversion: CSS px → pt = px × 72/96 (e.g. 100 px = 75 pt); 1 in margin = 72 pt; 1 mm ≈ 2.835 pt; Excel column widths in `worksheet['!cols']` are character widths of the default font (Calibri 11 ≈ 7 px ≈ 5.25 pt per character).
- Font fidelity: PDF Type 0 CID-keyed fonts with embedded TrueType subsets (spec section 9.6.5) preserve CJK glyph positioning; missing fonts fall back to Liberation Sans / DejaVu and break line breaks; PDF/A archival (ISO 19005) mandates full embedding.
- Conversion engines: LibreOffice headless (`soffice --headless --convert-to pdf`), Microsoft Excel COM automation on Windows, or commercial libraries such as Aspose.Cells. Charts become static vector shapes; formulas show last-saved cached values, not recalculated.
- Page breaks come from the workbook's print layout: print area, page-break preview, paper size, orientation, and 'Fit to Page' scale all carry through; merged cells, frozen panes, and hidden rows follow the same settings.
- Files are uploaded to ToolAct's server-side conversion engine and deleted immediately after the PDF is returned.
Examples
Convert a financial report workbook
Input: quarterly_report.xlsx (245 KB, 4 sheets, 12 embedded charts)
Output: quarterly_report.pdf (612 KB after conversion)
Sheet layout in the output PDF:
Page 1- 3: Sheet1 'P&L' (1 of 1 sheet rendered across pages)
Page 4- 7: Sheet2 'Balance Sheet' (page break at row 50)
Page 8- 10: Sheet3 'Cash Flow' (page break at row 38)
Page 11-13: Sheet4 'Notes' (long-text wrap enabled)
Charts defined in the workbook (bar, line, pie) are rasterized to
vector shapes inside the PDF, so they print at 300 dpi without
re-rendering. Formulas show their last-saved value, not the
calculation chain - the .xlsx must be saved with calculated values
to display numbers in the PDF.Convert a price quote for client sign-off
Input: quote_acme_2026Q2.xlsx (38 KB, 1 sheet, 24 line items)
Output: quote_acme_2026Q2.pdf (112 KB after conversion)
Conversion settings applied:
Page size: A4 (595.28 x 841.89 pt)
Orientation: Landscape (842 x 595 pt) - swapped width/height to fit 12 columns
Margins: top 72 pt (1 in), bottom 72 pt, left 54 pt, right 54 pt
Scale: 'Fit all columns on one page' (100% -> 84% to fit width)
Result: 24 rows x 12 columns fit cleanly on 2 pages with header
repetition. Sending the PDF instead of the .xlsx freezes the unit
prices and quantities, so the client cannot accidentally edit a
number before signing.Audit the conversion with size and format checks
Workbook 1: monthly_kpi.xlsx (1.2 MB, no images)
Workbook 2: catalog.xlsx (1.4 MB, 200 product photos embedded)
Workbook 3: tiny.xlsx (8 KB, 5 rows)
Result of each conversion:
monthly_kpi.xlsx -> monthly_kpi.pdf (1.5 MB) ratio 1.25x OK
catalog.xlsx -> catalog.pdf (8.7 MB) ratio 6.2x WARN
tiny.xlsx -> tiny.pdf (32 KB) ratio 4.0x OK
The catalog PDF is 6.2x the source because the 200 product images are
re-embedded as JPEG streams inside the PDF. A ratio above ~3x is a
good reason to open the PDF and confirm the file looks correct
before sharing - hidden sheets, large image fills, or parsing
failures usually surface as an unusual size change.FAQ
Does my spreadsheet stay on this device?
No. The file is uploaded to our conversion server, rendered into a PDF there, and sent back as a download. Files are deleted from the server immediately after conversion. Even so, avoid uploading commercially confidential workbooks, salary sheets, or other sensitive numbers as a precaution.
Which spreadsheet formats are accepted?
The upload area accepts .xlsx (Excel 2007+), .xls (Excel 97-2003), and .ods (OpenDocument). Files saved by Numbers, Google Sheets, or WPS work as long as you export to one of those three formats first.
Why does my chart or formula look different in the PDF?
The server renders cells as they were last saved. Formulas show their cached value rather than recalculating, charts are rasterised, and very wide tables can split across pages. Set the print area, scaling, and orientation in Excel before uploading to control how each sheet paginates.
How are page breaks decided?
Page breaks come from the workbook's print layout: print area, page-break preview, paper size, orientation, and the 'Fit to Page' scale all carry through. If a sheet exceeds one page width, the converter usually emits multiple pages rather than shrinking the columns illegibly.
Are hidden sheets, comments, and frozen panes included?
Hidden sheets and hidden rows/columns are typically omitted. Cell comments and notes are not embedded in the PDF. Frozen panes do not repeat across pages; if you need column headers on every page, set them as 'Rows to repeat at top' in Excel before uploading.
Will Chinese, Japanese, or Korean text render correctly?
Yes. The server has CJK fonts installed, so multilingual reports render without missing-glyph squares. If a file uses an exotic custom font that is not on the server, it falls back to a similar one and spacing can shift slightly.
Is there a file size limit?
Very large workbooks (hundreds of MB, thousands of rows of embedded images) may time out or be rejected. If your conversion fails, try removing unused sheets, compressing embedded images, or splitting the workbook before retrying.