Donnerstag, 31. März 2011

Unlesbarer Zeichensalat aus PDFs beim Kopieren

Immer mal wieder bekommt man ein PDF, aus dem man zwar grundsätzlich Text kopieren kann, allerdings erhält man beim Einfügen des kopierten Textes nur ein unlesbares Wirrwarr aus Zeichen und Symbolen (garbled text, gibberish). Das sieht dann gerne so aus:
0/+$!6/9! -#/-! &,$4/-5'8! 090-$+! 1$2$)&,$40! .*5)1!1$25%$! 1452$40!
/'1! &-#$4! 090-$+! 0&(-6/4$! %&+,&'$'-0! *0$1! .9! /,,) [Beispieldatei für Experimente]
Für dieses Phänomen kann es verschiedene Ursachen geben. Meist liegt es daran, dass:
  • entweder das PDF kaputt oder zumindest teilweise beschädigt ist oder
  • es fehlt etwas, z.B. eingebettete Schriften
  • bzw. der Text ist falsch oder inkompatibel kodiert (hier noch etwas mehr Informationen)
Um den Text doch noch aus einem solchen PDF zu bekommen, gibt es natürlich wiederum eine Reihe von Ansätzen, die unterschiedlich schwierig, zeitaufwendig und v.a. auch unterschiedlich erfolgreich sind. Man kann:
  • einen anderen PDF-Betrachter versuchen (bringt fast nie etwas – auch nicht auf einem anderen System)
  • man kann versuchen das PDF als Text aus dem Viewer zu speichern (klappt i.d.R. genauso wenig)
  • oder das PDF bei einem Online-Datei-Konverterdienst, wie Zamzar, Media-Converter, etc. (auch damit hatte i.d.R. wenig Erfolg)
  • man versucht das PDF mit OpenOffice mit der PDF-Import-Erweiterung zu laden (bei mir hat's nicht wirklich geklappt)
  • das PDF mit einem Tool wie pdftotext selbst in Text konvertieren [2] (wird wärmer, aber klappt auch oft nicht)
  • Einen generischen Druckertreiber verwenden, der statt einem Ausdruck eine Textdatei erstellt (schon deutlich wärmer, klappt aber auch längst nicht immer [1]))
  • das PDF erneut durch den Adobe Distiller jagen und Schriften neu einbetten lassen (das ist ein wirklich guter, erfolgversprechender Weg, aber: man braucht Adobe Pro, etwas Know-how und ggf. die betreffenden Schriften/Kodierungen...)
  • und letztlich, wenn gar nichts geht: das PDF in Bilder umwandeln / drucken und per OCR neu einlesen (klappt eigentlich immer, nur kann die Qualität des Ergebnis stark variieren. Je nach Software und Korrekturbedarf braucht man teilweise auch einiges an Zeit. [3])
  • am Einfachsten geht die Texterkennung mit Google Docs, man braucht einzig ein kostenloses Googlekonto und kann das betreffende PDF, auch ohne es zu Drucken / in Bilder umzuwanden, hochladen und in Text konvertieren lassen!

    Google DocsUploadOCR
Insgesamtwürde ich den letzten Lösungsansatz als den besten bezeichnen, der auch von jedermann durchzuführen ist. Eine eigene (teuere) OCR-Software ist Dank Google Docs nämlich nicht mehr nötig.
Wem noch weitere Tipps einfallen: Immer her damit. Und Lob kann auch nicht schaden. :)
Fußnoten:
[1] Anders als bei Windows, ist es am Mac m.M. recht schwer, einen Text-only Datei-Drucker einzurichten (Beschreibung für die Einrichtung eines Generic Text Printers unter XP hier - Als Hersteller muss in einem deutschen XP allerdings statt "Generic" nach "Standard" suchen.) Eine rudimentäre Anleitung für den Mac, die sich eher an Computerspezialisten richtet, habe ich hier gefunden. Diese Methode mit dem Geniric Text Printer lässt sich auch verwenden, um verschlüsselte PDFs zu drucken. Am Mac bietet sich aber als bessere Alternative die von mir beschriebene Lösung mit mupdf an.
[2] Am Mac kann man Text auch per Automator-Workflow aus PDFs extrahieren. Für unser Problem hilft dies zwar in der Regel auch nicht weiter, die Methode kann aber für verschiedene Aufgaben ab und an sehr praktisch sein.
[3] Wer selbst eine Leistungsfähige Texterkennungssoftware hat und damit bessere Ergebnisse erzielt, braucht natürlich nicht unbedingt Google Docs verwenden.
Da der Teufel bekanntlich im Detail steckt, noch einige Worte zum Schritt vor der eigentlichen Texterkennung per OCR-Software, dem Umwandeln eines PDFs in Bilder:
Es gibt mehr als genug Möglichkeiten eine PDF-Seite in ein Bild umzuwandeln. Wenn es aber um mehr als ein Bild geht, sollte man mit einer Stapelverarbeitung arbeiten.
Hier kann der Automator weiterhelfen. Eine Beschreibung des nötigen Workflows findet sich hier.
Wem damit nichts anfangen kann, der kann auch mit PDF2Image oder ImagesFromPdf, die im Prinzip auch nichts anderes machen:
Darauf folgt der lästige Schritt: Man muss die Bilder mit einem OCR-Programm seiner Wahl erkennen und korrigieren.
Wie gut das Ergebnis dann schließlich ist, hängt dann natürlich auch von der verwendeten Software ab.
Wer keine OCR-Software hat, und nur einzelne Bilder umwandeln möchte, dem kann ich noch newocr.com empfehlen.

Dienstag, 29. März 2011

Unpaginierte PDFs erstellen

PDFs sind sicher nicht schlecht, da man sie auf praktisch jedem System lesen kann.
Im Vergleich zu HTML beispielsweise stört aber manchmal, dass PDFs paginiert sind. Da man aber aus manchen Programmen, wie etwa DEVONthink, unpaginierte PDFs sichern lassen kann, wollte ich wissen, wie dies zu erreichen ist.

SaveNonPaginatedPDF

Hier ein kleines Video von mir, dass zeigt, wie man unter Verwendung eigener Papierformate unpaginierte PDFs erstellt.

Montag, 28. März 2011

Dock per Applescript sperren / entsperren

Aus Dusseligkeit habe ich mir schon des Öfteren den Downloads-Stack oder wahlweise auch den Dokumente-Stack mit der Maus aus dem Dock gezogen. Zwar ist kann man die Ordner schnell wieder ins Dock ziehen, aber zum einen muss man diese dann erstmal wieder so einstellen, wie man es gerne hätte bzw. gewohnt ist (habe ich hier schon mal zusammengeschrieben) – und zum anderen ist die Reihenfolge der Objekte nach einer solchen Wiederherstellungsaktion meist nicht mehr so wie vorher.

Gerade deswegen möchte ich unbedingt vermeiden, meine Stacks aus Versehen in eine Rauchwolke zu verwandeln. Aus diesem Grund schütze ich mein Dock vor Änderungen (siehe oben). Die Sperre lässt sich per Terminal setzten, oder unter Zuhilfenahme von verschieden Apps, wie Docker, TinkerTool und vielen mehr.

Bisher hatte ich mein Dock nur selten verändert, so dass ich die Sperre einfach gesetzt lassen konnte. Allerdings hat sich durch den neuen Mac App Store die Situation geändert. Frisch geladene Apps landen gleich im Dock. Das ist zwar schick, aber bei der Anzahl und Wesen vieler Programme aus dem MAS nicht gerade der rechte Ort. Zudem wäre das Dock so auch sehr schnell massiv überfrachtet. Nach dem ich also ein App aus dem MAS geladen habe, entsperre ich nun i. d. R. mein Dock per Terminal, entferne das App aus dem Dock, und sperre wieder. Da mir das Ganze nun etwas zu mühsam geworden ist, habe ich mich für folgendes selbstgebastelte Applescript-Progrämmchen entschieden, mit dem sich das Dock schnell entsperren und wieder gegen Veränderungen schützen lässt (hier gefunden).

 

display dialog "Lock the Dock..." buttons {"Lock", "Unlock", "Cancel"} default button 3

copy the result as list to {buttonpressed}

if the buttonpressed is "Lock" then

try

tell application "Dock" to quit

do shell script "defaults write com.apple.dock contents-immutable -bool true"

delay 1

tell application "Dock" to activate

end try

else if the buttonpressed is "Unlock" then

try

tell application "Dock" to quit

do shell script "defaults write com.apple.dock contents-immutable -bool false"

delay 1

tell application "Dock" to activate

end try

end if

 

Einfach in den Applescript-Editor einfügen, übersetzen und als Programm abspeichern, z.B. unter "UnLock the Dock". Lässt sich prima aus Spotlight oder einem Applauncher aufrufen.

Have fun.

Sonntag, 13. März 2011

Papierformat beim Drucken von gespeicherten Emails beachten

Und gleich noch ein Tipp zu Mail.app. Wer einzelne alte Emails zwar aufbewahren, sie aber doch mal aus Mail löschen möchte, hat die Möglichkeit einzelne oder auch mehrere Mails in eine RTF-Datei zur einfachen späteren Verwendung zu speichern.

Dazu wählt man die betroffenen Emails in Mail aus und geht im Mail.app-Menu unter Ablage->Sichern unter... oder drückt Cmd+Shift+S.

Beim Sichern kann man auch entscheiden, ob man Anhänge mitgespeichert haben möchte, was ich sehr praktisch finde.

 

Nun will man, zumindest geht es mir manchmal so, die so gespeicherten Emails später wieder ausdrucken.
Leider kommt es beim Ausdrucken gerne zu Problemen, da das Papierformat der Emails in den RTF-Dateien auf US-Brief / Letter gesetzt ist.
Mein (HP) druckt sperrt sich dann regelmäßig, da natürlich DIN-A4-Papier eingelegt ist.

Erst nachdem das Papierformat auf DIN-A4 gewechselt ist, lässt sich eine gesicherte Email bei mir aus einer RTF-Datei drucken.

TextEditPrintEmail

Apple Mail: Anhänge aus Emails entfernen

Manchmal möchte man Emails zwar noch eine weile in Mail.app behalten, aber due angefügten Dateianhänge nicht – besonders wenn diese schwergewichtig sind.
Ziel dieser Übung ist nicht zuletzt auch die Größe der Maildatenbank möglichst klein zu halten und damit Mail.app in guter Form.
Man kann Anhänge von individuellen Emails direkt in Mail und ohne zusätzliche Hilfsmittel entfernen. Trotzdem kommt die Frage häufiger auf. Letztlich ist die Sache aber trivial.
Mann muss nur die betroffenen Emails in Mail.app markieren und aus dem Mail.app-Menü E-Mails->Anhänge entfernen wählen.
Anhänge entfernen

Donnerstag, 10. März 2011

Bilder per Automator fürs Web fertig machen

Mit dem Automator bzw. per Automator lassen sich sehr, sehr viele interessante Sachen machen, mit denen man sich im Alltag das Leben am und mit dem Mac leichter machen kann. Wenn die mitgelieferten Workflows noch nicht reichen, der findet bei Apple und im Web und auf spezifischen Seiten reichlich Nachschub.

Besonders praktisch finde ich die Bildnachbearbeitung direkt aus dem Finder heraus mit selbstgestrickten Automator-Apps oder -Services, z.B. zum (serienmäßigenSkalieren von Bildern.
Eine sehr praktische Automator Action, die man gerade auch für die schnelle und unkomplizierte Vorbereitung von Bildern für die Veröffentlichung auf seiner Webseite oder seinem Blog nutzten kann, ist meiner Meinung nach: Save for Web von Junecloud LCC.
Das schöne an der Save for Web Action ist, dass diese auch mit Adobe Photoshop CS zusammenarbeitet (wer dies nicht besitzt, kann die Save for Web trotzdem nutzen.)

Samstag, 5. März 2011

Fenster auf Titelleiste minimieren: Alternativen und Möglichkeiten

Eine kurze Bemerkung zu einem aus früheren Mac OS X Versionen bekanntes und beliebtes Feature.
Es geht um die Möglichkeit, ein Fenster in die Titelleiste zu minimieren (Collapse to Titlebar, Minimize-in-Place).

Doch bevor ich weiterrede, ein Bild sagt hier mehr als tausend Worte:

CollapseIntoTitlebar

Folgendes animiertes Bild macht die Sache noch klarer.

 

Trotz des Verzichts dieser Funktion in Cupertino kann man diese Funktion dennoch gegen etwas Geld nachrüsten.

Dazu gibt es meines Wissens zwei Möglichkeiten:

1. WindowShade X von unsanity, ein lang bekannter Hersteller von sog. Mac OS X Haxies, d. h. tief ins System eingreifender Modifikationen. Das App funktioniert gut, hat aber auch seine Schattenseiten, installiert weitere nötige Tools, die es zum Laufen braucht mit, und kostet 15 $.

2. Deskovery von neomobili. Bei dem App handelt es sich um einen Fenstermanager mit interessanten Funktionen, unter anderem auch die Möglichkeit Programmfenster per Doppelklick auf die Titelleiste in diese kollabieren zu lassen. Leider kostet das Paket 19 € – auch wenn man nur dieses eine Feature braucht und nutzen möchte.

Für alle die ohne die Möglichkeit Fenster auf die Titelleiste zu minimieren nicht leben können, sind beide Programme allemal empfehlenswert. Mehr noch: Man hat sogar eine, wenn auch kleine, Auswahl und kann sich für die eine oder andere Alternative entscheiden.

WindowShade X ist sicher die ausgereiftere Lösung, hat aber den Nachteil über Rosetta zu laufen und steht damit immer in der Gefahr bei einem Betriebssystemupdate vor dem Aus zu stehen – das könnte angesichts der Veröffentlichung von Mac OS X 10.7 aka Lion auch sehr bald der Fall sein. Siehe MacWelt.

Deskovery merkt man dagegen noch an, dass es sich um eine jüngeres Produkt handelt – im positiven, wie auch negativen Sinne. Deskovery scheint mir aber auf jeden Fall die zukunftsfähigere Lösung zu sein. Persönlich stört mich an der Implementierung der Collapse-Funktion bei Deskovery, dass diese nicht mit dem Ablegen des Fenster im Anwendungsicon kompatible ist. (Systemeinstellung->Dock->"Fenster im Dock ablegen (Programmsymbol)": Haken entfernen)

Vermisst jemand diese Art der Fensterminimierung, habt ihr euch längst umgewöhnt und minimiert Fenster brav ins Dock/AppIcon oder könnte so etwas für euch nützlich sein?

Donnerstag, 3. März 2011

Was ich an meinem Mac hasse

So gut es sich für mich in manchen Aspekten mit Mac OS X und den von mir verwendeten Programmen arbeiten lässt, so hassenswerte Macken hat das System manchmal. Hier meine ganz persönliche Top-3-Liste an Fehlern, die mich teilweise täglich (zumindest heute) heimsuchen und mich zur Weißglut bringen (und mich glatt nach einer Windows-Installation sehnen lassen):

1. Nach der Reaktivierung des Rechners aus dem Ruhezustand spricht die Tastatur nicht mehr (und lässt sich auch nicht mehr dazu überreden)

2. Nach dem Login sind meine Anmeldeobjekte nicht richtig geladen und die Liste der Objekte fast leer (lässt sich zwar einfach beheben, nervt aber sehr.)

3. Fast bei jeder OS X Sitzung setzt irgendwann der Hotkey zum Anspringen der Menüleiste (Strg-F2) aus. (⚠⚡☠☔☃☢☠☣☹ – Behelfslösungen von mir hier)

4. Die Maus setzt teilweise aus (mal geht sie gar nicht, mal geht z.B. nur links-klicken nicht...)

Bin ich damit allein oder geht es anderen auch so? Was nervt auch an eurem Mac bis zum Umfallen?

Dienstag, 1. März 2011

Menulets per Tastatur bedienen: Beispiel AirPort deaktivieren / aktivieren

Meine Bemühungen Mac OS X so weit es geht ohne Maus zu bedienen gedeiht mehr und mehr. Der Griff zur Maus, bzw. zum Tablett oder Trackball, ist nur noch selten nötig; auch wenn es einem das Design des Betriebssystem und der Software an manchen Stellen nicht leicht macht.

Hier noch ein kleiner Tipp, der sich auch in der alltäglichen Arbeit als nützlich erweisen kann.

Manchmal fällt bricht bei mir die Verbindung zum W-Lan-Router zusammen. Häufig ist dann ein Neustart der AirPort-Verbindung nötig.

Dies geht auch ganz einfach per Tastatur:

Ctrl-F8 setzt den Focus auf die Menubar.
Nun kann man mit den Pfeiltasten zu AirPort navigieren.
Pfeil nach unten um das AirPort-Menü zu öffnen, Airport deaktivieren wählen und mit Enter bestätigen.
Und das gleich nochmal zum Aktivieren.

Damit man das ganze auch in Aktion sehen kann, hab ich hier einen kleinen Screencast mit Jing aufgezeichnet (eine feine, kostenlose App).

Schnell und einfach, wie ich finde, ganz ohne Skript und Maus.

Leider erreicht man mit der beschriebenen Methode nicht alle Programme in der Menubar.
Spezielle Menubar-Apps (wie etwa Blast) bieten aber meistens einen Hotkey an, mit dem diese aktiviert werden können.