Σήμερα, αναφέρθηκε το ακόλουθο σφάλμα κατά τη χρήση του aforgr.net για επεξεργασία εικόνας:
Μη υποστηριζόμενη μορφή pixel της εικόνας πηγής ή προτύπου Η μορφή pixel δεν υποστηρίζεται για την εικόνα πηγής ή προτύπου
Βρήκα μια λύση από ένα ξένο φόρουμ:
Η κλάση εφαρμόζει εξαντλητικό αλγόριθμο αντιστοίχισης προτύπων, ο οποίος εκτελεί πλήρη σάρωση της εικόνας πηγής, συγκρίνοντας κάθε pixel με το αντίστοιχο pixel του προτύπου.
Η κλάση επεξεργάζεται μόνο εικόνες κλίμακας του γκρι 8 bpp και έγχρωμες εικόνες 24 bpp. Έτσι, αυτές είναι οι μορφές εικόνας που πρέπει να χρησιμοποιήσετε.
Όπως ζητήθηκε, για να μετατρέψετε σε μια συγκεκριμένη μορφή pixel, μπορείτε να κάνετε τα εξής:
δημόσιο στατικό Bitmap ConvertToFormat(αυτή η εικόνα εικόνας, μορφή PixelFormat) { Αντιγραφή bitmap = νέο Bitmap(εικόνα. Πλάτος, εικόνα. Ύψος, μορφή); χρησιμοποιώντας (Graphics gr = Graphics.FromImage(copy)) { γρ. DrawImage(εικόνα, νέο ορθογώνιο(0, 0, αντίγραφο. Πλάτος, αντίγραφο. Ύψος)); } αντίγραφο επιστροφής? } Η κινεζική μετάφραση έχει ως εξής: Η κλάση εφαρμόζει έναν πλήρη αλγόριθμο αντιστοίχισης προτύπων για σαρωμένες εικόνες, συγκρίνοντας κάθε pixel και συγκρίνοντάς το με το πρότυπο του αντίστοιχου pixel.
Η κλάση μπορεί να χειριστεί μόνο εικόνες σε κλίμακα του γκρι και έγχρωμες εικόνες24 8 BPP BPP. Έτσι, αυτές είναι οι μορφές εικόνας που πρέπει να χρησιμοποιήσετε. Όπως απαιτείται, η μετατροπή σε μια συγκεκριμένη μορφή pixel μπορεί να γίνει: Δημόσιο στατικό bitmap converttoformat (αυτή η εικόνα, μορφή pixel)
{ bitmap copy = νέο bitmap (image.width, image. ύψος, μορφή)· Χρήση (Graphic GR = Γραφική εικόνα (Αντίγραφο). )
{ gr.drawimage(εικόνα, νέο ορθογώνιο (0,0, πλάτος, ύψος αντιγραφής. Αντιγραφή. ));
} Επιστρέψτε στο αντίγραφο.
}
|