File: /~heha/hs/sch2wmf/sch2emf.zip/sch2emf.txt

SCH2EMF:	Konvertiert Schaltpläne und Boards zu Windows Enhanced Metafiles.
Status:		experimentell, in Entwicklung
Voraussetzung:	Eagle 5.01
Hinweis:	Die entstehende EMF-Datei ist nicht verarbeitbar unter Windows 9x/Me!
Fehlt noch:	Mehrsprachigkeit, direkte Clipboard-Ausgabe, GROUP-Selektionsauswahl

Dialog

Der Dialog ist so gemacht, dass vorher Informationen über den Schaltplan
oder das Board eingesammelt werden und dann nur jene Optionen zur Auswahl
gestellt werden, die überhaupt relevant sind.
Beispielsweise erscheint nichts über die Ersetzung der FIXED-Schrift,
wenn keine FIXED-Schrift sichtbar ist.

Kommandozeilen-Argumente für sch2emf

sch2emf akzeptiert Argumente im AWK-Stil, also <Variable>=<Wert>,
sowie genau einen Dateinamen.
Daraus folgt, als Einschränkung wie bei AWK, dass der Dateiname kein "="
enthalten darf.
Erscheint der Dialog, sind dies Dialog-Vorgaben.

======Variable======	=====Werte=====	Bedeutung
lang		kurz	Vorgabe	möglich

Debug			0		zum Debuggen von sch2emf.ulp
				0	keine Debugausgabe
				1	Kreise am Text-Ursprung ausgeben
				2	Messageboxen bei vielen Aktionen
PaletteType	p	*		Ausgabe-Palette (Option->User-Interface)
				0	schwarzweiß
				1	bunt auf weiß
				2	bunt auf schwarz
				3	bunt auf farbig
HatchType	h	*		Schraffierte Layer ausgeben
				0	ausgemalt
				1	mit Windows-Schraffur (transparent)
				2	mit Bitmap-Schraffur (deckend, wie Eagle)
AllPages	a	0		Mehrseitige Schaltpläne
				0	nur aktuelle Seite ausgeben
				1	alle Seiten in nummerierten Dateien
Flipped		f	*		Spiegelverkehrte Ausgabe (nur Board)
				0	nicht gespiegelt
				1	gespiegelt (an Y-Achse)
Trans		t	*		Pseudotransparente Ausgabe (wie Eagle)
				0	Layer deckend
				1	Layer pseudotransparent (außer LastLayers)
OutBkgnd	b	*		Hintergrund-Flächenfüllung ausgeben
				0	nein (Freiflächen sind transparent)
				1	ja (Freiflächen in Hintergrundfarbe)
DoNegate	n	1		Negationsstriche wie Eagle 5
				0	keine Negationsstriche
				1	Texte mit "!" entsprechend umwandeln
Dialog		d	1		Dialog-Erscheinungsbild
				0	Kein Dialog! Mit Dateiname ist das ULP vollautomatisch.
				1	Einfacher Dialog
				2	Kompletter Dialog
LastLayers	y	""		Zuletzt auszugebende Layer (stets deckend)
				<s>	als Zeichenkette wie bei psselect
Vector		V	"Ab"		Schriftersetzung für Vektor-Schriftart
Proportional	P	"A"		Schriftersetzung für Proportional-Schriftart
Fixed		F	"C"		Schriftersetzung für Fixed-Schriftart
				<s>	Langform: /(Vector|Arial|Courier|Times)(,b?i?)?/
				<s>	Kurzform: /[VACT][,bi]*/ (Lies als regulärer Ausdruck!)
CheckRipupPoly	r	1		Prüfung auf nicht geRATSNESTe Signal-Polygone (nur Board)
				0	keine Prüfung (solche Polygone werden nicht ausgegeben)
				1	Prüfung beim ULP-Start

* - Die Vorgabe ist von anderen Vorgaben abhängig:
PaletteType:	Je nach aktueller Eagle-Einstellung
HatchType:	bei Schaltplan ausgefüllt (also = 0),
		bei komplexen Eagle-Schraffuren = 2 (nur Board wird geprüft)
Flipped:	Bei Vorhandensein von bPlace und Abwesenheit von tPlace = 1,
		sonst 0
Trans,
OutBkgnd:	Je nach PaletteType, dass es wie in Eagle aussieht

Hinweis zu PaletteType:
Die Kombination PaletteType=3 und Trans=1 erzeugt eine Ausgabe von
Komplementärfarben auf weißem Grund.
Das ergibt ein gutes Ergebnis für Boards, die bunt-auf-schwarz entwickelt
und bunt-auf-weiß ausgedruckt werden sollen
(und man sich das Erstellen geeigneter Paletten ersparen möchte).
Der Ausdruck via PDF ist damit unbefriedigend, ist ein Windows-Fehler.

Die Kombination PaletteType=0 und Trans=1 hat nur sichtbare Wirkung
bei Bitmap-Schraffur, diese wird transparent.

Überhaupt erfolgt eine korrekte Ausgabe auf Drucker bei Trans=1
anscheinend nur bei GDI-Druckern.
Bei PCL, PDF und PostScript wird alles deckend, Windows-Schraffuren
erscheinen sauber, aber zu groß, Bitmap-Schraffuren dagegen grobpixlig.
Hier müsste der Windows-Postscript-Druckertreiber verbessert werden.
Wie es mit Adobe Acrobat läuft, konnte nicht festgestellt werden.

Hinweis zu HatchType:
Die Ausgabe von breiten Linien und Füllflächen erfolgt ohne Eagle-typische
dünne durchgezogene Randlinien.
Solche Randlinien würden die Ausgabe von Polygonen erfordern, was die
Datei erheblich größer macht und zur Darstellung unterschiedlicher
Strichbreiten führt, was gerade vermieden werden sollte.
Wer solche exakte Darstellung benötigt, verwendet SCH2WMF und aktiviert
dabei alle Ersetzungsvorgänge.

Hinweis zu String-Eingaben:
Diese sind stets ohne "" anzugeben!
Es gibt keine Eingaben, die Leerzeichen erfordern.

Hinweis zu LastLayers:
Korrekte Angaben sind "25,27", "25-28" oder auch "28-25,52,51".
Nicht sichtbare Layer werden trotzdem nicht ausgegeben;
es erfolgt keine Prüfung, ob die angegebenen Layer gerade sichtbar sind.

henni, 081013
Detected encoding: ASCII (7 bit)8