PRAETERLABOR imago decoding bibliotheca praesto

Sub licentia MIT published TRAIECTUM imaginem decoding bibliothecae SAIL. EGRESSUS est rebranding codecs ex diuturna imagine inspectoris revocetur in C KSquirrelsed cum summus gradus API abstracto et multis emendationibus. Target auditorium: visores imaginum, evolutionis ludus, imagines in memoriam in alias usus onerandas. Bibliotheca sub evolutione est, sed iam utilis est. In hac evolutionis stadio binarii et fons codicis convenientiae non praestantur.

Features:

  • Simplex, compacta et adglutinata bibliotheca in C scripta sine clientelae tertiae partis (exceptis codicibus);
  • Simplex, intelligibilis et simul potens API ad omnes necessitates;
  • Obligationes pro C++;
  • Formae imaginum dynamice gravatae codicibus sustentantur;
  • Imagines legere (et scribe) imagines ex tabella, memoria, vel etiam tuo fonte data;
  • Determinare genus imaginis per extensio lima, vel per magicae numerus;
  • Currently confirmavit formats: png JPEG (legere, scribere) PNG (legere, scribere).
    Opus comparatum est novas formas addere. KSquirrel-libs circiter 60 formatis uno vel alio modo fultis, formarum popularium in linea prima sunt;

  • Operationes legere semper elementa in RGB et RGBA formare possunt;
  • Nonnulli codiceci elementa in ampliori forma formarum praeponere possunt;
  • Plurimi codecs possunt etiam elementa output FONS. Hoc utile est, exempli gratia, iis qui plenam informationem de imaginibus CMYK vel YCCK accipere volunt;
  • Legere et scribere ICC perfiles;
  • Exempla in C, Qt, SDL;
  • Rostra subnixa:
    Windows (installer), macOS (brew) et Linux (Debian).

Quod VELUM non praebet:

  • Imago edendi;
  • Color spatii conversionis functiones praeter ea quae ex codicibus subiacentibus (libjpeg, etc.) praebentur;
  • Color procuratio functionum (usus ICC perfiles etc.)

Exemplum simplicissimum decoding in C:

struct sail_context *context;

SAIL_TRY(nail_init(&context));

struct sail_image *image;
unsigned char *image_pixels;

SAIL_TRY (sail_read iter,
contextu,
& imago,
(inanis **)&image_pixels));

/*
* Hic processus elementa recepta.
* Ad hoc, utere image->latitudo, imago-> altitudo, image->bytes_per_line,
* and image->pixel_format.
*/

/* Tersus sursum */
gratis (image_pixels);
sail_destroy_image(image);

Brevis descriptio API levels:

  • Newbie: "Ego iustus volo hanc JPEG download"
  • Excogitatum est: "Hunc animatum GIF memoria onerare volo"
  • Altum mare diver: "Hunc animatum GIF memoria onerare volo et plenam potestatem super codes et pixel output quod eligo."
  • Technical Diver: "Omnia supra volo, et fons notitiae meae".

Ex eadem area directa competitores:

  • FreeImage
  • diaboli
  • SDL_Image
  • WIC
  • imlib2
  • Boost.GIL
  • gdk-pixbuf

Differentiae ab aliis bibliothecis;

  • Hominis API entia cum expectatis - imagines, palettes, etc.
  • Plerique codices output plus quam iustus RGB/RGBA elementa output possunt.
  • Plerique codeci elementa originalia sine conversione ad RGB praeponere possunt.
  • Codices in quavis lingua scribere potes, eosque adde/remove, quin totam rem restituas.
  • Informationes conserva de imagine originali.
  • "Perscrutatio" est processus notitiarum obtinendae de imagine sine pixel notitia decoctionis.
  • Magnitudine et celeritate.

Source: opennet.ru