Do you get the same error if you use the full path to FONTSET  in your Mapfile?

FONTSET "/Volumes/Data/WebServer/newswc/mapfiles/fonts.list"


On Mon, Aug 26, 2019, at 11:45 PM, Paul Moen wrote:
> I am running into an error after trying Mapserver 7.4.1 on macOS 10.14 
> mojave with the php swig version of mapscript.
> 
> Here is the output from php -i when I am using php_mapscriptng.so
> 
> PHP Version => 7.3.8
> 
> mapscript
> 
> MapServer Version => MapServer version 7.4.1 OUTPUT=PNG OUTPUT=JPEG 
> OUTPUT=KML SUPPORTS=PROJ SUPPORTS=AGG SUPPORTS=FREETYPE SUPPORTS=CAIRO 
> SUPPORTS=ICONV SUPPORTS=WMS_SERVER SUPPORTS=WMS_CLIENT 
> SUPPORTS=WFS_SERVER SUPPORTS=WFS_CLIENT SUPPORTS=WCS_SERVER 
> SUPPORTS=SOS_SERVER SUPPORTS=FASTCGI SUPPORTS=GEOS SUPPORTS=PBF 
> INPUT=JPEG INPUT=POSTGIS INPUT=OGR INPUT=GDAL INPUT=SHAPEFILE
> 
> I have a simple mapfile called test.map as follows.
> 
> MAP
>       NAME TEST
>       EXTENT 1026879.6641881098 54774.288373764844 2999091.3458675575 
> 1331032.7378794178
>       SIZE 978 517
>       MAXSIZE 3072
>       UNITS FEET
>       SHAPEPATH ""
>       IMAGECOLOR 240 240 240
>       IMAGETYPE png
>       CONFIG "MS_ERRORFILE" "stderr"
>       # DEBUG 5
>       SYMBOLSET "symbols.dat"
>       FONTSET "fonts.list"
> 
>       PROJECTION
>               "init=epsg:2266" # ND State Plane - South Zone - NAD83 - feet
>       END
> 
>       LAYER
>               NAME "Counties"
>               STATUS ON
>               TYPE POLYGON
>               DATA counties
>               CLASS
>                       NAME "County Boundaries"
>                       STYLE
>                               WIDTH 4.0
>                               MAXWIDTH 6.0
>                               OUTLINECOLOR 0 0 0
>                       END
>               END
>               
>       END # Counties - Lines
> 
>       LAYER
>               NAME "a_Counties"
>               STATUS ON
>               TYPE POLYGON
>               DATA counties
>               LABELITEM "name_caps"
>               CLASS
>                       NAME "Label"
>                       LABEL
>                         COLOR  150 150 150
>                         OUTLINECOLOR 255 255 255
>                         FONT mon
>                         TYPE TRUETYPE
>                         SIZE 10
>                         POSITION AUTO
>                       END
>               END
>       END
> END 
> 
> I create 3 pngs using 3 methods.
> 
> 1. shp2img -m test.map > shp.png
> 
> For the next 2 I have enable_dl = On in my php.ini file so I can 
> dynamically load the 
> php_mapscript of my choice in the scripts.
> 
> 2. To test php_mapscript, no swig, I use the following in a script 
> called testOrig.php.
> <?php
>       dl('php_mapscript.so');
>       $map= new mapObj('test.map');
>       $name = "orig.png";
>       $img = $map->draw();
>       $img->saveImage($name);
> ?>
> I call with the following,
> php -f testOrig.php
> It outputs the png file named orig.png
> 
> Both methods 1 and 2 output png files that are exactly the same.
> 
> 3. To test php_mapscript via swig, I use the following in a script 
> called testSwig.php.
> 
> <?php
>       dl('php_mapscriptng.so');
>       require('mapscript.php');
>       $map= new mapObj('test.map');
>       $name = "swig.png";
>       $img = $map->draw();
>       $img->save($name);      
> ?>
> I call with the following,
> php -f testSwig.php
> It should output swig.png, but gives the following error.
> 
> msGetFontFace(): General error message. Freetype was unable to load 
> font file 
> "/Volumes/Data/WebServer/newswc/mapfiles/././Montserrat-Regular.ttf" 
> for key "mon"
> PHP Fatal error:  Uncaught Error: Call to a member function save() on 
> null in /Volumes/Data/WebServer/newswc/mapfiles/testSwig.php:7
> Stack trace:
> #0 {main}
>   thrown in /Volumes/Data/WebServer/newswc/mapfiles/testSwig.php on 
> line 7
> 
> Fatal error: Uncaught Error: Call to a member function save() on null 
> in /Volumes/Data/WebServer/newswc/mapfiles/testSwig.php:7
> Stack trace:
> #0 {main}
>   thrown in /Volumes/Data/WebServer/newswc/mapfiles/testSwig.php on 
> line 7
> 
> My fonts.list is a one liner, shown below with the font in the same 
> directory as the mapfile.
> 
> mon   Montserrat-Regular.ttf
> 
> The map draws fine and the png is created if I take out the label.  The 
> map will not work with any truetype font I have tried.  
> How can I get more information regards to the freetype error that only 
> happens with the swig version of mapscript?  
> 
> Thanks,
> 
> 
> 
> _______________________________________________
> mapserver-users mailing list
> mapserver-users@lists.osgeo.org
> https://lists.osgeo.org/mailman/listinfo/mapserver-users
_______________________________________________
mapserver-users mailing list
mapserver-users@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/mapserver-users

Reply via email to