Tipps & Tricks zu digitaler Medienproduktion, Netzwerken und Servertechnologien | |||||
Thematisch:
Chronologisch:
Alles als PDF Durchsuchen: | kaiser-edv.de » Tipps & Tricks » MacOS » indesign-cs3-postscript-title.html Tipp: [MacOS X] InDesign CS3 und Druckjobs mit Umlauten (09. Mai 2007 — tk)
Das gerade erschienene InDesign 5.0.0 (CS3) zeigt sich recht kreativ im PostScript-Workflow bei der
Heißt die Datei dagegen »IDCS3-Test.indd« so lautet auch der Kommentar korrekterweise »%%Title: IDCS3-Test.indd«
Adobe scheint das Phänomen aktuell noch nicht mal besonders aufregend zu finden sondern verweist darauf,
Solange Adobe keinen Fix bereitstellt, hilft ein wenig Perl-Code, der die garstige Zeile innerhalb des CUPS-Regel-Datei (/etc/cups/fixidcs3jobtitle.convs): application/postscript application/vnd.cups-postscript 20 fixidcs3jobtitle Der CUPS-Filter, der die Reparatur der %%Title-Zeile übernimmt (/usr/libexec/cups/filter/fixidcs3jobtitle): #!/bin/bash
#
# Usage: fixidcs3jobtitle job user title copies options [filename]
#
# Main use: CUPS filter to fix InDesign 5.0.0 (ID CS3) job titles in
# PostScript print jobs containing special characters, eg. umlauts.
# Tested with CUPS 1.1.23
#
#############################################################################
#
# author: Thomas Kaiser <mailto:Thomas.Kaiser@phg-online.de>
# url: http://kaiser-edv.de/en/CUPS/fixidcs3jobtitle-filter
# license: http://www.opensource.org/licenses/bsd-license.php
# date: 1 May 2007 (v0.1.1)
# kudos to: Axel Rose for the Perl code below (hacked together in his limited
# spare time)
#
#############################################################################
#
# Changes
#
# 0.1.1: - fixed version which transparently handles the PS code passed through
#
# 0.1.0: - first official release (30 Apr 2007)
#
#############################################################################
#
# Non-Warranty:
# This script comes with absolutely no warranty.
#
# Use at your own risk!
#
#############################################################################
case $# in
5)
# print job is on stdin
echo "DEBUG: filter postscript stream originating from stdin" >&2
cat | perl -CO -ne 'if(/^%%Title: ([^>]+)>?$/){$m=$1;if($m!~/^FEFF/){print}else{while($m=~/(.{4})/g){$s=$1;next if$s eq"FEFF";last if$s eq"0000";$t.=pack("U*",hex($s));}print"%%Title: $t\n";}}else{print}' | /usr/libexec/cups/filter/pstops "$1" "$2" "$3" "$4" "$5"
;;
6)
# print job is $6
echo "DEBUG: filter postscript stream originating from \"$6\"" >&2
cat "$6" | perl -CO -ne 'if(/^%%Title: ([^>]+)>?$/){$m=$1;if($m!~/^FEFF/){print}else{while($m=~/(.{4})/g){$s=$1;next if$s eq"FEFF";last if$s eq"0000";$t.=pack("U*",hex($s));}print"%%Title: $t\n";}}else{print}' | /usr/libexec/cups/filter/pstops "$1" "$2" "$3" "$4" "$5"
;;
*)
echo "ERROR: $(basename "$0") job user title copies options [filename]" >&2
;;
esacIm Artikel referenzierte URLs: Copyright © Thomas Kaiser, 2007 (erstellt am Mittwoch, 09. Mai 2007) | ||||