Farbtafeln mit InDesign

Manchmal geht probieren über studieren. Zum Beispiel wenn man eine neue Sonderfarbe mit Euroskala-Farben überdrucken möchte. Zwar gibt es am Bildschirm eine „Überdruck simulieren“ Funktion, jedoch ist diese nicht zuverlässig (das kann verschiedene Gründe haben, z.B. ein zu kleiner Farbraum des Bildschirms). Auch ein Digitalproof kann nur bedingt das tatsächliche Druckergebnis simulieren (auch hier kann der Farbraum zu klein sein). Sonderfarben verhalten sich manchmal im Überdruck mit anderen Farben ganz anders als erwartet (durch Rückspaltung usw.)

Es gibt also Situationen, in denen man um einen Probedruck nicht herum kommt. Praktisch wäre eine Farbtafel, die alle Nuancen der Sonderfarbe im Überdruck mit den Euroskala-Farben enthält. Solch eine Farbtafel kann man natürlich manuell mit z.B.  InDesign herstellen. Das ist aber mühsam und langweilig.

Spannender und weitaus produktiver wirds mit einem InDesign-Script. InDesign versteht zwei Scriptsprachen: AppleScript und Javascript. Ich nutze Javascript aus Gründen (vor allem, weil ich keine teuren Äpfel mag).
Das Script erzeugt ein neues Dokument und erstellt Seiten im Format 21x21cm und plaziert darauf die Testfelder. Pro Feld wird ein neues Farbfeld angelegt. Pro Sonderfarb-Abstufung muss zusätzlich ein Tint erstellt werden und das Atrribut „Fläche überdrucken“ auf das Rechteck angewendet werden.

Nach wenigen Sekunden zeigt InDesign die fertige Farbtafel an:

Farbtafel Simulation
Farbtafel Cyan/Magenta und simulierter Sonderfarbe

Das ist der Quellcode zum Erzeugen der Tafel, das Script im InDesign Scripting-Panel ablegen:

 

GunLoop

GunLoop (work in progress) ist ein Programm zum „Musik“ machen. GunLoop sammelt Samples über ein Mikrofon und spielt sie in zufälliger Reihenfolge wieder ab. Mit der tarsosDSP-Library werden den Samples Effekte hinzugefügt oder die Geschwindigkeit verändert. Ein Oszi zeigt den produzierten Sound und den Mikrofoninput grafisch an. Das Mikrofon darf nicht Rückkoppeln und nicht die Soundausgabe neu aufnehmen, sonst kommt es zum Overkill. Es muss also entweder ein geeignetes Mirkofon verwendet werden (z.B. Gesangsmikrofon) oder die Funktion „Echolöschung“ im Soundtreiber aktiviert werden. Letztere Option bieten die meisten Soundkarten an und ist z.B. auch für die Nutzung von Skype essentiell.

Alle Samples werden im Arbeitsspeicher gehalten, damit keine Latenzen durch Festplatten Schreib- und Lesezugriffe auftreten. Nach 99 Samples wird das älteste Sample gelöscht. Da liegt der Speicherplatzbedarf bei ca. 500MB (das hängt von der Länge der einzelnen Samples ab). Bei der Verwendung von tarsosDSP muss man darauf achten keine Memory-Leaks zu erzeugen, denn wenn Ressourcen nicht korrekt geschlossen werden verbleiben große Datenmengen im Speicher und nach wenigen Minuten kommt es zum OutOfMemory-Ausnahmefehler und das Programm stürzt ab.

Ein Loop ist in 16 Schritte aufgeteilt. Aufgenommene Samples werden in jedem Durchlauf beim selben Schritt gestartet und mit zufälliger Lautstärke und Effekten abgespielt. Wenn über 30 Sekunden kein neues Sample aufgenommen wurde, wird die Anzahl der abgespielten Samples langsam gesenkt, bis es endlich wieder ruhig wird. Das Programm kann im Vollbild-Modus und oder als Fenster gestartet werden. Mit Klick auf GunLoop->Window bzw. GunLoop->Fullscreen wird die Einstellung gespeichert. Mit GunLoop->Save können die erzeugten Samples als Wav-Dateien gespeichert werden – mit File->Load können alte Samples geladen werden. Die Funktion lädt die Samples an die ursprünglichen Positionen (Steps). Die Option GunLoop->AutoLoader lädt die 99 neusten Samples aus dem zuletzt verwendeten Ordner. Mit dem Menüpunkt GunLoop->Choose input kann die zu benutzende Audioline ausgewählt werden. Das Dialogfenster öffnet sich außerdem automatisch beim ersten Start und speichert die Auswahl ab.

GunLoop in Aktion, in echt hakt´s ein bisschen weniger

 

 

 

Soundbeispiel:

 

Sourcecode:

 

Download:

Lade eine Kopie des Programmes herunter: GunLoop.jar

AppDancer

Dance mal wieder richtig App!

Verbinde Dein Smartphone mit dem WLAN „APPDANCER“
Öffne einen Browser (wenn nicht automatisch geöffnet wird) und navigiere auf eine beliebige Seite (z.B. http://dance.app)
Um das Spiel zu starten positioniere Dich vor der Kamera und dann Dance App !
Das Spiel startet automatisch, sobald ein Tanz erkannt wird – also bewegt Euch!
Solltest Du Level fünf oder höher erreichen, wirst Du in die „HALL OF FAME“ aufgenommen!
Viel Spaß beim Abrocken!

Setup:

  • raspberry pi
  • raspbian
  • mjpeg streamer
  • opencv
  • raspicam
  • hostapd
  • dnsmasq
  • WLAN-Antenne

Ein C++ Programm nimmt Bilder von der Raspicam auf und analysiert Bewegung. Bewegung wird als Tanz interpretiert – also bloßes Herumstehen vor der Kamera bringt nichts, man wird zu Hintergrund! Mit einer Background-Subtraction werden die bewegten Bildausschnitte extrahiert und auf dem Bild einer Bühne eingefügt. Das so entstandene Bild wird per WLAN und MJpeg-Stream versendet auf das Smartphone des Nutzers und dort angezeigt. Je höher das Level, also je länger und intensiver getanzt wird, umso psychedelischer werden die Farben.

Ein schöner Spaß für Groß und Klein!

 

Sourcecode:

In der Bounsrunde regnet´s Konfetti, aber höchstens 9999 zu gleich!

 

GunImposer

GunImposer ist ein Programm zum Herstellen von Sammelformen. Seine Stärken sind Geschwindigkeit und die Möglichkeit sehr viele Seiten verarbeiten zu können.

Problem:

  • Ein pdf-Dokument mit 9999 Gutscheinen soll gedruckt werden
  • Die Reihenfolge soll erhalten bleiben
  • Die variablen Daten sollen einen komplizierten Hintergrund bekommen
  • Zwischenschnitte müssen definierbar sein
  • Berücksichtigung von Beschnittzugabe
  • Keine Skalierung der Daten vornehmen (wie bei Acrobat Mehrfach-Ausgabe)

Lösung:

Java-Programm GunImposer mit Verwendung der Apache pdfBox-Library. Mit GunImposer erstellt man fertige Druckbögen mit variablen Daten. Mit Acrobat kann man der erzeugten pdf-Datei einen Hintergrund für alle Seiten verpassen. Dadurch wird der Hintergrund nur einmal hinzugefügt wodurch die Dateigröße enorm sinkt, da alle sich wiederholenden Inhalte nur einmal gespeichert werden. Oder man nutzt die pdf ohne Hintergrund und verwendet dann den Variablen Datendruck VDP, wenn man zB Fiery Command WorkStation hat.

Workflow:

  • Bogenformat einrichten
  • Schema Editor für Nutzenanordnung
  • Datei laden (alle Seiten sollten die gleiche Größe haben)
  • Sortierung wählen, so dass Stapel in Reihenfolge gedruckt werden
  • Optional: Seiten duplizieren
  • Optional: Schnittmarken erzeugen
  • Feature: GunImposer speichert die Eingaben und lädt sie beim nächsten Start neu
GunImposer Schema-Editor

 

Ergebnis:

GunImposer Druckbogen Seite 1
GunImposer Druckbogen Seite 1250

Auf der letzten Seite fehlt ein Nutzen, da das Dokument 9999 Seiten hatte. Die härteste Nuss an dem Programm war die korrekte Sortierung zu erzielen – einem eigentlich einfachen mathematischen Problem.

 

Sourcecode:

Wie berechnet sich die Anzahl der Druckbögen?

 

Interesse:

Frag mich nach einer Kopie des Programms.

Visitenkarten Generator

Wir leben in modernen Zeiten, da bleibt dem Ingenieur kaum Zeit zur Gestaltung einer eigenen Visitenkarte. Oder ein Herr Meir bekommt dreimal die falsche Mayer/Meier/Müller-Karte verpasst.  Daher musste ein Tool her um die Probleme zu lösen!

Setup:

  • php
  • javascript (jQuery)
  • xml-parser
  • pdf Erezugung mit tcpdf
  • Color Klasse überschreiben für CMYK-Unterstützung
  • phpmailer (hier deaktiviert) für Nachricht an Bestellung

Hier könnt ihr damit spielen:

  • als User: Test123 Passwort: Test123
  • als Admin: Admin123 Passwort: Admin123