automatisiert Bilder skalieren

  • 11 Antworten
  • Letztes Antwortdatum
P

Parabacus

Neues Mitglied
3
Hallo!

Ich hab mich jezt in Tasker schon bisschen eingearbeitet und einige nützliche Dinge umgesetzt. Eigentlich hatte ich das primäre Ziel, Bilder automatisiert in der Größe anzupassen. Warum ich das möchte steht bereits in diesem Beitrag: Fotos automatisch auf Android-TAB synchronisieren und verkleinern

Rak hat gemeint, dass das ggf. auch mit Tasker klappen könnte. In Tasker hab ich auch eine Aktion "Bilder skalieren" unter der Aktionskategorie "Bild" gefunden.
Ich scheitere aber daran, dass ich einen Pfad angebe, wo sich die zu bearbeitende(n) Bild-Dateien (beliebige Anzahl mit beliebigen Dateinamen, die das in einer Schleife abgearbeitet werden sollen) liegen.
Jetzt dachte ich, dass es vielleicht mit "Datei auflisten" geht, wo ich einen Ordner auswählen kann und mir den Inhalt des Ordners in ein Variable schreibe. Damit hätte ich die Dateinamen, aber scheinbar nicht die Anzahl der Dateien.

Irgendwie komm ich da grad nicht weiter. Weiss vielleicht jemand einen Tipp oder geht das gar nicht in der Art, wie ich mir das vorstelle?

Gruß
Tom
 
Hi,

habe dir mal was gebastelt. du musst nur noch im Task deine Werte für die Auflösung und die Pfade ändern.

Der Task funktioniert so:

er holt die Bilder aus dem Ordner resize, welcher sich in Download befindet,
er skaliert alle Bilder und speichert sie in resizedone, welcher sich ebenfalls in Download befindet

Das musst du noch importieren
Code:
<TaskerData sr="" dvi="1" tv="4.8m">
    <Task sr="task196">
        <cdate>1451925022988</cdate>
        <edate>1452089330835</edate>
        <id>196</id>
        <nme>Bilder Skalierung Ordner</nme>
        <pri>100</pri>
        <Action sr="act0" ve="7">
            <code>412</code>
            <Str sr="arg0" ve="3">Download/resize/</Str>
            <Str sr="arg1" ve="3"/>
            <Int sr="arg2" val="0"/>
            <Int sr="arg3" val="0"/>
            <Str sr="arg4" ve="3">%files</Str>
        </Action>
        <Action sr="act1" ve="7">
            <code>39</code>
            <Str sr="arg0" ve="3">%file</Str>
            <Str sr="arg1" ve="3">%files()</Str>
        </Action>
        <Action sr="act2" ve="7">
            <code>188</code>
            <Img sr="arg0" ve="2">
                <var>%file</var>
            </Img>
            <Int sr="arg1" val="0"/>
            <Int sr="arg2" val="0"/>
        </Action>
        <Action sr="act3" ve="7">
            <code>193</code>
            <Int sr="arg0" val="1920"/>
            <Int sr="arg1" val="1080"/>
        </Action>
        <Action sr="act4" ve="7">
            <code>187</code>
            <Str sr="arg0" ve="3">%file</Str>
            <Int sr="arg1" val="100"/>
            <Int sr="arg2" val="1"/>
        </Action>
        <Action sr="act5" ve="7">
            <code>400</code>
            <Str sr="arg0" ve="3">%file</Str>
            <Str sr="arg1" ve="3">Download/resizedone/</Str>
            <Int sr="arg2" val="0"/>
        </Action>
        <Action sr="act6" ve="7">
            <code>40</code>
        </Action>
        <Action sr="act7" ve="7">
            <code>548</code>
            <Str sr="arg0" ve="3">Bilder wurden skaliert</Str>
            <Int sr="arg1" val="0"/>
        </Action>
    </Task>
</TaskerData>
 
Zuletzt bearbeitet:
  • Danke
Reaktionen: accid-burn, Parabacus und Rak
Hi Sajo!

Krass - perfekt... - genau so hab ich mir das vorgestellt! :thumbsup::thumbsup::thumbsup:

Besten Dank für die schnelle Hilfe!
Damit wird's Geburtstagsgeschenk fü den werdenden Opa (und auch für die Oma) perfekt und das Baby kann kommen! :blink:

Ciao
Tom
 
Auf meinem Samsung TAB S2 läuft das ja inzwischen perfekt. Ich wollte es grad auf dem eigentlichen Ziel-Tablet, das ich erst gestern bekommen hab - ein Samsung TAB 3 lite (SM-T110) mit 8GB - zum laufen bringen, scheitere aber.

Beim Aktions-Punkt "Bild laden" bekomme ich folgende Fehlermeldung:
.../MyBitmap readSDbitmap: <Pfad zum Bild>: out of memory
.../ActionArgIcon getResolvedVar: <Pfad zum Bild> -> <Pfad zum Bild>
.../E no bitmap from icon file://<Pfad zum Bild>

Auf dem Tablet sind kaum Apps installiert (nur das System und die nötigen Apps für das Projekt) und aktiv in der Taskliste ist nur Tasker und Solid Explorer. DiskUsage sagt, dass noch gut die Hälfte des Speichers frei ist.

Die Bilder sind ca. 2..3MB groß und in der Regel, wenn ich mit der Spiegelreflex fotografiere auch mal locker 5..6MB.
Wenn ich Bilder nehme, die kleiner sind (Versuch mit <1MB), klappt die Routine.


Gibt es in Tasker eine Systemabhängige Bildgrößengrenze, was meiner Meinung nach keinen Sinn macht?
Das TAB3 lite hat jetzt Android 4.2.2 drauf, das TAB S2 hat Android 5.0.2 und da funktioniert das auch mit großen Bildern. Auf meinem Smartphone S5 mini mit 4.4.2 funktioniert es auch auch problemlos.
 
Hat sich scheinbar erledigt - jetzt klappt's!
Komischerweise wurde das importierte Profil mit den Tasks über einen Geräteneustart nicht gespeichert. Nach einem erneuten Import war es wieder okay und zudem war ein Bild bereits konvertiert und lag (als Leiche) im Zielordner. Das warein Hochformat-Bild und so wie es aussieht, kann Tasker damit auch nicht wirklich umgehen, da die EXIF-Metainformationen nicht berücksichtigt werden bzw. verloren gehen. Jedenfalls werden Hochformat-Bilder zusammengestaucht und ergeben dann ein Breitformatbild.
 
Schöner Task. Mach das sonst mit imageshrink. Problem ist, wenn ich was anderes in dem Ordner habe wie z. B. eine video Datei, dann gibt er mir ein Fehler aus. Kann ich das umgehen. Z. B. Video Dateien ausschließen oder nur Bild Daten wie png jpeg einschließen?
 
Es dürfen nur Bilder im Ordner sein.
 
Danke. Habe mittlerweile selber rausgefunden wie es geht. Unter Punkt 1 list files, gibt es die Option Match. Dort kann man eintragen welche Dateien man haben möchte. In meinem Fall nur jpg. Also trägt man dort *.jpg ein und schon werden nur Bild Dateien gelesen und Video Dateien ausgeschlossen. Jetzt bleibt nur noch das Problem das die Bilder zusammengestaucht werden, anstatt wie das Original im Hochformat ausgegeben.
 
ja stimmt. ich hab das jetzt mal mit
*.jpg/*.png/*.bmp
gemacht
 
Genau. So kann man mehrere dateiendungen mit einbeziehen. Was mich nur noch interessiert ist, wie man das Stauchen der Bilder verhindert.
 
Mit 0 bei w oder h sollte es gehen
 

Anhänge

  • Screenshot_20160110-173841.png
    Screenshot_20160110-173841.png
    17,4 KB · Aufrufe: 222
  • Danke
Reaktionen: Sajo und accid-burn
Ja super. Vielen Dank. Funktioniert einwandfrei. Jetzt verkleinert Tasker selber die Bilder, bevor sie in der cloud gesichert werden.
 

Ähnliche Themen

X
Antworten
7
Aufrufe
1.322
xyzUpdate
X
D
Antworten
8
Aufrufe
1.747
rtwl
rtwl
Angelchc
Antworten
4
Aufrufe
203
Angelchc
Angelchc
Zurück
Oben Unten