Ich arbeite an einem Projekt, das im Kern das Hinzufügen von Text zu einem Bild beinhaltet, als Beispiel für ein Hintergrundbild (B) und etwas Text in einem angegebene Schriftart, Schriftgröße und Schriftart (A) die beide werden zusammen gemischt, um (C): So fügen Sie Text mit dem CMYK ColorSpace in .NET hinzu 4
das schließliche Ergebnis ist zu gehen mit diesen Bildern zu drucken, so dass die Hintergründe des CMYK-Farbraum verwenden und ich müssen den gesamten Prozess in CMYK behalten oder die Farben beim Drucken falsch aussehen. (Anmerkung: ausgezeichnete article on Color Spaces and .NET on CodeProject)
ich verschiedene Weise versucht haben, diese Bilder von Compositing zusammen:
- System.Drawing implizit konvertiert alles RGB
- System.Windows.Media.Imaging - nein Compositing-Methoden
- System.XAML/WPF - sehr vielversprechend jedoch funktioniert RenderTargetBitmap nicht in PixelFormats.Cmyk32 (wirft eine ArgumentException).
Ich habe betrachtet, aber nicht Dritte kommerzielle Komponenten versucht, da die Preise steigen zu beginnen scheinen hoch und weiter:
- Graphics Mill (~ US $ 1800 ab 12/2010)
- Atalasoft DotImage (~ US $ 3300 Stand 12/2010)
Ist das in .NET 4 möglich?
Edit: Weil jemand anderes könnte etwas etwas anders und konvertieren tun wollen nur ein beliebiges Format, dass Windows.System.Media.Imaging
der Lage ist, hier in CMYK zu laden ist der Code, die ich verwendet habe:
var bitmapConverter = new FormatConvertedBitmap();
bitmapConverter.BeginInit();
bitmapConverter.Source = sourceImage;
bitmapConverter.DestinationFormat = PixelFormats.Cmyk32;
bitmapConverter.EndInit();
Zur Klärung der Der obige Code konvertiert eine Bildquelle in CMYK32 (keine Transparenz), aber wenn Sie bestimmte Klassen verwenden (nämlich RenderTargetBitmap
wird die obige ImageSource eine Ausnahme auslösen).
Vielen Dank für die Buchung, ich habe mich umgesehen und einige Ressourcen für die Konvertierung von Bitmap-Formaten mit .NET gefunden (ein Code-Beispiel in meiner Frage für googlers), es ist der Schlüssel für die Qualität der gedruckten Bilder für die Quellbilder im CMYK-Format gehalten werden. –
Ich habe mir Atlasoft DotImage angeschaut, die "Pro" -Version scheint zu tun, was ich machen will, allerdings kostet sie etwa 3000 US-Dollar. –
Beachten Sie, dass die Umwandlung von RGB zu CMYK nicht umkehrbar ist - Sie verlieren Farbinformationen. –