The event calendar includes print optimized styling through the print add-on. This needs to be added to the download package or installed separately from a dedicated NPM package.
Print styling is applied when someone prints the page that contains the calendar. In addition to that, you can call the print method on the instance which grabs only the markup of the calendar, places it onto a temporary page and calls the browsers printing function. This is especially useful when you want to add a button to only print the calendar rather than the whole page.
Besides printing, PDF export is possible through the print dialog of the browser.
Demo
By calling the print method, the calendar will open a new window and print its content.
const MY_MODULES = [print];
const [inst, setInst] = React.useState(null);
const printView = () => {
inst.print();
};
<Button onClick={printView}>Print calendar</Button>
<Eventcalendar ref={setInst} modules={MY_MODULES} />

import { print } from '@mobiscroll/print';
import { Button, Eventcalendar, getJson, setOptions } from '@mobiscroll/react';
import { useCallback, useEffect, useState } from 'react';
const MY_MODULES = [print];
setOptions({
locale: ,
theme: ' ',
themeVariant: ' '
});
function App() {
const [myEvents, setEvents] = useState([]);
const [inst, setInst] = useState(null);
const printView = useCallback(() => {
inst.print();
}, [inst]);
useEffect(() => {
getJson(
'https://trial.mobiscroll.com/events/?vers=5',
(events) => {
setEvents(events);
},
'jsonp',
);
}, []);
return (
<>
<Button onClick={printView}>Print calendar</Button>
<Eventcalendar
clickToCreate={ }
dragToCreate={ }
dragToMove={ }
dragToResize={ }
eventDelete={ }
data={myEvents}
ref={setInst}
modules={MY_MODULES}
/>
</>
);
}
export default App;
import { print } from '@mobiscroll/print';
import { Button, Eventcalendar, getJson, MbscCalendarEvent, setOptions } from '@mobiscroll/react';
import { FC, useCallback, useEffect, useState } from 'react';
const MY_MODULES = [print];
setOptions({
locale: ,
theme: ' ',
themeVariant: ' '
});
const App: FC = () => {
const [myEvents, setEvents] = useState<MbscCalendarEvent[]>([]);
const [inst, setInst] = useState<Eventcalendar | null>(null);
useEffect(() => {
getJson(
'https://trial.mobiscroll.com/events/?vers=5',
(events: MbscCalendarEvent[]) => {
setEvents(events);
},
'jsonp',
);
}, []);
const printView = useCallback(() => {
inst!.print();
}, [inst]);
return (
<>
<Button onClick={printView}>Print calendar</Button>
<Eventcalendar
clickToCreate={ }
dragToCreate={ }
dragToMove={ }
dragToResize={ }
eventDelete={ }
data={myEvents}
ref={setInst}
modules={MY_MODULES}
/>
</>
);
};
export default App;