@img/sharp-libvips-dev-wasm32 0.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (475) hide show
  1. package/README.md +35 -0
  2. package/include/aom/aom.h +127 -0
  3. package/include/aom/aom_codec.h +577 -0
  4. package/include/aom/aom_decoder.h +257 -0
  5. package/include/aom/aom_encoder.h +1144 -0
  6. package/include/aom/aom_external_partition.h +452 -0
  7. package/include/aom/aom_frame_buffer.h +84 -0
  8. package/include/aom/aom_image.h +448 -0
  9. package/include/aom/aom_integer.h +68 -0
  10. package/include/aom/aomcx.h +2181 -0
  11. package/include/aom/aomdx.h +604 -0
  12. package/include/cgif.h +80 -0
  13. package/include/expat.h +1064 -0
  14. package/include/expat_config.h +140 -0
  15. package/include/expat_external.h +165 -0
  16. package/include/ffi.h +531 -0
  17. package/include/ffitarget.h +62 -0
  18. package/include/glib-2.0/gio/gaction.h +100 -0
  19. package/include/glib-2.0/gio/gactiongroup.h +163 -0
  20. package/include/glib-2.0/gio/gactiongroupexporter.h +47 -0
  21. package/include/glib-2.0/gio/gactionmap.h +101 -0
  22. package/include/glib-2.0/gio/gappinfo.h +369 -0
  23. package/include/glib-2.0/gio/gapplication.h +257 -0
  24. package/include/glib-2.0/gio/gapplicationcommandline.h +124 -0
  25. package/include/glib-2.0/gio/gasyncinitable.h +132 -0
  26. package/include/glib-2.0/gio/gasyncresult.h +87 -0
  27. package/include/glib-2.0/gio/gbufferedinputstream.h +135 -0
  28. package/include/glib-2.0/gio/gbufferedoutputstream.h +88 -0
  29. package/include/glib-2.0/gio/gbytesicon.h +54 -0
  30. package/include/glib-2.0/gio/gcancellable.h +120 -0
  31. package/include/glib-2.0/gio/gcharsetconverter.h +65 -0
  32. package/include/glib-2.0/gio/gcontenttype.h +84 -0
  33. package/include/glib-2.0/gio/gconverter.h +98 -0
  34. package/include/glib-2.0/gio/gconverterinputstream.h +82 -0
  35. package/include/glib-2.0/gio/gconverteroutputstream.h +82 -0
  36. package/include/glib-2.0/gio/gcredentials.h +87 -0
  37. package/include/glib-2.0/gio/gdatagrambased.h +146 -0
  38. package/include/glib-2.0/gio/gdatainputstream.h +182 -0
  39. package/include/glib-2.0/gio/gdataoutputstream.h +127 -0
  40. package/include/glib-2.0/gio/gdbusactiongroup.h +56 -0
  41. package/include/glib-2.0/gio/gdbusaddress.h +67 -0
  42. package/include/glib-2.0/gio/gdbusauthobserver.h +53 -0
  43. package/include/glib-2.0/gio/gdbusconnection.h +691 -0
  44. package/include/glib-2.0/gio/gdbuserror.h +111 -0
  45. package/include/glib-2.0/gio/gdbusinterface.h +83 -0
  46. package/include/glib-2.0/gio/gdbusinterfaceskeleton.h +129 -0
  47. package/include/glib-2.0/gio/gdbusintrospection.h +327 -0
  48. package/include/glib-2.0/gio/gdbusmenumodel.h +47 -0
  49. package/include/glib-2.0/gio/gdbusmessage.h +204 -0
  50. package/include/glib-2.0/gio/gdbusmethodinvocation.h +136 -0
  51. package/include/glib-2.0/gio/gdbusnameowning.h +117 -0
  52. package/include/glib-2.0/gio/gdbusnamewatching.h +104 -0
  53. package/include/glib-2.0/gio/gdbusobject.h +80 -0
  54. package/include/glib-2.0/gio/gdbusobjectmanager.h +96 -0
  55. package/include/glib-2.0/gio/gdbusobjectmanagerclient.h +148 -0
  56. package/include/glib-2.0/gio/gdbusobjectmanagerserver.h +95 -0
  57. package/include/glib-2.0/gio/gdbusobjectproxy.h +81 -0
  58. package/include/glib-2.0/gio/gdbusobjectskeleton.h +98 -0
  59. package/include/glib-2.0/gio/gdbusproxy.h +220 -0
  60. package/include/glib-2.0/gio/gdbusserver.h +62 -0
  61. package/include/glib-2.0/gio/gdbusutils.h +65 -0
  62. package/include/glib-2.0/gio/gdebugcontroller.h +81 -0
  63. package/include/glib-2.0/gio/gdebugcontrollerdbus.h +71 -0
  64. package/include/glib-2.0/gio/gdrive.h +274 -0
  65. package/include/glib-2.0/gio/gdtlsclientconnection.h +77 -0
  66. package/include/glib-2.0/gio/gdtlsconnection.h +230 -0
  67. package/include/glib-2.0/gio/gdtlsserverconnection.h +71 -0
  68. package/include/glib-2.0/gio/gemblem.h +63 -0
  69. package/include/glib-2.0/gio/gemblemedicon.h +83 -0
  70. package/include/glib-2.0/gio/gfile.h +1359 -0
  71. package/include/glib-2.0/gio/gfileattribute.h +86 -0
  72. package/include/glib-2.0/gio/gfileenumerator.h +154 -0
  73. package/include/glib-2.0/gio/gfileicon.h +59 -0
  74. package/include/glib-2.0/gio/gfileinfo.h +1546 -0
  75. package/include/glib-2.0/gio/gfileinputstream.h +116 -0
  76. package/include/glib-2.0/gio/gfileiostream.h +123 -0
  77. package/include/glib-2.0/gio/gfilemonitor.h +100 -0
  78. package/include/glib-2.0/gio/gfilenamecompleter.h +81 -0
  79. package/include/glib-2.0/gio/gfileoutputstream.h +124 -0
  80. package/include/glib-2.0/gio/gfilterinputstream.h +80 -0
  81. package/include/glib-2.0/gio/gfilteroutputstream.h +80 -0
  82. package/include/glib-2.0/gio/gicon.h +133 -0
  83. package/include/glib-2.0/gio/ginetaddress.h +125 -0
  84. package/include/glib-2.0/gio/ginetaddressmask.h +86 -0
  85. package/include/glib-2.0/gio/ginetsocketaddress.h +80 -0
  86. package/include/glib-2.0/gio/ginitable.h +107 -0
  87. package/include/glib-2.0/gio/ginputstream.h +218 -0
  88. package/include/glib-2.0/gio/gio-autocleanups.h +155 -0
  89. package/include/glib-2.0/gio/gio-visibility.h +952 -0
  90. package/include/glib-2.0/gio/gio.h +186 -0
  91. package/include/glib-2.0/gio/gioenums.h +2149 -0
  92. package/include/glib-2.0/gio/gioenumtypes.h +207 -0
  93. package/include/glib-2.0/gio/gioerror.h +58 -0
  94. package/include/glib-2.0/gio/giomodule.h +199 -0
  95. package/include/glib-2.0/gio/gioscheduler.h +56 -0
  96. package/include/glib-2.0/gio/giostream.h +137 -0
  97. package/include/glib-2.0/gio/giotypes.h +660 -0
  98. package/include/glib-2.0/gio/glistmodel.h +74 -0
  99. package/include/glib-2.0/gio/gliststore.h +97 -0
  100. package/include/glib-2.0/gio/gloadableicon.h +101 -0
  101. package/include/glib-2.0/gio/gmemoryinputstream.h +92 -0
  102. package/include/glib-2.0/gio/gmemorymonitor.h +64 -0
  103. package/include/glib-2.0/gio/gmemoryoutputstream.h +109 -0
  104. package/include/glib-2.0/gio/gmenu.h +184 -0
  105. package/include/glib-2.0/gio/gmenuexporter.h +55 -0
  106. package/include/glib-2.0/gio/gmenumodel.h +307 -0
  107. package/include/glib-2.0/gio/gmount.h +278 -0
  108. package/include/glib-2.0/gio/gmountoperation.h +179 -0
  109. package/include/glib-2.0/gio/gnativesocketaddress.h +67 -0
  110. package/include/glib-2.0/gio/gnativevolumemonitor.h +63 -0
  111. package/include/glib-2.0/gio/gnetworkaddress.h +82 -0
  112. package/include/glib-2.0/gio/gnetworking.h +81 -0
  113. package/include/glib-2.0/gio/gnetworkmonitor.h +101 -0
  114. package/include/glib-2.0/gio/gnetworkservice.h +77 -0
  115. package/include/glib-2.0/gio/gnotification.h +103 -0
  116. package/include/glib-2.0/gio/goutputstream.h +334 -0
  117. package/include/glib-2.0/gio/gpermission.h +129 -0
  118. package/include/glib-2.0/gio/gpollableinputstream.h +106 -0
  119. package/include/glib-2.0/gio/gpollableoutputstream.h +127 -0
  120. package/include/glib-2.0/gio/gpollableutils.h +66 -0
  121. package/include/glib-2.0/gio/gpowerprofilemonitor.h +65 -0
  122. package/include/glib-2.0/gio/gpropertyaction.h +49 -0
  123. package/include/glib-2.0/gio/gproxy.h +130 -0
  124. package/include/glib-2.0/gio/gproxyaddress.h +88 -0
  125. package/include/glib-2.0/gio/gproxyaddressenumerator.h +83 -0
  126. package/include/glib-2.0/gio/gproxyresolver.h +97 -0
  127. package/include/glib-2.0/gio/gremoteactiongroup.h +77 -0
  128. package/include/glib-2.0/gio/gresolver.h +299 -0
  129. package/include/glib-2.0/gio/gresource.h +132 -0
  130. package/include/glib-2.0/gio/gseekable.h +105 -0
  131. package/include/glib-2.0/gio/gsettings.h +347 -0
  132. package/include/glib-2.0/gio/gsettingsbackend.h +176 -0
  133. package/include/glib-2.0/gio/gsettingsschema.h +115 -0
  134. package/include/glib-2.0/gio/gsimpleaction.h +65 -0
  135. package/include/glib-2.0/gio/gsimpleactiongroup.h +99 -0
  136. package/include/glib-2.0/gio/gsimpleasyncresult.h +164 -0
  137. package/include/glib-2.0/gio/gsimpleiostream.h +47 -0
  138. package/include/glib-2.0/gio/gsimplepermission.h +47 -0
  139. package/include/glib-2.0/gio/gsimpleproxyresolver.h +91 -0
  140. package/include/glib-2.0/gio/gsocket.h +330 -0
  141. package/include/glib-2.0/gio/gsocketaddress.h +84 -0
  142. package/include/glib-2.0/gio/gsocketaddressenumerator.h +103 -0
  143. package/include/glib-2.0/gio/gsocketclient.h +199 -0
  144. package/include/glib-2.0/gio/gsocketconnectable.h +83 -0
  145. package/include/glib-2.0/gio/gsocketconnection.h +117 -0
  146. package/include/glib-2.0/gio/gsocketcontrolmessage.h +113 -0
  147. package/include/glib-2.0/gio/gsocketlistener.h +157 -0
  148. package/include/glib-2.0/gio/gsocketservice.h +95 -0
  149. package/include/glib-2.0/gio/gsrvtarget.h +60 -0
  150. package/include/glib-2.0/gio/gsubprocess.h +169 -0
  151. package/include/glib-2.0/gio/gsubprocesslauncher.h +121 -0
  152. package/include/glib-2.0/gio/gtask.h +207 -0
  153. package/include/glib-2.0/gio/gtcpconnection.h +71 -0
  154. package/include/glib-2.0/gio/gtcpwrapperconnection.h +71 -0
  155. package/include/glib-2.0/gio/gtestdbus.h +74 -0
  156. package/include/glib-2.0/gio/gthemedicon.h +70 -0
  157. package/include/glib-2.0/gio/gthreadedsocketservice.h +83 -0
  158. package/include/glib-2.0/gio/gtlsbackend.h +115 -0
  159. package/include/glib-2.0/gio/gtlscertificate.h +125 -0
  160. package/include/glib-2.0/gio/gtlsclientconnection.h +88 -0
  161. package/include/glib-2.0/gio/gtlsconnection.h +214 -0
  162. package/include/glib-2.0/gio/gtlsdatabase.h +249 -0
  163. package/include/glib-2.0/gio/gtlsfiledatabase.h +60 -0
  164. package/include/glib-2.0/gio/gtlsinteraction.h +150 -0
  165. package/include/glib-2.0/gio/gtlspassword.h +121 -0
  166. package/include/glib-2.0/gio/gtlsserverconnection.h +71 -0
  167. package/include/glib-2.0/gio/gunixconnection.h +102 -0
  168. package/include/glib-2.0/gio/gunixcredentialsmessage.h +89 -0
  169. package/include/glib-2.0/gio/gunixfdlist.h +97 -0
  170. package/include/glib-2.0/gio/gunixsocketaddress.h +83 -0
  171. package/include/glib-2.0/gio/gvfs.h +170 -0
  172. package/include/glib-2.0/gio/gvolume.h +255 -0
  173. package/include/glib-2.0/gio/gvolumemonitor.h +156 -0
  174. package/include/glib-2.0/gio/gzlibcompressor.h +64 -0
  175. package/include/glib-2.0/gio/gzlibdecompressor.h +60 -0
  176. package/include/glib-2.0/glib/deprecated/gallocator.h +88 -0
  177. package/include/glib-2.0/glib/deprecated/gcache.h +77 -0
  178. package/include/glib-2.0/glib/deprecated/gcompletion.h +85 -0
  179. package/include/glib-2.0/glib/deprecated/gmain.h +137 -0
  180. package/include/glib-2.0/glib/deprecated/grel.h +107 -0
  181. package/include/glib-2.0/glib/deprecated/gthread.h +295 -0
  182. package/include/glib-2.0/glib/galloca.h +147 -0
  183. package/include/glib-2.0/glib/garray.h +323 -0
  184. package/include/glib-2.0/glib/gasyncqueue.h +126 -0
  185. package/include/glib-2.0/glib/gatomic.h +587 -0
  186. package/include/glib-2.0/glib/gbacktrace.h +74 -0
  187. package/include/glib-2.0/glib/gbase64.h +63 -0
  188. package/include/glib-2.0/glib/gbitlock.h +78 -0
  189. package/include/glib-2.0/glib/gbookmarkfile.h +300 -0
  190. package/include/glib-2.0/glib/gbytes.h +99 -0
  191. package/include/glib-2.0/glib/gcharset.h +49 -0
  192. package/include/glib-2.0/glib/gchecksum.h +106 -0
  193. package/include/glib-2.0/glib/gconvert.h +179 -0
  194. package/include/glib-2.0/glib/gdataset.h +156 -0
  195. package/include/glib-2.0/glib/gdate.h +309 -0
  196. package/include/glib-2.0/glib/gdatetime.h +275 -0
  197. package/include/glib-2.0/glib/gdir.h +54 -0
  198. package/include/glib-2.0/glib/genviron.h +65 -0
  199. package/include/glib-2.0/glib/gerror.h +263 -0
  200. package/include/glib-2.0/glib/gfileutils.h +223 -0
  201. package/include/glib-2.0/glib/ggettext.h +65 -0
  202. package/include/glib-2.0/glib/ghash.h +206 -0
  203. package/include/glib-2.0/glib/ghmac.h +85 -0
  204. package/include/glib-2.0/glib/ghook.h +204 -0
  205. package/include/glib-2.0/glib/ghostutils.h +45 -0
  206. package/include/glib-2.0/glib/gi18n-lib.h +29 -0
  207. package/include/glib-2.0/glib/gi18n.h +34 -0
  208. package/include/glib-2.0/glib/giochannel.h +407 -0
  209. package/include/glib-2.0/glib/gkeyfile.h +332 -0
  210. package/include/glib-2.0/glib/glib-autocleanups.h +105 -0
  211. package/include/glib-2.0/glib/glib-typeof.h +47 -0
  212. package/include/glib-2.0/glib/glib-visibility.h +952 -0
  213. package/include/glib-2.0/glib/glist.h +179 -0
  214. package/include/glib-2.0/glib/gmacros.h +1425 -0
  215. package/include/glib-2.0/glib/gmain.h +862 -0
  216. package/include/glib-2.0/glib/gmappedfile.h +60 -0
  217. package/include/glib-2.0/glib/gmarkup.h +265 -0
  218. package/include/glib-2.0/glib/gmem.h +425 -0
  219. package/include/glib-2.0/glib/gmessages.h +690 -0
  220. package/include/glib-2.0/glib/gnode.h +309 -0
  221. package/include/glib-2.0/glib/goption.h +409 -0
  222. package/include/glib-2.0/glib/gpathbuf.h +90 -0
  223. package/include/glib-2.0/glib/gpattern.h +65 -0
  224. package/include/glib-2.0/glib/gpoll.h +122 -0
  225. package/include/glib-2.0/glib/gprimes.h +52 -0
  226. package/include/glib-2.0/glib/gprintf.h +59 -0
  227. package/include/glib-2.0/glib/gqsort.h +47 -0
  228. package/include/glib-2.0/glib/gquark.h +70 -0
  229. package/include/glib-2.0/glib/gqueue.h +205 -0
  230. package/include/glib-2.0/glib/grand.h +101 -0
  231. package/include/glib-2.0/glib/grcbox.h +91 -0
  232. package/include/glib-2.0/glib/grefcount.h +179 -0
  233. package/include/glib-2.0/glib/grefstring.h +59 -0
  234. package/include/glib-2.0/glib/gscanner.h +301 -0
  235. package/include/glib-2.0/glib/gsequence.h +175 -0
  236. package/include/glib-2.0/glib/gshell.h +59 -0
  237. package/include/glib-2.0/glib/gslice.h +117 -0
  238. package/include/glib-2.0/glib/gslist.h +166 -0
  239. package/include/glib-2.0/glib/gspawn.h +323 -0
  240. package/include/glib-2.0/glib/gstdio.h +231 -0
  241. package/include/glib-2.0/glib/gstrfuncs.h +504 -0
  242. package/include/glib-2.0/glib/gstring.h +296 -0
  243. package/include/glib-2.0/glib/gstringchunk.h +59 -0
  244. package/include/glib-2.0/glib/gstrvbuilder.h +69 -0
  245. package/include/glib-2.0/glib/gtestutils.h +763 -0
  246. package/include/glib-2.0/glib/gthread.h +603 -0
  247. package/include/glib-2.0/glib/gthreadpool.h +105 -0
  248. package/include/glib-2.0/glib/gtimer.h +80 -0
  249. package/include/glib-2.0/glib/gtimezone.h +98 -0
  250. package/include/glib-2.0/glib/gtrashstack.h +60 -0
  251. package/include/glib-2.0/glib/gtree.h +181 -0
  252. package/include/glib-2.0/glib/gtypes.h +591 -0
  253. package/include/glib-2.0/glib/gunicode.h +974 -0
  254. package/include/glib-2.0/glib/guri.h +420 -0
  255. package/include/glib-2.0/glib/gutils.h +479 -0
  256. package/include/glib-2.0/glib/guuid.h +42 -0
  257. package/include/glib-2.0/glib/gvariant.h +541 -0
  258. package/include/glib-2.0/glib/gvarianttype.h +384 -0
  259. package/include/glib-2.0/glib/gversion.h +57 -0
  260. package/include/glib-2.0/glib/gversionmacros.h +490 -0
  261. package/include/glib-2.0/glib/gwin32.h +142 -0
  262. package/include/glib-2.0/glib-object.h +46 -0
  263. package/include/glib-2.0/glib-unix.h +125 -0
  264. package/include/glib-2.0/glib.h +121 -0
  265. package/include/glib-2.0/gmodule/gmodule-visibility.h +952 -0
  266. package/include/glib-2.0/gmodule.h +147 -0
  267. package/include/glib-2.0/gobject/gbinding.h +156 -0
  268. package/include/glib-2.0/gobject/gbindinggroup.h +85 -0
  269. package/include/glib-2.0/gobject/gboxed.h +124 -0
  270. package/include/glib-2.0/gobject/gclosure.h +323 -0
  271. package/include/glib-2.0/gobject/genums.h +381 -0
  272. package/include/glib-2.0/gobject/glib-enumtypes.h +25 -0
  273. package/include/glib-2.0/gobject/glib-types.h +400 -0
  274. package/include/glib-2.0/gobject/gmarshal.h +434 -0
  275. package/include/glib-2.0/gobject/gobject-autocleanups.h +33 -0
  276. package/include/glib-2.0/gobject/gobject-visibility.h +952 -0
  277. package/include/glib-2.0/gobject/gobject.h +953 -0
  278. package/include/glib-2.0/gobject/gobjectnotifyqueue.c +199 -0
  279. package/include/glib-2.0/gobject/gparam.h +477 -0
  280. package/include/glib-2.0/gobject/gparamspecs.h +1151 -0
  281. package/include/glib-2.0/gobject/gsignal.h +647 -0
  282. package/include/glib-2.0/gobject/gsignalgroup.h +98 -0
  283. package/include/glib-2.0/gobject/gsourceclosure.h +40 -0
  284. package/include/glib-2.0/gobject/gtype.h +2715 -0
  285. package/include/glib-2.0/gobject/gtypemodule.h +302 -0
  286. package/include/glib-2.0/gobject/gtypeplugin.h +136 -0
  287. package/include/glib-2.0/gobject/gvalue.h +212 -0
  288. package/include/glib-2.0/gobject/gvaluearray.h +106 -0
  289. package/include/glib-2.0/gobject/gvaluecollector.h +290 -0
  290. package/include/glib-2.0/gobject/gvaluetypes.h +318 -0
  291. package/include/hwy/aligned_allocator.h +211 -0
  292. package/include/hwy/base.h +1517 -0
  293. package/include/hwy/cache_control.h +108 -0
  294. package/include/hwy/detect_compiler_arch.h +281 -0
  295. package/include/hwy/detect_targets.h +644 -0
  296. package/include/hwy/foreach_target.h +340 -0
  297. package/include/hwy/highway.h +435 -0
  298. package/include/hwy/highway_export.h +74 -0
  299. package/include/hwy/nanobenchmark.h +171 -0
  300. package/include/hwy/ops/arm_neon-inl.h +8913 -0
  301. package/include/hwy/ops/arm_sve-inl.h +5105 -0
  302. package/include/hwy/ops/emu128-inl.h +2811 -0
  303. package/include/hwy/ops/generic_ops-inl.h +4745 -0
  304. package/include/hwy/ops/ppc_vsx-inl.h +5716 -0
  305. package/include/hwy/ops/rvv-inl.h +5070 -0
  306. package/include/hwy/ops/scalar-inl.h +1995 -0
  307. package/include/hwy/ops/set_macros-inl.h +578 -0
  308. package/include/hwy/ops/shared-inl.h +539 -0
  309. package/include/hwy/ops/tuple-inl.h +125 -0
  310. package/include/hwy/ops/wasm_128-inl.h +5917 -0
  311. package/include/hwy/ops/x86_128-inl.h +11173 -0
  312. package/include/hwy/ops/x86_256-inl.h +7529 -0
  313. package/include/hwy/ops/x86_512-inl.h +6849 -0
  314. package/include/hwy/per_target.h +44 -0
  315. package/include/hwy/print-inl.h +62 -0
  316. package/include/hwy/print.h +75 -0
  317. package/include/hwy/robust_statistics.h +148 -0
  318. package/include/hwy/targets.h +338 -0
  319. package/include/hwy/timer-inl.h +200 -0
  320. package/include/hwy/timer.h +55 -0
  321. package/include/index.js +1 -0
  322. package/include/jconfig.h +37 -0
  323. package/include/jerror.h +335 -0
  324. package/include/jmorecfg.h +382 -0
  325. package/include/jpeglib.h +1211 -0
  326. package/include/lcms2.h +1958 -0
  327. package/include/lcms2_plugin.h +700 -0
  328. package/include/libexif/_stdint.h +2 -0
  329. package/include/libexif/exif-byte-order.h +48 -0
  330. package/include/libexif/exif-content.h +181 -0
  331. package/include/libexif/exif-data-type.h +46 -0
  332. package/include/libexif/exif-data.h +267 -0
  333. package/include/libexif/exif-entry.h +186 -0
  334. package/include/libexif/exif-format.h +65 -0
  335. package/include/libexif/exif-ifd.h +51 -0
  336. package/include/libexif/exif-loader.h +128 -0
  337. package/include/libexif/exif-log.h +116 -0
  338. package/include/libexif/exif-mem.h +91 -0
  339. package/include/libexif/exif-mnote-data.h +122 -0
  340. package/include/libexif/exif-tag.h +307 -0
  341. package/include/libexif/exif-utils.h +194 -0
  342. package/include/libheif/heif.h +2169 -0
  343. package/include/libheif/heif_cxx.h +1362 -0
  344. package/include/libheif/heif_plugin.h +306 -0
  345. package/include/libheif/heif_properties.h +138 -0
  346. package/include/libheif/heif_regions.h +866 -0
  347. package/include/libheif/heif_version.h +38 -0
  348. package/include/libimagequant.h +111 -0
  349. package/include/resvg.h +491 -0
  350. package/include/spng.h +537 -0
  351. package/include/tiff.h +899 -0
  352. package/include/tiffconf.h +145 -0
  353. package/include/tiffio.h +653 -0
  354. package/include/tiffvers.h +36 -0
  355. package/include/vips/VConnection8.h +144 -0
  356. package/include/vips/VError8.h +79 -0
  357. package/include/vips/VImage8.h +6329 -0
  358. package/include/vips/VInterpolate8.h +74 -0
  359. package/include/vips/VRegion8.h +154 -0
  360. package/include/vips/arithmetic.h +571 -0
  361. package/include/vips/basic.h +113 -0
  362. package/include/vips/buf.h +120 -0
  363. package/include/vips/colour.h +306 -0
  364. package/include/vips/connection.h +567 -0
  365. package/include/vips/conversion.h +357 -0
  366. package/include/vips/convolution.h +101 -0
  367. package/include/vips/create.h +161 -0
  368. package/include/vips/dbuf.h +101 -0
  369. package/include/vips/debug.h +106 -0
  370. package/include/vips/draw.h +113 -0
  371. package/include/vips/enumtypes.h +184 -0
  372. package/include/vips/error.h +142 -0
  373. package/include/vips/foreign.h +1033 -0
  374. package/include/vips/format.h +135 -0
  375. package/include/vips/freqfilt.h +64 -0
  376. package/include/vips/gate.h +90 -0
  377. package/include/vips/generate.h +92 -0
  378. package/include/vips/header.h +322 -0
  379. package/include/vips/histogram.h +85 -0
  380. package/include/vips/image.h +605 -0
  381. package/include/vips/interpolate.h +140 -0
  382. package/include/vips/memory.h +105 -0
  383. package/include/vips/morphology.h +73 -0
  384. package/include/vips/mosaicing.h +79 -0
  385. package/include/vips/object.h +720 -0
  386. package/include/vips/operation.h +183 -0
  387. package/include/vips/private.h +225 -0
  388. package/include/vips/rect.h +80 -0
  389. package/include/vips/region.h +238 -0
  390. package/include/vips/resample.h +123 -0
  391. package/include/vips/sbuf.h +143 -0
  392. package/include/vips/semaphore.h +77 -0
  393. package/include/vips/thread.h +75 -0
  394. package/include/vips/threadpool.h +159 -0
  395. package/include/vips/transform.h +89 -0
  396. package/include/vips/type.h +310 -0
  397. package/include/vips/util.h +451 -0
  398. package/include/vips/vector.h +63 -0
  399. package/include/vips/version.h +26 -0
  400. package/include/vips/vips.h +195 -0
  401. package/include/vips/vips8 +60 -0
  402. package/include/webp/decode.h +504 -0
  403. package/include/webp/demux.h +363 -0
  404. package/include/webp/encode.h +552 -0
  405. package/include/webp/mux.h +530 -0
  406. package/include/webp/mux_types.h +98 -0
  407. package/include/webp/sharpyuv/sharpyuv.h +103 -0
  408. package/include/webp/sharpyuv/sharpyuv_csp.h +60 -0
  409. package/include/webp/types.h +72 -0
  410. package/include/zconf.h +203 -0
  411. package/include/zlib.h +1859 -0
  412. package/include/zlib_name_mangling.h +8 -0
  413. package/lib/glib-2.0/include/glibconfig.h +220 -0
  414. package/lib/index.js +1 -0
  415. package/lib/libaom.a +0 -0
  416. package/lib/libcgif.a +0 -0
  417. package/lib/libexif.a +0 -0
  418. package/lib/libexif.la +41 -0
  419. package/lib/libexpat.a +0 -0
  420. package/lib/libexpat.la +41 -0
  421. package/lib/libffi.a +0 -0
  422. package/lib/libffi.la +41 -0
  423. package/lib/libgio-2.0.a +0 -0
  424. package/lib/libglib-2.0.a +0 -0
  425. package/lib/libgmodule-2.0.a +0 -0
  426. package/lib/libgobject-2.0.a +0 -0
  427. package/lib/libgthread-2.0.a +0 -0
  428. package/lib/libheif.a +0 -0
  429. package/lib/libhwy.a +0 -0
  430. package/lib/libimagequant.a +0 -0
  431. package/lib/libjpeg.a +0 -0
  432. package/lib/liblcms2.a +0 -0
  433. package/lib/libresvg.a +0 -0
  434. package/lib/libsharpyuv.a +0 -0
  435. package/lib/libsharpyuv.la +41 -0
  436. package/lib/libspng.a +0 -0
  437. package/lib/libtiff.a +0 -0
  438. package/lib/libtiff.la +41 -0
  439. package/lib/libvips-cpp.a +0 -0
  440. package/lib/libvips.a +0 -0
  441. package/lib/libwebp.a +0 -0
  442. package/lib/libwebp.la +41 -0
  443. package/lib/libwebpdemux.a +0 -0
  444. package/lib/libwebpdemux.la +41 -0
  445. package/lib/libwebpmux.a +0 -0
  446. package/lib/libwebpmux.la +41 -0
  447. package/lib/libz.a +0 -0
  448. package/lib/pkgconfig/aom.pc +14 -0
  449. package/lib/pkgconfig/cgif.pc +9 -0
  450. package/lib/pkgconfig/expat.pc +12 -0
  451. package/lib/pkgconfig/gio-2.0.pc +24 -0
  452. package/lib/pkgconfig/glib-2.0.pc +16 -0
  453. package/lib/pkgconfig/gmodule-2.0.pc +12 -0
  454. package/lib/pkgconfig/gmodule-export-2.0.pc +12 -0
  455. package/lib/pkgconfig/gmodule-no-export-2.0.pc +12 -0
  456. package/lib/pkgconfig/gobject-2.0.pc +10 -0
  457. package/lib/pkgconfig/gthread-2.0.pc +10 -0
  458. package/lib/pkgconfig/imagequant.pc +9 -0
  459. package/lib/pkgconfig/lcms2.pc +9 -0
  460. package/lib/pkgconfig/libexif.pc +12 -0
  461. package/lib/pkgconfig/libffi.pc +11 -0
  462. package/lib/pkgconfig/libheif.pc +23 -0
  463. package/lib/pkgconfig/libhwy.pc +10 -0
  464. package/lib/pkgconfig/libjpeg.pc +10 -0
  465. package/lib/pkgconfig/libsharpyuv.pc +11 -0
  466. package/lib/pkgconfig/libtiff-4.pc +12 -0
  467. package/lib/pkgconfig/libwebp.pc +12 -0
  468. package/lib/pkgconfig/libwebpdemux.pc +11 -0
  469. package/lib/pkgconfig/libwebpmux.pc +12 -0
  470. package/lib/pkgconfig/spng.pc +10 -0
  471. package/lib/pkgconfig/vips-cpp.pc +10 -0
  472. package/lib/pkgconfig/vips.pc +10 -0
  473. package/lib/pkgconfig/zlib.pc +14 -0
  474. package/package.json +31 -0
  475. package/versions.json +19 -0
@@ -0,0 +1,38 @@
1
+ /*
2
+ * HEIF codec.
3
+ * Copyright (c) 2017 Dirk Farin <dirk.farin@gmail.com>
4
+ *
5
+ * This file is part of libheif.
6
+ *
7
+ * libheif is free software: you can redistribute it and/or modify
8
+ * it under the terms of the GNU Lesser General Public License as
9
+ * published by the Free Software Foundation, either version 3 of
10
+ * the License, or (at your option) any later version.
11
+ *
12
+ * libheif is distributed in the hope that it will be useful,
13
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
14
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15
+ * GNU Lesser General Public License for more details.
16
+ *
17
+ * You should have received a copy of the GNU Lesser General Public License
18
+ * along with libheif. If not, see <http://www.gnu.org/licenses/>.
19
+ */
20
+
21
+ /* heif_version.h
22
+ *
23
+ * This file was automatically generated when libheif was built.
24
+ *
25
+ * DO NOT EDIT THIS FILE.
26
+ */
27
+ #ifndef LIBHEIF_HEIF_VERSION_H
28
+ #define LIBHEIF_HEIF_VERSION_H
29
+
30
+ /* Numeric representation of the version */
31
+ #define LIBHEIF_NUMERIC_VERSION ((1<<24) | (17<<16) | (2<<8) | 0)
32
+
33
+ /* Version string */
34
+ #define LIBHEIF_VERSION "1.17.2"
35
+
36
+ #define LIBHEIF_PLUGIN_DIRECTORY "/src/build/target/lib/libheif"
37
+
38
+ #endif // LIBHEIF_HEIF_VERSION_H
@@ -0,0 +1,111 @@
1
+ /*
2
+ * http://pngquant.org
3
+ */
4
+
5
+ #ifndef LIBIMAGEQUANT_H
6
+ #define LIBIMAGEQUANT_H
7
+
8
+ #ifndef LIQ_EXPORT
9
+ #define LIQ_EXPORT extern
10
+ #endif
11
+
12
+ #define LIQ_VERSION 20401
13
+ #define LIQ_VERSION_STRING "2.4.1"
14
+
15
+ #ifndef LIQ_PRIVATE
16
+ #if defined(__GNUC__) || defined (__llvm__)
17
+ #define LIQ_PRIVATE __attribute__((visibility("hidden")))
18
+ #else
19
+ #define LIQ_PRIVATE
20
+ #endif
21
+ #endif
22
+
23
+ #ifdef __cplusplus
24
+ extern "C" {
25
+ #endif
26
+
27
+ #include <stddef.h>
28
+
29
+ typedef struct liq_attr liq_attr;
30
+ typedef struct liq_image liq_image;
31
+ typedef struct liq_result liq_result;
32
+
33
+ typedef struct liq_color {
34
+ unsigned char r, g, b, a;
35
+ } liq_color;
36
+
37
+ typedef struct liq_palette {
38
+ unsigned int count;
39
+ liq_color entries[256];
40
+ } liq_palette;
41
+
42
+ typedef enum liq_error {
43
+ LIQ_OK = 0,
44
+ LIQ_QUALITY_TOO_LOW = 99,
45
+ LIQ_VALUE_OUT_OF_RANGE = 100,
46
+ LIQ_OUT_OF_MEMORY,
47
+ LIQ_NOT_READY,
48
+ LIQ_BITMAP_NOT_AVAILABLE,
49
+ LIQ_BUFFER_TOO_SMALL,
50
+ LIQ_INVALID_POINTER,
51
+ } liq_error;
52
+
53
+ enum liq_ownership {LIQ_OWN_ROWS=4, LIQ_OWN_PIXELS=8};
54
+
55
+ LIQ_EXPORT liq_attr* liq_attr_create(void);
56
+ LIQ_EXPORT liq_attr* liq_attr_create_with_allocator(void* (*malloc)(size_t), void (*free)(void*));
57
+ LIQ_EXPORT liq_attr* liq_attr_copy(liq_attr *orig);
58
+ LIQ_EXPORT void liq_attr_destroy(liq_attr *attr);
59
+
60
+ LIQ_EXPORT liq_error liq_set_max_colors(liq_attr* attr, int colors);
61
+ LIQ_EXPORT int liq_get_max_colors(const liq_attr* attr);
62
+ LIQ_EXPORT liq_error liq_set_speed(liq_attr* attr, int speed);
63
+ LIQ_EXPORT int liq_get_speed(const liq_attr* attr);
64
+ LIQ_EXPORT liq_error liq_set_min_opacity(liq_attr* attr, int min);
65
+ LIQ_EXPORT int liq_get_min_opacity(const liq_attr* attr);
66
+ LIQ_EXPORT liq_error liq_set_min_posterization(liq_attr* attr, int bits);
67
+ LIQ_EXPORT int liq_get_min_posterization(const liq_attr* attr);
68
+ LIQ_EXPORT liq_error liq_set_quality(liq_attr* attr, int minimum, int maximum);
69
+ LIQ_EXPORT int liq_get_min_quality(const liq_attr* attr);
70
+ LIQ_EXPORT int liq_get_max_quality(const liq_attr* attr);
71
+ LIQ_EXPORT void liq_set_last_index_transparent(liq_attr* attr, int is_last);
72
+
73
+ typedef void liq_log_callback_function(const liq_attr*, const char *message, void* user_info);
74
+ typedef void liq_log_flush_callback_function(const liq_attr*, void* user_info);
75
+ LIQ_EXPORT void liq_set_log_callback(liq_attr*, liq_log_callback_function*, void* user_info);
76
+ LIQ_EXPORT void liq_set_log_flush_callback(liq_attr*, liq_log_flush_callback_function*, void* user_info);
77
+
78
+ LIQ_EXPORT liq_image *liq_image_create_rgba_rows(liq_attr *attr, void* rows[], int width, int height, double gamma);
79
+ LIQ_EXPORT liq_image *liq_image_create_rgba(liq_attr *attr, void* bitmap, int width, int height, double gamma);
80
+
81
+ typedef void liq_image_get_rgba_row_callback(liq_color row_out[], int row, int width, void* user_info);
82
+ LIQ_EXPORT liq_image *liq_image_create_custom(liq_attr *attr, liq_image_get_rgba_row_callback *row_callback, void* user_info, int width, int height, double gamma);
83
+
84
+ LIQ_EXPORT liq_error liq_image_set_memory_ownership(liq_image *image, int ownership_flags);
85
+ LIQ_EXPORT liq_error liq_image_add_fixed_color(liq_image *img, liq_color color);
86
+ LIQ_EXPORT int liq_image_get_width(const liq_image *img);
87
+ LIQ_EXPORT int liq_image_get_height(const liq_image *img);
88
+ LIQ_EXPORT void liq_image_destroy(liq_image *img);
89
+
90
+ LIQ_EXPORT liq_result *liq_quantize_image(liq_attr *options, liq_image *input_image);
91
+ LIQ_EXPORT liq_error liq_image_quantize(liq_image *const input_image, liq_attr *const options, liq_result **result);
92
+
93
+ LIQ_EXPORT liq_error liq_set_dithering_level(liq_result *res, float dither_level);
94
+ LIQ_EXPORT liq_error liq_set_output_gamma(liq_result* res, double gamma);
95
+ LIQ_EXPORT double liq_get_output_gamma(const liq_result *result);
96
+
97
+ LIQ_EXPORT const liq_palette *liq_get_palette(liq_result *result);
98
+
99
+ LIQ_EXPORT liq_error liq_write_remapped_image(liq_result *result, liq_image *input_image, void *buffer, size_t buffer_size);
100
+ LIQ_EXPORT liq_error liq_write_remapped_image_rows(liq_result *result, liq_image *input_image, unsigned char **row_pointers);
101
+
102
+ LIQ_EXPORT double liq_get_quantization_error(liq_result *result);
103
+ LIQ_EXPORT int liq_get_quantization_quality(liq_result *result);
104
+
105
+ LIQ_EXPORT void liq_result_destroy(liq_result *);
106
+
107
+ #ifdef __cplusplus
108
+ }
109
+ #endif
110
+
111
+ #endif
@@ -0,0 +1,491 @@
1
+ /*
2
+ * This Source Code Form is subject to the terms of the Mozilla Public
3
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
4
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
5
+ */
6
+
7
+ /**
8
+ * @file resvg.h
9
+ *
10
+ * resvg C API
11
+ */
12
+
13
+ #ifndef RESVG_H
14
+ #define RESVG_H
15
+
16
+ #include <stdbool.h>
17
+ #include <stdint.h>
18
+
19
+ #define RESVG_MAJOR_VERSION 0
20
+ #define RESVG_MINOR_VERSION 36
21
+ #define RESVG_PATCH_VERSION 0
22
+ #define RESVG_VERSION "0.36.0"
23
+
24
+ /**
25
+ * @brief List of possible errors.
26
+ */
27
+ typedef enum {
28
+ /**
29
+ * Everything is ok.
30
+ */
31
+ RESVG_OK = 0,
32
+ /**
33
+ * Only UTF-8 content are supported.
34
+ */
35
+ RESVG_ERROR_NOT_AN_UTF8_STR,
36
+ /**
37
+ * Failed to open the provided file.
38
+ */
39
+ RESVG_ERROR_FILE_OPEN_FAILED,
40
+ /**
41
+ * Compressed SVG must use the GZip algorithm.
42
+ */
43
+ RESVG_ERROR_MALFORMED_GZIP,
44
+ /**
45
+ * We do not allow SVG with more than 1_000_000 elements for security reasons.
46
+ */
47
+ RESVG_ERROR_ELEMENTS_LIMIT_REACHED,
48
+ /**
49
+ * SVG doesn't have a valid size.
50
+ *
51
+ * Occurs when width and/or height are <= 0.
52
+ *
53
+ * Also occurs if width, height and viewBox are not set.
54
+ */
55
+ RESVG_ERROR_INVALID_SIZE,
56
+ /**
57
+ * Failed to parse an SVG data.
58
+ */
59
+ RESVG_ERROR_PARSING_FAILED,
60
+ } resvg_error;
61
+
62
+ /**
63
+ * @brief A image rendering method.
64
+ */
65
+ typedef enum {
66
+ RESVG_IMAGE_RENDERING_OPTIMIZE_QUALITY,
67
+ RESVG_IMAGE_RENDERING_OPTIMIZE_SPEED,
68
+ } resvg_image_rendering;
69
+
70
+ /**
71
+ * @brief A shape rendering method.
72
+ */
73
+ typedef enum {
74
+ RESVG_SHAPE_RENDERING_OPTIMIZE_SPEED,
75
+ RESVG_SHAPE_RENDERING_CRISP_EDGES,
76
+ RESVG_SHAPE_RENDERING_GEOMETRIC_PRECISION,
77
+ } resvg_shape_rendering;
78
+
79
+ /**
80
+ * @brief A text rendering method.
81
+ */
82
+ typedef enum {
83
+ RESVG_TEXT_RENDERING_OPTIMIZE_SPEED,
84
+ RESVG_TEXT_RENDERING_OPTIMIZE_LEGIBILITY,
85
+ RESVG_TEXT_RENDERING_GEOMETRIC_PRECISION,
86
+ } resvg_text_rendering;
87
+
88
+ /**
89
+ * @brief An SVG to #resvg_render_tree conversion options.
90
+ *
91
+ * Also, contains a fonts database used during text to path conversion.
92
+ * The database is empty by default.
93
+ */
94
+ typedef struct resvg_options resvg_options;
95
+
96
+ /**
97
+ * @brief An opaque pointer to the rendering tree.
98
+ */
99
+ typedef struct resvg_render_tree resvg_render_tree;
100
+
101
+ /**
102
+ * @brief A 2D transform representation.
103
+ */
104
+ typedef struct {
105
+ float a;
106
+ float b;
107
+ float c;
108
+ float d;
109
+ float e;
110
+ float f;
111
+ } resvg_transform;
112
+
113
+ /**
114
+ * @brief A size representation.
115
+ */
116
+ typedef struct {
117
+ float width;
118
+ float height;
119
+ } resvg_size;
120
+
121
+ /**
122
+ * @brief A rectangle representation.
123
+ */
124
+ typedef struct {
125
+ float x;
126
+ float y;
127
+ float width;
128
+ float height;
129
+ } resvg_rect;
130
+
131
+ #ifdef __cplusplus
132
+ extern "C" {
133
+ #endif // __cplusplus
134
+
135
+ /**
136
+ * @brief Creates an identity transform.
137
+ */
138
+ resvg_transform resvg_transform_identity(void);
139
+
140
+ /**
141
+ * @brief Initializes the library log.
142
+ *
143
+ * Use it if you want to see any warnings.
144
+ *
145
+ * Must be called only once.
146
+ *
147
+ * All warnings will be printed to the `stderr`.
148
+ */
149
+ void resvg_init_log(void);
150
+
151
+ /**
152
+ * @brief Creates a new #resvg_options object.
153
+ *
154
+ * Should be destroyed via #resvg_options_destroy.
155
+ */
156
+ resvg_options *resvg_options_create(void);
157
+
158
+ /**
159
+ * @brief Sets a directory that will be used during relative paths resolving.
160
+ *
161
+ * Expected to be the same as the directory that contains the SVG file,
162
+ * but can be set to any.
163
+ *
164
+ * Must be UTF-8. Can be set to NULL.
165
+ *
166
+ * Default: NULL
167
+ */
168
+ void resvg_options_set_resources_dir(resvg_options *opt, const char *path);
169
+
170
+ /**
171
+ * @brief Sets the target DPI.
172
+ *
173
+ * Impact units conversion.
174
+ *
175
+ * Default: 96
176
+ */
177
+ void resvg_options_set_dpi(resvg_options *opt, float dpi);
178
+
179
+ /**
180
+ * @brief Sets the default font family.
181
+ *
182
+ * Will be used when no `font-family` attribute is set in the SVG.
183
+ *
184
+ * Must be UTF-8. NULL is not allowed.
185
+ *
186
+ * Default: Times New Roman
187
+ */
188
+ void resvg_options_set_font_family(resvg_options *opt, const char *family);
189
+
190
+ /**
191
+ * @brief Sets the default font size.
192
+ *
193
+ * Will be used when no `font-size` attribute is set in the SVG.
194
+ *
195
+ * Default: 12
196
+ */
197
+ void resvg_options_set_font_size(resvg_options *opt, float size);
198
+
199
+ /**
200
+ * @brief Sets the `serif` font family.
201
+ *
202
+ * Must be UTF-8. NULL is not allowed.
203
+ *
204
+ * Has no effect when the `text` feature is not enabled.
205
+ *
206
+ * Default: Times New Roman
207
+ */
208
+ void resvg_options_set_serif_family(resvg_options *opt, const char *family);
209
+
210
+ /**
211
+ * @brief Sets the `sans-serif` font family.
212
+ *
213
+ * Must be UTF-8. NULL is not allowed.
214
+ *
215
+ * Has no effect when the `text` feature is not enabled.
216
+ *
217
+ * Default: Arial
218
+ */
219
+ void resvg_options_set_sans_serif_family(resvg_options *opt, const char *family);
220
+
221
+ /**
222
+ * @brief Sets the `cursive` font family.
223
+ *
224
+ * Must be UTF-8. NULL is not allowed.
225
+ *
226
+ * Has no effect when the `text` feature is not enabled.
227
+ *
228
+ * Default: Comic Sans MS
229
+ */
230
+ void resvg_options_set_cursive_family(resvg_options *opt, const char *family);
231
+
232
+ /**
233
+ * @brief Sets the `fantasy` font family.
234
+ *
235
+ * Must be UTF-8. NULL is not allowed.
236
+ *
237
+ * Has no effect when the `text` feature is not enabled.
238
+ *
239
+ * Default: Papyrus on macOS, Impact on other OS'es
240
+ */
241
+ void resvg_options_set_fantasy_family(resvg_options *opt, const char *family);
242
+
243
+ /**
244
+ * @brief Sets the `monospace` font family.
245
+ *
246
+ * Must be UTF-8. NULL is not allowed.
247
+ *
248
+ * Has no effect when the `text` feature is not enabled.
249
+ *
250
+ * Default: Courier New
251
+ */
252
+ void resvg_options_set_monospace_family(resvg_options *opt, const char *family);
253
+
254
+ /**
255
+ * @brief Sets a comma-separated list of languages.
256
+ *
257
+ * Will be used to resolve a `systemLanguage` conditional attribute.
258
+ *
259
+ * Example: en,en-US.
260
+ *
261
+ * Must be UTF-8. Can be NULL.
262
+ *
263
+ * Default: en
264
+ */
265
+ void resvg_options_set_languages(resvg_options *opt, const char *languages);
266
+
267
+ /**
268
+ * @brief Sets the default shape rendering method.
269
+ *
270
+ * Will be used when an SVG element's `shape-rendering` property is set to `auto`.
271
+ *
272
+ * Default: `RESVG_SHAPE_RENDERING_GEOMETRIC_PRECISION`
273
+ */
274
+ void resvg_options_set_shape_rendering_mode(resvg_options *opt, resvg_shape_rendering mode);
275
+
276
+ /**
277
+ * @brief Sets the default text rendering method.
278
+ *
279
+ * Will be used when an SVG element's `text-rendering` property is set to `auto`.
280
+ *
281
+ * Default: `RESVG_TEXT_RENDERING_OPTIMIZE_LEGIBILITY`
282
+ */
283
+ void resvg_options_set_text_rendering_mode(resvg_options *opt, resvg_text_rendering mode);
284
+
285
+ /**
286
+ * @brief Sets the default image rendering method.
287
+ *
288
+ * Will be used when an SVG element's `image-rendering` property is set to `auto`.
289
+ *
290
+ * Default: `RESVG_IMAGE_RENDERING_OPTIMIZE_QUALITY`
291
+ */
292
+ void resvg_options_set_image_rendering_mode(resvg_options *opt, resvg_image_rendering mode);
293
+
294
+ /**
295
+ * @brief Loads a font data into the internal fonts database.
296
+ *
297
+ * Prints a warning into the log when the data is not a valid TrueType font.
298
+ *
299
+ * Has no effect when the `text` feature is not enabled.
300
+ */
301
+ void resvg_options_load_font_data(resvg_options *opt, const char *data, uintptr_t len);
302
+
303
+ /**
304
+ * @brief Loads a font file into the internal fonts database.
305
+ *
306
+ * Prints a warning into the log when the data is not a valid TrueType font.
307
+ *
308
+ * Has no effect when the `text` feature is not enabled.
309
+ *
310
+ * @return #resvg_error with RESVG_OK, RESVG_ERROR_NOT_AN_UTF8_STR or RESVG_ERROR_FILE_OPEN_FAILED
311
+ */
312
+ int32_t resvg_options_load_font_file(resvg_options *opt, const char *file_path);
313
+
314
+ /**
315
+ * @brief Loads system fonts into the internal fonts database.
316
+ *
317
+ * This method is very IO intensive.
318
+ *
319
+ * This method should be executed only once per #resvg_options.
320
+ *
321
+ * The system scanning is not perfect, so some fonts may be omitted.
322
+ * Please send a bug report in this case.
323
+ *
324
+ * Prints warnings into the log.
325
+ *
326
+ * Has no effect when the `text` feature is not enabled.
327
+ */
328
+ void resvg_options_load_system_fonts(resvg_options *opt);
329
+
330
+ /**
331
+ * @brief Destroys the #resvg_options.
332
+ */
333
+ void resvg_options_destroy(resvg_options *opt);
334
+
335
+ /**
336
+ * @brief Creates #resvg_render_tree from file.
337
+ *
338
+ * .svg and .svgz files are supported.
339
+ *
340
+ * See #resvg_is_image_empty for details.
341
+ *
342
+ * @param file_path UTF-8 file path.
343
+ * @param opt Rendering options. Must not be NULL.
344
+ * @param tree Parsed render tree. Should be destroyed via #resvg_tree_destroy.
345
+ * @return #resvg_error
346
+ */
347
+ int32_t resvg_parse_tree_from_file(const char *file_path,
348
+ const resvg_options *opt,
349
+ resvg_render_tree **tree);
350
+
351
+ /**
352
+ * @brief Creates #resvg_render_tree from data.
353
+ *
354
+ * See #resvg_is_image_empty for details.
355
+ *
356
+ * @param data SVG data. Can contain SVG string or gzip compressed data. Must not be NULL.
357
+ * @param len Data length.
358
+ * @param opt Rendering options. Must not be NULL.
359
+ * @param tree Parsed render tree. Should be destroyed via #resvg_tree_destroy.
360
+ * @return #resvg_error
361
+ */
362
+ int32_t resvg_parse_tree_from_data(const char *data,
363
+ uintptr_t len,
364
+ const resvg_options *opt,
365
+ resvg_render_tree **tree);
366
+
367
+ /**
368
+ * @brief Checks that tree has any nodes.
369
+ *
370
+ * @param tree Render tree.
371
+ * @return Returns `true` if tree has no nodes.
372
+ */
373
+ bool resvg_is_image_empty(const resvg_render_tree *tree);
374
+
375
+ /**
376
+ * @brief Returns an image size.
377
+ *
378
+ * The size of a canvas that required to render this SVG.
379
+ *
380
+ * The `width` and `height` attributes in SVG.
381
+ *
382
+ * @param tree Render tree.
383
+ * @return Image size.
384
+ */
385
+ resvg_size resvg_get_image_size(const resvg_render_tree *tree);
386
+
387
+ /**
388
+ * @brief Returns an image viewbox.
389
+ *
390
+ * The `viewBox` attribute in SVG.
391
+ *
392
+ * @param tree Render tree.
393
+ * @return Image viewbox.
394
+ */
395
+ resvg_rect resvg_get_image_viewbox(const resvg_render_tree *tree);
396
+
397
+ /**
398
+ * @brief Returns an image bounding box.
399
+ *
400
+ * Can be smaller or bigger than a `viewbox`.
401
+ *
402
+ * @param tree Render tree.
403
+ * @param bbox Image's bounding box.
404
+ * @return `false` if an image has no elements.
405
+ */
406
+ bool resvg_get_image_bbox(const resvg_render_tree *tree, resvg_rect *bbox);
407
+
408
+ /**
409
+ * @brief Returns `true` if a renderable node with such an ID exists.
410
+ *
411
+ * @param tree Render tree.
412
+ * @param id Node's ID. UTF-8 string. Must not be NULL.
413
+ * @return `true` if a node exists.
414
+ * @return `false` if a node doesn't exist or ID isn't a UTF-8 string.
415
+ * @return `false` if a node exists, but not renderable.
416
+ */
417
+ bool resvg_node_exists(const resvg_render_tree *tree, const char *id);
418
+
419
+ /**
420
+ * @brief Returns node's transform by ID.
421
+ *
422
+ * @param tree Render tree.
423
+ * @param id Node's ID. UTF-8 string. Must not be NULL.
424
+ * @param transform Node's transform.
425
+ * @return `true` if a node exists.
426
+ * @return `false` if a node doesn't exist or ID isn't a UTF-8 string.
427
+ * @return `false` if a node exists, but not renderable.
428
+ */
429
+ bool resvg_get_node_transform(const resvg_render_tree *tree,
430
+ const char *id,
431
+ resvg_transform *transform);
432
+
433
+ /**
434
+ * @brief Returns node's bounding box by ID.
435
+ *
436
+ * @param tree Render tree.
437
+ * @param id Node's ID. Must not be NULL.
438
+ * @param bbox Node's bounding box.
439
+ * @return `false` if a node with such an ID does not exist
440
+ * @return `false` if ID isn't a UTF-8 string.
441
+ * @return `false` if ID is an empty string
442
+ */
443
+ bool resvg_get_node_bbox(const resvg_render_tree *tree, const char *id, resvg_rect *bbox);
444
+
445
+ /**
446
+ * @brief Destroys the #resvg_render_tree.
447
+ */
448
+ void resvg_tree_destroy(resvg_render_tree *tree);
449
+
450
+ /**
451
+ * @brief Renders the #resvg_render_tree onto the pixmap.
452
+ *
453
+ * @param tree A render tree.
454
+ * @param transform A root SVG transform. Can be used to position SVG inside the `pixmap`.
455
+ * @param width Pixmap width.
456
+ * @param height Pixmap height.
457
+ * @param pixmap Pixmap data. Should have width*height*4 size and contain
458
+ * premultiplied RGBA8888 pixels.
459
+ */
460
+ void resvg_render(const resvg_render_tree *tree,
461
+ resvg_transform transform,
462
+ uint32_t width,
463
+ uint32_t height,
464
+ char *pixmap);
465
+
466
+ /**
467
+ * @brief Renders a Node by ID onto the image.
468
+ *
469
+ * @param tree A render tree.
470
+ * @param id Node's ID. Must not be NULL.
471
+ * @param transform A root SVG transform. Can be used to position SVG inside the `pixmap`.
472
+ * @param width Pixmap width.
473
+ * @param height Pixmap height.
474
+ * @param pixmap Pixmap data. Should have width*height*4 size and contain
475
+ * premultiplied RGBA8888 pixels.
476
+ * @return `false` when `id` is not a non-empty UTF-8 string.
477
+ * @return `false` when the selected `id` is not present.
478
+ * @return `false` when an element has a zero bbox.
479
+ */
480
+ bool resvg_render_node(const resvg_render_tree *tree,
481
+ const char *id,
482
+ resvg_transform transform,
483
+ uint32_t width,
484
+ uint32_t height,
485
+ char *pixmap);
486
+
487
+ #ifdef __cplusplus
488
+ } // extern "C"
489
+ #endif // __cplusplus
490
+
491
+ #endif /* RESVG_H */