[Решен] Как да сменям цвета на Svg икони?

Page  
2

December 19, 2011

Mart Mart
Ant Farmer
42 posts

Значи, това дето го говорех по-горе за прозрачностите нещо не става. Като задам цвят с прозрачност:

  1. additionalColor = QColor(generalColor);
  2. additionalColor.setAlpha(128);

или дори така:

  1. QColor btnsIconColor = QColor(102, 102, 102, 128);

…не става. SVG-то нещо не възприема прозрачности или нещо аз не правя като хората.

Обаче става с онези две функции:

  1. //additionalColor = generalColor.darker(120);
  2. additionalColor = generalColor.lighter(120);

Чрез тях може потребителски зададения цвят (generalColor) да се потъмни или осветли и да се подаде като допълнителен цвят (additionalColor) на някои от детайлите на иконите и да стане по-разчупено, без да е шарения.

QLatin1String пък няма .arg() и става по-сложно да го използвам, а за тези икони паметта не е кой-знае каква че да я пестя.

December 20, 2011

Mart Mart
Ant Farmer
42 posts

M_3_T wrote:
Значи, това дето го говорех по-горе за прозрачностите нещо не става. Като задам цвят с прозрачност:
  1. additionalColor = QColor(generalColor);
  2. additionalColor.setAlpha(128);

или дори така:

  1. QColor btnsIconColor = QColor(102, 102, 102, 128);

…не става. SVG-то нещо не възприема прозрачности или нещо аз не правя като хората.

Голяма глупост съм направил с тези прозрачности. Ама нищо – така се учи човек…
Прозрачностите в SVG иконите се прави по съвсем друг начин. Пробвах го и става. В самата SVG икона (в XML-а) се прави:

  1. stroke-opacity:1;

и/или
  1. fill-opacity:1;

като 1 означава без прозрачност, а по-малко от 1 (между 0 и 1) е някаква степен на прозрачност.

Ето един пример (дано да се изпише коректно) с полу-прозрачност (stroke-opacity:0.5;):

  1. style=\"fill:none;stroke:#646464;stroke-opacity:0.5;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none\"

January 10, 2012

Mart Mart
Ant Farmer
42 posts

Днес в пощенския списък получих серия от писма свързани с SVG. Изглежда че SVG модула е обявен за “Deprecated”:

That’s the “Done” state.
QtSvg was in the “Deprecated” camp for two reasons: 1) there’s a more complete implementation of SVG inside WebKit 2) QtSvg says it implements SVG Tiny 1.2
The second item is important: we can’t consider done if we haven’t achieved
full compliancy. Not to mention that any bugs related to being compliant would
need to be fixed.
That’s why it ended up in Deprecated: we actually want people to stop using
the module.

Щял да се поддържа само в WebKit, което ще рече заради едни SVG икони да добавя 20MB към exe-то си. Това е нечувано!

Ама още по-фрапиращо е едно друго нещо което прочетох:

With Nokia about to be bought by Microsoft (rumors, but I see it as inevitable) I don’t think trolls have a future working on anything not Microsoft anyway. If bought I’d expect Qt5 to be canceled unless the community delivers it.

January 10, 2012

task_struct task_struct
Gene Splicer
331 posts

По SVG-то, нямам идея, но 20МБ за сеагшните системи не са кой знае какво. Мисля, че с някои оптимизации на линкера, повечето от кодадаже няма да се зареди, защото не се извиква.

За Qt5, мога да кажа, че ще има. М$ искат само смартфоните на Нокия, на ниският клас БозаОС не може да тръгне, защото е прекалено тежка (изненада), а и предоставя прекалено много възможности, от които там не са нужни. Даже напоследък дочух, че може би все пак ще има версия на Qt за WP.

Дискусии по темата: http://developer.qt.nokia.com/forums/viewthread/2675
и http://developer.qt.nokia.com/forums/viewthread/12513 Но не съм ги чел.

 Signature 

“Most good programmers do programming not because they expect to get paid or get adulation by the public, but because it is fun to program.”
- Linus Torvalds

January 10, 2012

leon.anavi leon.anavi
Mad Scientist
699 posts
task_struct wrote:
Даже напоследък дочух, че може би все пак ще има версия на Qt за WP.

Offtopic: А, дано!

 Signature 

http://anavi.org/

Page  
2

  ‹‹ qml bluetooth литература      приложения на симбиан ››

You must log in to post a reply. Not a member yet? Register here!