Respect The Fabulous Manual! Μόνο που αυτή τη φορά είναι πολύ fabulous και τα samples δεν δουλεύουν από μόνα τους. Θέλει λίγο κυνήγι γύρω - γύρω μέχρι να βρεις τί χρειάζεται. Αντιγράφοντας λοιπόν κώδικα από τις RenderTargetBitmap και PngBitmapEncoder ...
//var typeFamilies=Fonts.GetFontFamilies("c:\fonts");
var typeFamilies = Fonts.SystemFontFamilies;
var typeFace=new Typeface(typeFamilies.First(),
System.Windows.FontStyles.Italic,
FontWeights.Black,
FontStretches.Condensed);
FormattedText text = new FormattedText(this.textBox1.Text,
new CultureInfo("en-us"),
System.Windows.FlowDirection.LeftToRight,
typeFace,
20,
System.Windows.Media.Brushes.Blue);
DrawingVisual drawingVisual = new DrawingVisual();
DrawingContext drawingContext = drawingVisual.RenderOpen();
drawingContext.DrawText(text, new System.Windows.Point(2, 2));
drawingContext.Close();
RenderTargetBitmap bmp = new RenderTargetBitmap(180, 180, 120, 96, PixelFormats.Default);
bmp.Render(drawingVisual);
using (FileStream stream = new FileStream("new.png", FileMode.Create))
{
PngBitmapEncoder encoder = new PngBitmapEncoder();
encoder.Interlace = PngInterlaceOption.On;
encoder.Frames.Add(BitmapFrame.Create(bmp));
encoder.Save(stream);
stream.Close();
}
Το σίγουρο είναι ότι θα πρέπει να μαζέψεις ολίγον τον κώδικα αλλά ... αυτό αφήνεται ως άσκηση στον αναγνώστη.
Παναγιώτης Καναβός, Freelancer
Twitter: http://www.twitter.com/pkanavos