vips.h 2.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. #include <stdlib.h>
  2. #include <vips/vips.h>
  3. #include <vips/vips7compat.h>
  4. enum ImgproxyImageTypes {
  5. UNKNOWN = 0,
  6. JPEG,
  7. PNG,
  8. WEBP,
  9. GIF,
  10. ICO,
  11. SVG
  12. };
  13. int vips_initialize();
  14. void clear_image(VipsImage **in);
  15. void g_free_go(void **buf);
  16. void swap_and_clear(VipsImage **in, VipsImage *out);
  17. int vips_type_find_load_go(int imgtype);
  18. int vips_type_find_save_go(int imgtype);
  19. int vips_jpegload_go(void *buf, size_t len, int shrink, VipsImage **out);
  20. int vips_pngload_go(void *buf, size_t len, VipsImage **out);
  21. int vips_webpload_go(void *buf, size_t len, int shrink, VipsImage **out);
  22. int vips_gifload_go(void *buf, size_t len, int pages, VipsImage **out);
  23. int vips_svgload_go(void *buf, size_t len, double scale, VipsImage **out);
  24. int vips_get_exif_orientation(VipsImage *image);
  25. int vips_support_smartcrop();
  26. VipsBandFormat vips_band_format(VipsImage *in);
  27. gboolean vips_is_animated_gif(VipsImage * in);
  28. gboolean vips_image_hasalpha_go(VipsImage * in);
  29. int vips_copy_go(VipsImage *in, VipsImage **out);
  30. int vips_cast_go(VipsImage *in, VipsImage **out, VipsBandFormat format);
  31. int vips_resize_go(VipsImage *in, VipsImage **out, double scale);
  32. int vips_resize_with_premultiply(VipsImage *in, VipsImage **out, double scale);
  33. int vips_need_icc_import(VipsImage *in);
  34. int vips_icc_import_go(VipsImage *in, VipsImage **out, char *profile);
  35. int vips_colourspace_go(VipsImage *in, VipsImage **out, VipsInterpretation cs);
  36. int vips_rot_go(VipsImage *in, VipsImage **out, VipsAngle angle);
  37. int vips_flip_horizontal_go(VipsImage *in, VipsImage **out);
  38. int vips_extract_area_go(VipsImage *in, VipsImage **out, int left, int top, int width, int height);
  39. int vips_smartcrop_go(VipsImage *in, VipsImage **out, int width, int height);
  40. int vips_gaussblur_go(VipsImage *in, VipsImage **out, double sigma);
  41. int vips_sharpen_go(VipsImage *in, VipsImage **out, double sigma);
  42. int vips_flatten_go(VipsImage *in, VipsImage **out, double r, double g, double b);
  43. int vips_replicate_go(VipsImage *in, VipsImage **out, int across, int down);
  44. int vips_embed_go(VipsImage *in, VipsImage **out, int x, int y, int width, int height);
  45. int vips_apply_opacity(VipsImage *in, VipsImage **out, double opacity);
  46. int vips_apply_watermark(VipsImage *in, VipsImage *watermark, VipsImage **out, double opacity);
  47. int vips_arrayjoin_go(VipsImage **in, VipsImage **out, int n);
  48. int vips_jpegsave_go(VipsImage *in, void **buf, size_t *len, int strip, int quality, int interlace);
  49. int vips_pngsave_go(VipsImage *in, void **buf, size_t *len, int interlace, int embed_profile);
  50. int vips_webpsave_go(VipsImage *in, void **buf, size_t *len, int strip, int quality);
  51. int vips_gifsave_go(VipsImage *in, void **buf, size_t *len);
  52. int vips_icosave_go(VipsImage *in, void **buf, size_t *len);
  53. void vips_cleanup();