Java-converter voor CgBI-afbeeldingen naar RGBA?

Ik moet een PNG-bestand dat is geoptimaliseerd voor een iOS-toepassing, programmatisch kunnen converteren en de optimalisaties kunnen verwijderen. Een nummer of berichten onthullen het mechanisme hiervoor, maar ik hoopte dat er al enige Java-code beschikbaar was voordat ik dit zelf ging doen.

Kent iemand een Java-converter voor CGBI-afbeeldingen naar RGBA?

4

2 antwoord

Ik raakte geïnteresseerd in het onderwerp en deed wat onderzoek naar het gebied. Op een gerelateerde pagina over PNG-conversies eindigde ik met het pakket jar type converter dat misschien iets is waar u tevreden over zou zijn. Ik veronderstel dat het een soort Open Source-oplossing is, omdat de bron werd aangekondigd op dezelfde plaats te worden gevonden.

4
toegevoegd
Werkt perfect!
toegevoegd de auteur Wayne Hartman, de bron
Voor degenen die een bibliotheekversie van dezelfde converter nodig hebben: github.com/viphe/ipng-converter (een paar bugs waren ook opgelost).
toegevoegd de auteur viphe, de bron

Ik schreef een commandoregel C-programma dat hetzelfde doet. Naast de andere converters (ik moet de online conversie nog testen), kan de mijne meerdere IDAT-blokken, Adam7-interliniëring en alle rijfiltertypen aan - dit laatste is nodig om de kleurpixels met hun alpha te vermenigvuldigen. Dit alles leidt tot, AFAIK, precies hetzelfde beeld dat gefrituurd werd. Zie mijn website voor de volledige C-broncode.

2
toegevoegd
Hier en daar maar, maar CoreGraphics-API's op MacOSX kunnen geoptimaliseerde PNG-afbeeldingsbestanden rechtstreeks lezen. U kunt dus gewoon de afbeelding openen en opslaan als een BMP om de codering te verwijderen.
toegevoegd de auteur MoDJ, de bron