HTML and CSS Reference
In-Depth Information
»Und jetzt, shake it!« ändern. Ein Schütteln des Geräts blendet dann das Bild ein und
ändert den Button des Textes zu: »Neues Foto machen!« Ihnen kommt diese Funkti-
onalität bekannt vor? Stimmt, all das ist zum größten Teil schon eingefügt. Lediglich
der Kameraaufruf und ein paar textliche Änderungen sind neu. Starten Sie die
Kamera mit folgendem Code zu Beginn der Funktion neuespolaroid(); :
//Ein Foto aufnehmen
navigator.camera.getPicture(onSuccess, onFail, {
quality: 10,
destinationType: Camera.DestinationType.FILE_URI,
targetWidth: 400,
targetHeight: 400
});
Über PhoneGap die Kamera starten. Das Objekt navigator.camera.getPicture besteht
aus drei Teilen. Ist die Aufnahme erfolgreich, so wird die Funktion onSuccess ausge-
führt. Liegt ein Fehler vor, wird hingehen die Funktion onFail gestartet. Der dritte Teil
besteht aus Parametern, welche die Eigenschaften der Aufnahme bestimmen:
quality (0-100)
Sie können die Aufnahmequalität zwischen 0 und 100 einstellen, wobei 100 die
höchste Qualität darstellt. Da moderne Geräte hochauflösende Kameras haben,
sollten Sie die Qualität hier gering (unter 20) einstellen, damit dem Gerät nicht der
Arbeitsspeicher ausgeht und die App sich einfach beendet. In unseren Tests auf
einem iPhone 4S läuft der Speicher bereits bei einer Qualität von 50 voll, und die
App stürzt ab. Deswegen ist hier weniger mehr.
destinationType
Standardmäßig gibt die Funktion das komplette Bild im base64-Format zurück.
Dies ist sinnvoll, wenn Sie die Datei gleich an einen Server weiterleiten wollen. In
Ihrem Fall setzen Sie den Parameter jedoch auf Camera.DestinationType.FILE_URI .
Damit wird lediglich der Pfad zum Bild im temporären Speicher zurückgegeben,
den Sie später im JavaScript für den Hintergrund des Polaroid-Containers festset-
zen werden.
targetWidth & targetHeight
Das Bild wird automatisch auf die hier angegebenen Größen verkleinert, wobei
das Seitenverhältnis immer beibehalten wird. Sie geben beide Werte mit einem
Maximum von 400 an. Damit ist das Bild entweder maximal 400 Pixel breit ODER
hoch. Die Limitierung auf 400 Pixel ist auch hier wieder nötig, um Arbeitsspeicher
zu sparen und die App vor dem Absturz zu bewahren.
Wenn das Bild erfolgreich aufgenommen wurde, soll das Polaroid reinfahren und der
Button-Text geändert werden. Kopieren Sie daher den kompletten Inhalt der Funk-
Search WWH ::




Custom Search