The Meshtastic app for iOS, iPadOS and macOS supports the sharing of a .mbtiles file with the app for offline map support.
There is an open source cross platform mapping program call QGIS
to get a mbtiles out of qgis, start with a small area that you are familiar with. Open qgis, and add a openstreetmap source from the left bar (might be under one of the tile headings). Now you should see something in the main map view. zoom to the area you want.
In the Processing Toolbox (right bar, you may have to show it from the View menu), open Raster Tools > Generate XYZ Tiles (MBTiles)
In Extent, choose Use Map Canvas Extent. This defines the area of the map that will be rendered into the export file Use a zoom level of 12-17. You can play with this later, but thats a good starting point. Note that every increment of maximum zoom will increase the map size 4x. Select JPG if there's aerial/satellite imagery, otherwise just use PNG. That will give the best compression.
Finally choose a location for the output file. Click Run and you should eventually get a file that should play nice in the Meshtastic app.