Kei te waatea te whare pukapuka whakawaehere whakaahua SAIL
I raro i te raihana MIT whakaputaina whare pukapuka whakawaehere whakaahua whakawhiti-whakawhiti SAIL. Ko te SAIL he tohu hou mo nga kotēkē mai i te kaitirotiro whakaahua kua roa kaore i tautokohia i tuhia ano ki C KSquirrel, engari me te API waitara taumata-tiketike me te maha o nga whakapainga. Te hunga whakarongo: nga kaimakitaki whakaahua, te whanaketanga keemu, te uta i nga whakaahua ki te mahara mo etahi atu kaupapa. Kei te whanakehia te whare pukapuka, engari kua taea te whakamahi. Ko te hototahitanga-rua me te waehere punaha kaore i te taurangi i tenei waahanga whanaketanga.
Ngā Āhuatanga:
He whare pukapuka ngawari, kiato me te tere kua tuhia ki te C me te kore e whakawhirinaki-tuatoru (haunga nga codec);
He maamaa, he maarama me te API kaha i te wa ano mo nga hiahia katoa;
Nga here mo C++;
Ko nga whakatakotoranga whakaahua e tautokohia ana e nga kotēkē e utaina ana;
Panui (ka tuhi) whakaahua mai i te konae, te mahara, me to ake puna raraunga;
Te whakatau i te momo ahua ma te toronga konae, ma te tau makutu;
Ngā hōputu e tautokohia ana ināianei: png (panui, Windows anake), JPEG (panui, tuhi) PNG (panui, tuhi).
Kei te haere tonu te mahi ki te taapiri i nga whakatakotoranga hou. I tautokohia e KSquirrel-libs mo te 60 nga whakatakotoranga i tetahi huarahi, i tetahi atu ranei, ko nga whakatakotoranga tino rongonui kei te rarangi tuatahi;
Ka taea e nga mahi panui te whakaputa i nga pika ki te whakatakotoranga RGB me te RGBA;
Ka taea e etahi kotēkē te whakaputa pika i roto i te rarangi rahi ake o nga whakatakotoranga;
Ka taea hoki e te nuinga o nga kotēkē te whakaputa i nga pika SOURCE. He pai tenei, hei tauira, mo te hunga e hiahia ana ki te tiki korero katoa mai i nga whakaahua CMYK, YCCK ranei;
Te panui me te tuhi i nga korero a te ICC;
He tauira i C, Qt, SDL;
Nga papaaho tautoko:
Windows (kaiwhakauta), macOS (brew) me Linux (Debian).
He aha te kore e whakaratohia e SAIL:
Whakatika whakaahua;
Ko nga mahi whakawhiti mokowā tae atu i ērā e whakaratohia ana e ngā kōtēke o raro (libjpeg, me ētahi atu);
Nga mahi whakahaere tae (whakamahi i nga korero ICC, me etahi atu)
Ko te tauira ngawari o te wetewete i te C:
struct sail_context * horopaki;
SAIL_TRY(sail_init(&horopaki));
struct sail_image *whakaahua;
char kaore i hainatia *image_pixels;
/*
* I konei tukatuka nga pika kua riro.
* Ki te mahi i tenei, whakamahia te ahua->whanui, whakaahua->teitei, whakaahua->paita_per_raina,
* me te ahua->pixel_format.
*/
/* Whakapai */
kore utu(image_pixels);
sail_destroy_image(image);
Whakaahuatanga poto mo nga taumata API:
Newbie: "Kei te hiahia noa ahau ki te tango i tenei JPEG"
Arā: "Kei te hiahia au ki te uta i tenei GIF pakiwaituhi mai i te mahara"
Te kairuku moana hohonu: "Kei te pirangi au ki te uta i tenei GIF pakiwaituhi mai i te mahara me te whai mana katoa ki nga kotēkē me te putanga pika ka tohua e au."
Kaituku Hangarau: "Kei te pirangi au ki nga mea katoa i runga ake nei, me taku ake puna raraunga"
Nga kaiwhakataetae tika mai i te waahi kotahi:
Atahanga Koreutu
DevIL
SDL_Whakaahua
WIC
imlib2
Whakanuia.GIL
gdk-pixbuf
Nga rereke mai i etahi atu whare pukapuka:
API tangata me nga hinonga e tumanakohia ana - whakaahua, papatae, aha atu.
Ko te nuinga o nga kotēkē ka taea te whakaputa neke atu i nga pika RGB/GBA noa.
Ka taea e te nuinga o nga codec te whakaputa i nga pika taketake me te kore e huri ki te RGB.
Ka taea e koe te tuhi i nga codec i roto i tetahi reo, me te taapiri / tango ano hoki me te kore e whakahiato i te kaupapa katoa.
Tiakina nga korero mo te ahua taketake.
Ko te "Te tirotiro" ko te mahi ki te tiki korero mo te ahua me te kore e wetewete i nga raraunga pika.