لقد جربت هذا للتو ، وللأسف الأمر أكثر تعقيدًا قليلاً مما كنت أتمنى.
المشكلة هي أن dunst يجعل سطح القاهرة واحدًا كبيرًا لجميع الإخطارات ؛ إن جعل جزء_ من هذا شفافًا تمامًا لم يكن شيئًا كنت قادرًا على فعله. استخدام cairo_set_source_rgba(0, 0, 0, 0)
يجعله يحتوي على لون نافذة الجذر ، بقدر ما تمكنت من اكتشافه ، فإن ضبطه على شفافية "حقيقية" ، ليس شيئًا يمكن أن تفعله القاهرة (لم أستخدم القاهرة من قبل ، لذلك قد أكون مخطئا).
الطريقة الوحيدة لدعم هذا ، AFAIK ، هي إعادة كتابة جزء كبير من كود الرسم ...
قد تكون الفكرة الأفضل هي تبديل منطق الألوان الكامل إلى 32 بت RGBA عندما يدعمه خادم x ويكون المركب قيد التشغيل. أعتقد أن شيئًا ما باستخدام cairo_xlib_surface_create_with_xrender_format قد يعمل.
تحرير: بعد ذلك يمكنك تعيين قيم اللون _ all_ مع شفافية ألفا
يا فتى .. أنا حقا أريد هذا.
لقد مر وقت طويل جدا. أي تحديث على هذا؟
تم التنفيذ باستخدام # 717 ، والآن تدعم كل سلاسل الألوان الشفافية.
التعليق الأكثر فائدة
يا فتى .. أنا حقا أريد هذا.