Библеотека векторной графики.
От: edikk www.ed.kaliningrad.ru
Дата: 20.11.01 08:42
Оценка:
Как у CorelDraw рисовать. Или материал как самому такую библиотеку сделать.
Re: Библеотека векторной графики.
От: retalik www.airbandits.com/
Дата: 20.11.01 11:27
Оценка:
Здравствуйте edikk, Вы писали:

E>Как у CorelDraw рисовать. Или материал как самому такую библиотеку сделать.


GDI+
Успехов,
Виталий.
Re[2]: Библеотека векторной графики.
От: edikk www.ed.kaliningrad.ru
Дата: 20.11.01 13:02
Оценка:
Здравствуйте retalik, Вы писали:

R>Здравствуйте edikk, Вы писали:


E>>Как у CorelDraw рисовать. Или материал как самому такую библиотеку сделать.


R>GDI+


Если GDI стандартный, то там есть одтн ньюанс (по первые с которым я столкнулся). Одновременно нельзя указать стиль и толщину линии. Толщину можно указывть только при сплошном стиле линии. А все остальные стили только если толщина = 1.
Re[2]: Библеотека векторной графики.
От: Юнусов Булат Россия  
Дата: 20.11.01 19:41
Оценка:
Здравствуйте retalik, Вы писали:

R>Здравствуйте edikk, Вы писали:


E>>Как у CorelDraw рисовать. Или материал как самому такую библиотеку сделать.


R>GDI+


А я когда то до посинения разбирался с исходниками DRAWCLI — в составе самплесов вижуал сей с первой версии шли и помаленьку все сложнели. Правда сейчас уже и не меняются — видимо в самом деле GDI+ в этом смысле рулить будет.
Re[3]: Библеотека векторной графики.
От: Андрей Россия  
Дата: 21.11.01 05:36
Оценка:
Здравствуйте edikk, Вы писали:

E>Если GDI стандартный, то там есть одтн ньюанс (по первые с которым я столкнулся). Одновременно нельзя указать стиль и толщину линии. Толщину можно указывть только при сплошном стиле линии. А все остальные стили только если толщина = 1.


В том-то и дело, что в GDI+ все это можно делать и очень просто, а в стандартном GDI — нет (по крайней мере, в Win9x).
Re[4]: Библеотека векторной графики.
От: edikk www.ed.kaliningrad.ru
Дата: 21.11.01 06:47
Оценка:
Здравствуйте Андрей, Вы писали:

А>Здравствуйте edikk, Вы писали:


E>>Если GDI стандартный, то там есть одтн ньюанс (по первые с которым я столкнулся). Одновременно нельзя указать стиль и толщину линии. Толщину можно указывть только при сплошном стиле линии. А все остальные стили только если толщина = 1.


А>В том-то и дело, что в GDI+ все это можно делать и очень просто, а в стандартном GDI — нет (по крайней мере, в Win9x).


Если не сложно, можно пример именно на GDI+. И еще, бедет ли это работать в Win9x. В WinNT все работает, а вот Win9x не все, даже в хелпе написано, что в Win9x что-то там не поддерживается. Пример:
HDC HDC=GetDC(HWnd);
// create and select object's pen:
LOGBRUSH LogBrush={BS_SOLID,RGB(0,0,0),0};
HPEN HPen=ExtCreatePen(PS_GEOMETRIC | PS_DASHDOTDOT,5,&LogBrush,0,0);
HPEN HPenOld=(HPEN)SelectObject(HDC,HPen);
RoundRect(HDC,10,10,200,200,0,0);
// deselect and destroy pen:
SelectObject(HDC,HPenOld);
DeleteObject(HPen);
ReleaseDC(HWnd,HDC);
В WinNT все как надо, а в Win9x только если толщина = 1 то и стиль ставится заданный.
Re[5]: Библеотека векторной графики.
От: Андрей Россия  
Дата: 21.11.01 07:09
Оценка:
Здравствуйте edikk, Вы писали:

E>Если не сложно, можно пример именно на GDI+.



Пример:
REAL dashValues[4] = {5, 2, 15, 4};
Pen blackPen(Color(255, 0, 0, 0), 5);
blackPen.SetDashPattern(dashValues, 4);
stat = graphics.DrawLine(&blackPen, Point(5, 5), Point(405, 5));


Результат:



Я не проверял, но должно работать и под Win9x.
Чтобы пользоваться GDI+, нужно установить Platform SDK и скачать gdiplus.dll (в WindowsXP входит в поставку).
Re[6]: Библеотека векторной графики.
От: retalik www.airbandits.com/
Дата: 21.11.01 07:12
Оценка:
Здравствуйте Андрей, Вы писали:

А>Здравствуйте edikk, Вы писали:


E>>Если не сложно, можно пример именно на GDI+.


А>Пример:

А>
А>REAL dashValues[4] = {5, 2, 15, 4};
А>Pen blackPen(Color(255, 0, 0, 0), 5);
А>blackPen.SetDashPattern(dashValues, 4);
А>stat = graphics.DrawLine(&blackPen, Point(5, 5), Point(405, 5));
А>


А>Результат:

А>
А>
Классный результат ('c:\temp\sample.jpg')

А>Я не проверял, но должно работать и под Win9x.

А>Чтобы пользоваться GDI+, нужно установить Platform SDK и скачать gdiplus.dll (в WindowsXP входит в поставку).
Под 95 работать не будет. Только начиная с 98. (Хотя... есть кое-какие мысли )
Успехов,
Виталий.
Re[7]: Библеотека векторной графики.
От: Андрей Россия  
Дата: 21.11.01 07:19
Оценка:
Здравствуйте retalik, Вы писали:

А>>Результат:

А>>
А>>
R>Классный результат ('c:\temp\sample.jpg')
Виноват, я не знаю, как сюда картинки вставлять. Если не сложно, напиши.

R>Под 95 работать не будет. Только начиная с 98. (Хотя... есть кое-какие мысли )

Да, согласен. Но 95-я — это уже древность.
Re[8]: Библеотека векторной графики.
От: retalik www.airbandits.com/
Дата: 21.11.01 07:26
Оценка:
Здравствуйте Андрей, Вы писали:

R>>Классный результат ('c:\temp\sample.jpg')

А>Виноват, я не знаю, как сюда картинки вставлять. Если не сложно, напиши.
Да все просто: надо ссылку привести рабочую (например, с существующего HTTP-сервера).
А с домашнего компьютера не получится.

R>>Под 95 работать не будет. Только начиная с 98. (Хотя... есть кое-какие мысли )

А>Да, согласен. Но 95-я — это уже древность.
Успехов,
Виталий.
Re[9]: Библеотека векторной графики.
От: Андрей Россия  
Дата: 21.11.01 07:32
Оценка:
Здравствуйте retalik, Вы писали:
R>Да все просто: надо ссылку привести рабочую (например, с существующего HTTP-сервера).
R>А с домашнего компьютера не получится.

Спасибо, понял.
Re[7]: Библеотека векторной графики.
От: edikk www.ed.kaliningrad.ru
Дата: 21.11.01 07:39
Оценка:
Здравствуйте retalik, Вы писали:

R>Здравствуйте Андрей, Вы писали:


А>>Здравствуйте edikk, Вы писали:


E>>>Если не сложно, можно пример именно на GDI+.


А>>Пример:

А>>
А>>REAL dashValues[4] = {5, 2, 15, 4};
А>>Pen blackPen(Color(255, 0, 0, 0), 5);
А>>blackPen.SetDashPattern(dashValues, 4);
А>>stat = graphics.DrawLine(&blackPen, Point(5, 5), Point(405, 5));
А>>


А>>Результат:

А>>
А>>
R>Классный результат :)) ('c:\temp\sample.jpg')

А>>Я не проверял, но должно работать и под Win9x.

А>>Чтобы пользоваться GDI+, нужно установить Platform SDK и скачать gdiplus.dll (в WindowsXP входит в поставку).
R>Под 95 работать не будет. Только начиная с 98. (Хотя... есть кое-какие мысли :) )

Так вот под 95 тоже хотелось бы что бы работало. Я взял FreeHand 9, так он все отлично делал и в 95 и в НТ.
А где взять Platform SDK?
Re[8]: Библеотека векторной графики.
От: Андрей Россия  
Дата: 21.11.01 07:56
Оценка:
Здравствуйте edikk, Вы писали:

E>А где взять Platform SDK?


http://www.microsoft.com/msdownload/platformsdk
Re[9]: Библеотека векторной графики.
От: adontz Грузия http://adontz.wordpress.com/
Дата: 21.11.01 08:06
Оценка:
Здравствуйте Андрей, Вы писали:

А>Здравствуйте edikk, Вы писали:


E>>А где взять Platform SDK?


А>http://www.microsoft.com/msdownload/platformsdk


Ну вы послали...
Лучше на компакте купи
A journey of a thousand miles must begin with a single step © Lau Tsu
Re[10]: Библеотека векторной графики.
От: Андрей Россия  
Дата: 21.11.01 08:39
Оценка:
Здравствуйте adontz, Вы писали:

A>Ну вы послали...

A>Лучше на компакте купи

Если есть возможность купить последнюю версию, то лучше.
Re[10]: Библеотека векторной графики.
От: edikk www.ed.kaliningrad.ru
Дата: 21.11.01 08:44
Оценка:
Здравствуйте adontz, Вы писали:

A>Здравствуйте Андрей, Вы писали:


А>>Здравствуйте edikk, Вы писали:


E>>>А где взять Platform SDK?


А>>http://www.microsoft.com/msdownload/platformsdk


A>Ну вы послали...

A>Лучше на компакте купи

Я то могу качнуть, но если найти в архиве (1..5 файлов). А то на фтп куча файлов и каталогов, замучаешься качать.
Re[11]: Библеотека векторной графики.
От: adontz Грузия http://adontz.wordpress.com/
Дата: 21.11.01 08:47
Оценка:
Здравствуйте edikk, Вы писали:

E>Я то могу качнуть, но если найти в архиве (1..5 файлов). А то на фтп куча файлов и каталогов, замучаешься качать.


GetRight ReGet и качать быстрее будет...
ReGet кстати умеет качать с подкаталогами так что в данном случае может быть удобнее
A journey of a thousand miles must begin with a single step © Lau Tsu
Re[12]: Библеотека векторной графики.
От: adontz Грузия http://adontz.wordpress.com/
Дата: 21.11.01 08:53
Оценка:
Здравствуйте adontz, Вы писали:
Только будь осторожнее у ReGet позорная привычка хапать весь трафик так, что конект через 3-4 секунды из общественного станет персональным
http://www.reget.com/redir/redir.asp?product=dx&lang=default&link=free
A journey of a thousand miles must begin with a single step © Lau Tsu
Re[7]: Библеотека векторной графики.
От: edikk www.ed.kaliningrad.ru
Дата: 21.11.01 09:14
Оценка:
Здравствуйте retalik, Вы писали:

R>Здравствуйте Андрей, Вы писали:


А>>Здравствуйте edikk, Вы писали:


E>>>Если не сложно, можно пример именно на GDI+.


А>>Пример:

А>>
А>>REAL dashValues[4] = {5, 2, 15, 4};
А>>Pen blackPen(Color(255, 0, 0, 0), 5);
А>>blackPen.SetDashPattern(dashValues, 4);
А>>stat = graphics.DrawLine(&blackPen, Point(5, 5), Point(405, 5));
А>>


А>>Результат:

А>>
А>>
R>Классный результат :)) ('c:\temp\sample.jpg')

А>>Я не проверял, но должно работать и под Win9x.

А>>Чтобы пользоваться GDI+, нужно установить Platform SDK и скачать gdiplus.dll (в WindowsXP входит в поставку).
R>Под 95 работать не будет. Только начиная с 98. (Хотя... есть кое-какие мысли :) )

И все таки. Я взял FreeHand 9 запустил по НТ (2000), нарисовал прямоуголник, и задал толщину линии 5 и стиль пунктир. Все получилось. То же самое сделал по 95 OSR2, результат такой же, все ок. А вот у меня средствами GDI под 95 не получилось так как под НТ :( . Я посмотрел в FreeHand-е, там нет упоминания о GDI+(gdiplus.dll), вызываются стандартная gdi32.dll. Как у них получилось такое? :???:
Re[8]: Библеотека векторной графики.
От: Андрей Россия  
Дата: 21.11.01 09:28
Оценка:
Здравствуйте edikk, Вы писали:
Как у них получилось такое?

Как-как, ручками. Можно сделать ВСЕ (или почти все)
Никто не мешает тебе написать свои функции вывода разнообразных линий на основе GDI. Работать будет везде (если правильно напишешь). Тебе-же предлагают не мучиться, а использовать готовые средства. Если это тебя не устраивает, то придется писать самому. Может быть и есть стандартные средства, но я их не видел. Мы в своих проектах пока используем самодельные функции, но планируем переходить на GDI+.
Кстати, а зачем тебе совместимость с Win95? Неужели у тебя есть машины, на которых Win98 не работает ?
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.