VitaliWeb Tools

Timetable to Calendar

Recognize schedule entries in images, PDFs or tables and confirm dates before creating an ICS file.

Processed on your deviceFree · No account needed

Recognize printed schedules from images, digital/scanned PDFs or CSV/XLSX tables. Up to 5 images/pages/sheets, 10 MiB per image, 25 MiB per PDF, 12 megapixels per image, 200 event rules and 1,000 occurrences. Local processing. No calendar connection or invitations.

How to use it

  1. Read a printed schedule image, a PDF or a suitable CSV/XLSX table; explicitly load OCR files if needed.
  2. Confirm year, date format, validity dates and time zone, then check recognized cells and event-column mapping.
  3. Correct each event, confirm night shifts and repetitions, and enter dates to exclude; inspect the calendar and list previews.
  4. Confirm the complete occurrence list and create an ICS file to import yourself.

A weekly Monday lesson at 08:00 in Europe/Zurich starts at 07:00 UTC on 23 March 2026 and 06:00 UTC on 30 March. Its local start remains 08:00 across the clock change.

Details & limits

Bounded local OCR/PDF/table recognition. Confirm year, date format, time zone, repeats and exceptions. Review ambiguous times and overnight shifts. No invitations or connected-calendar changes.

How are alternating weeks and clock changes represented?

Choose Every 2 weeks with an explicit first date for each alternating rule. The finite ICS uses recurrence rules and selected exceptions; it may split a rule into several UTC series to preserve local start/end times across clock changes. Nonexistent times block export unless corrected or explicitly excluded, and repeated autumn times require a choice.