1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
| ...
//! Get the minimum value between two numbers.
template<typename t1, typename t2>
inline typename cimg::superset<t1,t2>::type min(const t1& a, const t2& b) {
typedef typename cimg::superset<t1,t2>::type t1t2;
return (t1t2)(a<=b?(t1t2)a:(t1t2)b);
}
...
//! Get the maximum value between two numbers.
template<typename t1, typename t2>
inline typename cimg::superset<t1,t2>::type max(const t1& a, const t2& b) {
typedef typename cimg::superset<t1,t2>::type t1t2;
return (t1t2)(a>=b?(t1t2)a:(t1t2)b);
}
...
template<typename tc>
CImg<T>& draw_text(const int x0, const int y0,
const char *const text,
const tc *const foreground_color, const int background_color=0,
const float opacity=1, const unsigned int font_height=13, ...) {
if (!font_height) return *this;
char tmp[2048] = { 0 }; std::va_list ap; va_start(ap,font_height); cimg_vsnprintf(tmp,sizeof(tmp),text,ap); va_end(ap);
return draw_text<T, T>(x0,y0,"%s",foreground_color,(const tc*)background_color,opacity,font_height,tmp);
}
...
puis d'autres .draw_text, à modifier en fonction du CImg<Trucmuche> correspondant... |
Partager