وجعل الكثير من الصور المتكررة أكثر أو أقل performant للمن استخدام الفرش في برنامج الأغذية العالمي؟

StackOverflow https://stackoverflow.com/questions/2059262

سؤال

وتطبيق شركتنا تعمل في الوقت الحالي يعرض العديد من الأشكال المستطيل مع تدرجات لرسم "البلاط". وجاءت نقاش داخلي حول ذلك يشكل مسألة الأداء. هذه البلاطات حوالي 100 بكسل في 200 بكسل، وإما أن تكون متدرجة مظللة الأحمر والأصفر، أو الأخضر. في أي وقت من الأوقات، يمكن أن يكون هناك ما يصل إلى 100 من هذه البلاطات على الشاشة. فإنه سيكون أكثر performant للبالنسبة لنا لخلق صورة لكل (أحمر، أصفر، أخضر) ويكرر ذلك عند الحاجة، أو سيكون من الأفضل بالنسبة لنا لمواصلة رسم لهم باستخدام الفرش WPF القياسية؟

وتحرير: لتوضيح، وفرشاة التدرج نستخدمه هو LinearGradientBrush.

هل كانت مفيدة؟

المحلول

ومن الخبرة، ورسم لهم باستخدام فرش سوف يكون الأداء أفضل بكثير. تتم مقارنة النفقات العامة من تحميل ما يصل الصور بلاط وجعلها كبيرة لتقديم المستطيلات شغلها.

نصائح أخرى

والطريقة الوحيدة لمسح هذا الأمر سيكون لمحاولة ذلك في كلا الاتجاهين وقياس أداء كل النهج.

وأنت كنت بحاجة إلى إضافة رمز إلى وقت تقديم حلقة وتسجيل نتيجة إلى ملف، ثم فرض 1000 (أو حتى 100،000) يعيد رسم لتكون قادرة على الحصول على الرقم واقعية.

وشعوري الداخلي هو أن LinearGradientBrush ستكون أسرع من تحميل صورة (حتى من الموارد) - ولكن أنا على استعداد أن أكون مخطئا ثبت

.
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top