ExcelなどSVGのtransparentをサポートしていない場合に対応するため。

        static void Main(string[] args)
        {
            Regex re_rgba = new Regex(@"rgba\(\s*\d+\s*,\s*\d*\,\s*\d+\s*\,\s*(?<a>[01](\.\d*)?)\s*\)");

            XmlDocument doc = new XmlDocument();
            doc.Load("A.svg");
            XmlNamespaceManager xmlNsManager = new XmlNamespaceManager(doc.NameTable);
            xmlNsManager.AddNamespace("ns", "http://www.w3.org/2000/svg");

            foreach (XmlNode rect in doc.DocumentElement.SelectNodes("//ns:rect", xmlNsManager))
            {
                if (!(rect is XmlElement elm))
                    continue;
                var fillAttribute = elm.GetAttribute("fill");
                var groupA = re_rgba.Match(fillAttribute).Groups["a"];
                if (groupA.Length > 0)
                    if (double.TryParse(groupA.Value, out double a))
                        if (a == 0)
                            rect.ParentNode.RemoveChild(rect);
            }
            doc.Save("b.svg");
        }