@@ -336,6 +336,73 @@ Napi::Object init(Napi::Env env, Napi::Object exports)
336
336
versions.Set (" cairo" , CAIRO_VERSION_STRING);
337
337
#endif
338
338
exports.Set (" versions" , versions);
339
+
340
+ // supports
341
+ Napi::Object supports = Napi::Object::New (env);
342
+ #ifdef GRID_RENDERER
343
+ supports.Set (" grid" , Napi::Boolean::New (env,true ));
344
+ #else
345
+ supports.Set (" grid" , Napi::Boolean::New (env,false ));
346
+ #endif
347
+
348
+ #ifdef SVG_RENDERER
349
+ supports.Set (" svg" , Napi::Boolean::New (env,true ));
350
+ #else
351
+ supports.Set (" svg" , Napi::Boolean::New (env,false ));
352
+ #endif
353
+
354
+ #if defined(HAVE_CAIRO)
355
+ supports.Set (" cairo" , Napi::Boolean::New (env,true ));
356
+ #ifdef CAIRO_HAS_PDF_SURFACE
357
+ supports.Set (" cairo_pdf" , Napi::Boolean::New (env,true ));
358
+ #else
359
+ supports.Set (" cairo_pdf" , Napi::Boolean::New (env,false ));
360
+ #endif
361
+ #ifdef CAIRO_HAS_SVG_SURFACE
362
+ supports.Set (" cairo_svg" , Napi::Boolean::New (env,true ));
363
+ #else
364
+ supports.Set (" cairo_svg" , Napi::Boolean::New (env,false ));
365
+ #endif
366
+ #else
367
+ supports.Set (" cairo" , Napi::Boolean::New (env,false ));
368
+ #endif
369
+
370
+ #if defined(HAVE_PNG)
371
+ supports.Set (" png" , Napi::Boolean::New (env,true ));
372
+ #else
373
+ supports.Set (" png" , Napi::Boolean::New (env,false ));
374
+ #endif
375
+
376
+ #if defined(HAVE_JPEG)
377
+ supports.Set (" jpeg" , Napi::Boolean::New (env,true ));
378
+ #else
379
+ supports.Set (" jpeg" , Napi::Boolean::New (env,false ));
380
+ #endif
381
+
382
+ #if defined(HAVE_TIFF)
383
+ supports.Set (" tiff" , Napi::Boolean::New (env,true ));
384
+ #else
385
+ supports.Set (" tiff" , Napi::Boolean::New (env,false ));
386
+ #endif
387
+
388
+ #if defined(HAVE_WEBP)
389
+ supports.Set (" webp" , Napi::Boolean::New (env,true ));
390
+ #else
391
+ supports.Set (" webp" , Napi::Boolean::New (env,false ));
392
+ #endif
393
+
394
+ #if defined(MAPNIK_USE_PROJ4)
395
+ supports.Set (" proj4" , Napi::Boolean::New (env,true ));
396
+ #else
397
+ supports.Set (" proj4" , Napi::Boolean::New (env,false ));
398
+ #endif
399
+
400
+ #if defined(MAPNIK_THREADSAFE)
401
+ supports.Set (" threadsafe" , Napi::Boolean::New (env,true ));
402
+ #else
403
+ supports.Set (" threadsafe" , Napi::Boolean::New (env,false ));
404
+ #endif
405
+ exports.Set (" supports" , supports);
339
406
return exports;
340
407
}
341
408
0 commit comments