{"id":441,"date":"2009-07-02T19:53:21","date_gmt":"2009-07-02T17:53:21","guid":{"rendered":"http:\/\/joergnapp.de\/2009\/07\/02\/eigene-schaltflaechen-in-picasa\/"},"modified":"2014-06-13T07:07:53","modified_gmt":"2014-06-13T05:07:53","slug":"eigene-schaltflaechen-in-picasa","status":"publish","type":"post","link":"https:\/\/joergnapp.de\/blog\/eigene-schaltflaechen-in-picasa\/","title":{"rendered":"Eigene Schaltfl&auml;chen in Picasa"},"content":{"rendered":"<p>Am unteren Rand zeigt Picasa Schaltfl\u00e4chen f\u00fcr oft benutzte Aktionen an (Einkaufen, Collage, Geotag usw.). Mit der Button-API lassen sich hier auch eigene Buttons unterbringen, etwa um andere Bildbearbeitungsprogramme aufzurufen.<\/p>\n<p><!--more--><\/p>\n<p>Die Button-API wird von Google <a href=\"http:\/\/code.google.com\/intl\/de-DE\/apis\/picasa\/docs\/button_api.html\" target=\"_blank\">auf dieser Seite<\/a> ausf\u00fchrlich dokumentiert, ein paar weitere Infos gibt es auch im <a href=\"http:\/\/google-code-updates.blogspot.com\/2008\/03\/add-your-own-buttons-to-picasa-upload.html\" target=\"_blank\">Google Code Blog<\/a>.<\/p>\n<p>Als konkretes Beispiel m\u00f6chte ich GIMP aus Picasa heraus aufrufen.<\/p>\n<p>Dazu ben\u00f6tige ich zuerst eine <a href=\"http:\/\/en.wikipedia.org\/wiki\/Globally_Unique_Identifier\" target=\"_blank\">GUID<\/a>. Um die zu erzeugen, gibt es verschiedene Methoden, z.B. die Webseite <a href=\"http:\/\/www.guidgen.com\/\">guidgen.com<\/a>, die bei jedem Aufruf eine neue GUID erzeugt.<\/p>\n<p>Als erstes erstellt man das Symbol, welches sp\u00e4ter als Button erscheinen soll. Hierf\u00fcr verwendet Picasa ein Photoshop-Bild. Die oben erw\u00e4hnte Dokumentation spezifiziert die Gr\u00f6\u00dfe dieses Bildes auf 40&#215;25 Pixel; in den eigenen Beispielen kommen aber auch andere Ma\u00dfe vor; der original \u201cGeotag\u201d-Button ist beispielsweise 40&#215;50 Pixel gro\u00df!<\/p>\n<p>Als Ausgangsbasis f\u00fcr das GIMP-Symbol habe ich bei <a title=\"http:\/\/svgicons.o7a.net\/\" href=\"http:\/\/svgicons.o7a.net\/\">SVG Icons<\/a> das GIMP-Symbol heruntergeladen und mittels Inkscape in der ben\u00f6tigten Gr\u00f6\u00dfe exportiert. Mit Photoshop Elements schlie\u00dflich habe ich das Bild als PSD gespeichert.<\/p>\n<p>Wichtig ist der Name der Ebene, denn der kommt gleich ins Spiel!<\/p>\n<p>Das Bild wird als {<em>GUID<\/em>}.psd gespeichert und hei\u00dft bei mir folgerichtig {28741e4d-0c17-4c71-9eed-8899f335f2f5}.psd<\/p>\n<p>Schlie\u00dflich ben\u00f6tigt man noch eine XML-Datei, in der die Aktion beschrieben wird. Diese Datei sieht bei mir wie folgt aus:<\/p>\n<pre>&lt;?xml version=\"1.0\" encoding=\"utf-8\" ?&gt;\r\n&lt;buttons format=\"1\" version=\"1\"&gt;\r\n &lt;!-- ID sollte laut Google der Lieferantenname Plus der GUID sein \u2013&gt;\r\n &lt;button id=\"joergnapp\/{28741e4d-0c17-4c71-9eed-8899f335f2f5}\" type=\"dynamic\"&gt;\r\n\r\n &lt;!-- Verweis auf die PSD-Datei mit benannter Ebene \u2013&gt;\r\n &lt;icon name=\"{28741e4d-0c17-4c71-9eed-8899f335f2f5}\/GIMP\" src=\"pbz\"\/&gt;\r\n\r\n &lt;!-- Beschriftung des Buttons \u2013&gt;\r\n &lt;label&gt;GIMP&lt;\/label&gt;\r\n\r\n &lt;!-- Tooltip, wird auch im \"Anpassen\"-Fenster gezeigt \u2013&gt;\r\n &lt;tooltip&gt;Bild mit GIMP bearbeiten&lt;\/tooltip&gt;\r\n\r\n &lt;!-- Die auszuf\u00fchrende Aktion, siehe Doku \u2013&gt;\r\n &lt;action verb=\"trayexec\"&gt;\r\n\r\n &lt;!-- Wir holen den Pfad und den Namen aus der Registry \u2013&gt;\r\n &lt;param name=\"exe_name_regkey\" value=\"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\App Paths\\gimp-2.6.exe\\\"\/&gt;\r\n\r\n &lt;!-- Aufruf f\u00fcr jedes Bild einzeln, siehe Doku \u2013&gt;\r\n &lt;param name=\"foreach\" value=\"1\"\/&gt;\r\n &lt;\/action&gt;\r\n &lt;\/button&gt;\r\n&lt;\/buttons&gt;<\/pre>\n<p>F\u00fcr die einzelnen Tags in dieser Datei verweise ich auf die Dokumentation von Google. Man beachte dabei die Verweise auf die verwendete GUID auch hier. Interessant ist der exe_name_regkey-Wert, denn damit holt man den Pfad der Anwendung aus der Registry und ist damit nat\u00fcrlich flexibler, als wenn man den Pfad direkt eintr\u00e4gt.<\/p>\n<p>Diese XML-Datei bekommt den Namen {<em>GUID<\/em>}.pbf (die Endung pbf steht f\u00fcr Picasa Button File), konkret also {28741e4d-0c17-4c71-9eed-8899f335f2f5}.pbf.<\/p>\n<p>Beide Dateien werden nun zusammen in eine ZIP-Datei kopiert, deren Dateiendung von \u201czip\u201d in \u201cpbz\u201d (Picasa Button Zip) ge\u00e4ndert werden muss.<\/p>\n<p>In der Dokumentation wird beschrieben, wie man das fertige Plugin mittels \u201cpicasa:\/\/importbutton\/\u201d \u00fcber das Web verteilt werden kann. Diese Methode ist zwar bequem, doch f\u00fcr das lokale Testen kaum geeignet.<\/p>\n<p>Picasa kopiert die Button-Dateien nach <em>%appdata%\\Local\\Google\\Picasa2\\buttons<\/em>. Es gen\u00fcgt, die pbz-Datei in dieses Verzeichnis zu kopieren und Picasa neu zu starten. Unter \u201c<em>Tools \u2192 Schaltfl\u00e4chen anpassen<\/em>\u201d sollte dann der neue Button zur Verf\u00fcgung stehen.<\/p>\n<p>Ebenso ist es ausreichend, dort die betreffende pbz-Datei zu l\u00f6schen, um den Button wieder loszuwerden.<\/p>\n<p><strong>Der GIMP-Button f\u00fcr Picasa:<\/strong><\/p>\n<ul>\n<li><a href=\"picasa:\/\/importbutton?url=http:\/\/joergnapp.de\/wp-content\/uploads\/2009\/06\/gimp.pbz\">Automatische Installation<\/a><\/li>\n<li><a href=\"http:\/\/joergnapp.de\/wp-content\/uploads\/2009\/06\/gimp.pbz\">Manueller Download<\/a><\/li>\n<\/ul>\n<p><strong>Ein Photoshop Elements-Button f\u00fcr Picasa:<\/strong><\/p>\n<ul>\n<li><a href=\"picasa:\/\/importbutton?url=http:\/\/joergnapp.de\/wp-content\/uploads\/2009\/06\/photoshopelements.pbz\">Automatische Installation<\/a><\/li>\n<li><a href=\"http:\/\/joergnapp.de\/wp-content\/uploads\/2009\/06\/photoshopelements.pbz\">Manueller Download<\/a><\/li>\n<\/ul>\n<p><strong>Einige weitere Buttons f\u00fcr Picasa auf anderen Seiten:<\/strong><\/p>\n<ul>\n<li><a href=\"http:\/\/www.labnol.org\/internet\/pictures\/send-pictures-picasa-to-photoshop-editing\/2722\/\" target=\"_blank\">Photoshop starten<\/a>: \u00d6ffnet ein Bild zur Bearbeitung in Photoshop CS<\/li>\n<li><a href=\"http:\/\/swadling.com.au\/index.php\/blake\/blake-projects\/gimp-picasa-button\" target=\"_blank\">GIMP<\/a>: Ein weiterer GIMP-Button<\/li>\n<li><a href=\"http:\/\/olalindberg.com\/blog\/2008\/10\/11\/picasa-microsoft-ice-button\/\" target=\"_blank\">Microsoft ICE<\/a>: Mehrere Bilder an den Image Compositor senden<\/li>\n<li><a href=\"http:\/\/picasa2flickr.sourceforge.net\/\" target=\"_blank\">Flickr<\/a>: Um Bilder direkt zu Flickr hochzuladen<\/li>\n<li><a href=\"http:\/\/apps.facebook.com\/picasauploader\/\" target=\"_blank\">Facebook<\/a>: Um Bilder direkt zu Facebook hochzuladen<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Am unteren Rand zeigt Picasa Schaltfl\u00e4chen f\u00fcr oft benutzte Aktionen an (Einkaufen, Collage, Geotag usw.). Mit der Button-API lassen sich hier auch eigene Buttons unterbringen, etwa um andere Bildbearbeitungsprogramme aufzurufen.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[190,40,24,23,160,161,171,14,172,167,100,46,59,97,141,194],"class_list":["post-441","post","type-post","status-publish","format-standard","hentry","category-allgemein","tag-facebook","tag-gimp","tag-html","tag-icons","tag-inkscape","tag-photoshop","tag-photoshop-elements","tag-php","tag-picasa","tag-svg","tag-tags","tag-tools","tag-tv","tag-updates","tag-webseite","tag-windows"],"_links":{"self":[{"href":"https:\/\/joergnapp.de\/blog\/wp-json\/wp\/v2\/posts\/441","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/joergnapp.de\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/joergnapp.de\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/joergnapp.de\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/joergnapp.de\/blog\/wp-json\/wp\/v2\/comments?post=441"}],"version-history":[{"count":0,"href":"https:\/\/joergnapp.de\/blog\/wp-json\/wp\/v2\/posts\/441\/revisions"}],"wp:attachment":[{"href":"https:\/\/joergnapp.de\/blog\/wp-json\/wp\/v2\/media?parent=441"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/joergnapp.de\/blog\/wp-json\/wp\/v2\/categories?post=441"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/joergnapp.de\/blog\/wp-json\/wp\/v2\/tags?post=441"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}