собсвенно говоря задача:
взять шаблон (главная задача чтобы координаты элементов шаблона можно было задавать дробной велечиной, те двигать элементы шаблона на расстояние от одного пикселя), затем в этот шаблон подставлять некоторые текстовые значение и выводить на экран.
пути решения:
отрисовывать всю картинку через System.Drawing по отдельности каждый элемент, всмысе DrawLine,DrawString and etc...
взять нарисовать векторную картинку, загрузить ее, а места под текст опятьже отрисовывать через DrawString по координатом.
нарисовать форму, а затем зделать из нее картинку (тут проблема с точностью, см постановку задачи)
кто што придложит для решения?
хотелось бы создать шаблон в каком-то готовом редакторе, зацепить его в коде и передовать только значение текстовых полей...
07.08.08 21:53: Перенесено модератором из '.NET' — AndrewVK
Здравствуйте, pumpurumer, Вы писали
Идеальный вариант для таких случаев — EMF (Enchanced MetaFile), суть векторный формат.
Если точнее, то это запись последовательности команд GDI, которую можно распарсить и к которой можно применить
пространственные трансформации.
Кроме того, EMF можно редактировать в CorelDraw, AutoCAD и некоторых других векторных редакторах.
Удачи
На опушке за околицей мужики строили коровник.
Работали споро и весело. Получалось х**во.
нагуглил пример навешивания собсвенной функции в обработчик записей emf файла, все
private bool MetafileCallback(
EmfPlusRecordType recordType,
int flags,
int dataSize,
IntPtr data,
PlayRecordCallback callbackData)
{
int i = 0;
byte[] dataArray = null;
if (data != IntPtr.Zero)
{
// Copy the unmanaged record to a managed byte buffer
// that can be used by PlayRecord.
dataArray = new byte[dataSize];
Marshal.Copy(data, dataArray, 0, dataSize);
}
metafile1.PlayRecord(recordType, flags, dataSize, dataArray);
return true;
}
все бы нечего, только в dataArray ничего похожего на строки текста из картинки чето нету. а фича нифига недокументирована, поделитесь опытом кто может?
A>Здравствуйте, pumpurumer, Вы писали
A>Идеальный вариант для таких случаев — EMF (Enchanced MetaFile), суть векторный формат.
A>Если точнее, то это запись последовательности команд GDI, которую можно распарсить и к которой можно применить
A>пространственные трансформации.
A>Кроме того, EMF можно редактировать в CorelDraw, AutoCAD и некоторых других векторных редакторах.
A>Удачи