Guten Abend,
ich wollte Fragen, ob mir jemand bei meinem Problem helfen könnte:
Ich möchte, dass auf ein bestimmten Bild (eg.bmp) ein Text (label1.Text) geschrieben wird, und anschließend als neue bitmap (eg_save.bmp) gespeichert wird. Leider Funktioniert das nicht so wie ich möchte.. deshalb bitte ich um Hilfe.
Soweit tut er alles, bis auf dass er den Text mit in die neue Bitmap speichert. Ich kenne mich jetzt nicht soo gut mit C# aus, also vergibt mir, wenn es eigenzlich ganz simpel ist.
Wäre toll, wenn mir bei dem Problem jemand helfen könnte, da ich einfach nicht schlau daraus werde.
E: in einem anderen Forum hat einer Dies geschrieben:
Image-Objekt aus deinem Bild erstellen
Graphics-Objekt vom Image-Objekt erstellen
Graphics.DrawString verwenden
Graphics disposen
Image saven
Image disposen
den bisherigen Code habe ich dadurch und viel Google und dem Galileo-Computing C# Buch geschrieben..
Dein ganzer Ansatz mit dem Paint Event ist etwas seltsam. Wenn du nur Bilder verändern möchtest, die du aus einer Datei lädst, ist das eigentlich unnötig. Stattdessen kannst du einfach das Bild laden, das dazugehörige Graphics Objekt instanziieren, mit diesem auf dem Bild zeichnen und das Bild im Anschluss speichern.
Das könnte dann in etwa so aussehen:
Code:
private bool DrawString()
{
string basePath = Application.StartupPath + "\\eg.bmp";
string savePath = Application.StartupPath + "\\eg_save.bmp";
SolidBrush pinsel = new SolidBrush(Color.Black);
Font f = new Font("Arial", 16);
Pen stift = new Pen(Color.Black, 2);
try
{
Image newImage = Image.FromFile(basePath);
Graphics g = Graphics.FromImage(newImage);
g.DrawString("Test", f, pinsel, 10, 10);
newImage.Save(savePath);
return true;
} catch(Exception) {}
return false;
}
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.IO;
using System.Drawing.Printing;
using System.Drawing.Imaging;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private bool DrawString()
{
string basePath = Application.StartupPath + "\\eg.bmp";
string savePath = Application.StartupPath + "\\eg_save.bmp";
SolidBrush pinsel = new SolidBrush(Color.Black);
Font f = new Font("Arial", 16);
Pen stift = new Pen(Color.Black, 2);
Ein konstanter Rückgabewert (hier: true) macht keinen Sinn. Wenn du das so umsetzt, sollte die Funktion void zurückgeben.
Du brauchst dein Bild nicht erst als JPEG speichern und dann laden. Mit der Image Klasse hast du ja schon eine abstrakte, recht generische Klasse an der Hand, somit reicht es wenn du dir per Image.FromFile() ein Image Objekt instanziierst, dieses dann veränderst und einfach beim Speichern das gewünschte Format festlegst, sprich:
Okay, danke. Ich habs einfach mal so gelassen, da es so Funktioniert hat
Ich glaube, man kann den Thread nun closen, da die Frage beantwortet wurde.
Nochmals vielen Dank!
mfg
Metin2 Multihack by xKeinjalx l Hilfe l Hilfe l Hilfe Pleasy 03/18/2012 - Metin2 Private Server - 2 Replies Hallo Elit(epvp)ers Mitglieder.
Ich habe Multihack von xkEinjalx herunter geladet.
Der Problem ist bei Metin2 Patcher.
Wenn Man Metin2 mit Patcher öffnet kann man nicht .dll Injecten!
Man Musst also mit Metin2client.bin in Metin2client.exe unbennen und öffnen.
Es kommt Metin2 Fenster, dann funkt es schon, aber es verbindet nicht zu Server.Es bleibt bei Du wirst mit dem Server verbunden stecken aber wenn man mit Metin2 Patcher öffnet es Loggt ein nur der Hackt geht dann nicht.
Der Link...