Wie Fotos mit Fotoapparat.IO verkleinern auf feste Breite?

  • Moin Leute,


    ich benutze die Fotoapparat.io lib um Fotos aufzunehmen. Seitens fotoapparat wird ein BitmapPhoto Object erstellt, was die Aufnahme beinhaltet.


    Das klappt auch soweit mit dem Aufnehmen im Großen und Ganzen. Es ist in voller Auflösung, auf älteren Geräten führts da häufig zu OutOfMemoryException... uuuund ich brauchs nicht so groß.


    Ich würde gerne die Aufnahmen unabhängig von ursprünglicher Sensorgröße und Verhältnis, die lange Seite auf 768 pixel und die kurze im entsprechenden Verhältnis abspeichern. Der obige Code funktioniuert nicht für alle Sensoren, ältere Geräte bekommen nicht exakt 768 pixel, mal leicht drüber oder drunter - je nach Auflösung.


    Für eine exakte Auflösung habe ich folgendes:


    mit 1.0 als scale Faktor verzerrt das Bild und und mit 1.3F wird die sollAufloesung verändert.


    Jemand eine Idee?

  • Hallo ich würde es in etwas so machen.


  • Wenn du beide Seiten fest setzt wird das nur gehen wenn der sensor genau 4x3 ist. Das ist aber in den seltensten Fällen so, also wird das Bild verzerrt.


    Du musst dir die längste Seite des Bildes suchen diese auf 768 setzen. Nun musst du den Faktor für die Umrechnung bestimmen und mit diesen die andere Seite bestimmen. Dann solte es auch in deiner


    "new Resolution(width, height);"


    mit einen scale Faktor 1 gehen.


    Wenn du ein genau 768 x 568 haben willst, müsstest du ja intelegent etweder was wegschneiden oder Ränder hinzufügen.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!