It's a two-stage solution:
project geo-coords (lat, lon) to a Robinson map (N, E)
transform the map (N, E) to a screen window (row, col)
For stage 1, projection, you can use the ogr2ogr tool.
Gothos explains how to use it for Robinson in particular transform-projections-with-gdal-ogr
The EPSG library is extensive, but doesn’t contain everything, particularly some global and continental map projections. GDAL / OGR can still do the job, but you’ll have to provide the tool with the proper frame of reference since the EPSG library doesn’t have the info. Let’s say we want to project our WGS file to the Robinson Projection, which is not part of EPSG.
First, go back to spatialreference.org and search for Robinson. Its ID code is ESRI 54030 – not part of the EPSG library. Click on the link for the projection to open its window. You’ll be able to look at the projection data in a number of standard file formats. Select OGC_WKT from the list, and it will open the text in a new window, showing you the parameters of that projection. In your browser, go up to file, save as, and save the file as robinson_ogcwkt.txt in the same directory as the shapefile you want to reproject.
Now that you have the projection info stored in the text file, run the following command to make the conversion:
ogr2ogr -t_srs robisnon_ogcwkt.txt world_rob.shp world_wgs.shp
Stage 2, transformation, is much simpler scale and shift. See Help with "projected XY to screen xy" conversion algorithm? for example.
Or you can use the gdal_translate tool. See Re-project raster image from Mercator to Equirectangular