コード例 #1
0
        private void OnImagePathChanged()
        {
            Collection collection = null;

            using (XmlReader reader = XmlReader.Create(imagePath))
            {
                XmlSerializer collectionSerializer = new XmlSerializer(typeof(Collection), DeepZoomNamespace);
                collection = (Collection)collectionSerializer.Deserialize(reader);

                XmlSerializer imageSerializer = new XmlSerializer(typeof(Image), DeepZoomNamespace);
                var           imageFolder     = Path.GetDirectoryName(imagePath);
                var           cacheFolder     = Path.Combine(imageFolder, @"dzc_output_images\dsc01770_files");

                fileServer = new DeepZoomFileServer {
                    CacheLocation = CacheLocation.CustomPath, CachePath = cacheFolder
                };
                fileServer.Changed      += new EventHandler(fileServer_Changed);
                fileServer.ImageLoaded  += new EventHandler <TileLoadResultEventArgs>(fileServer_ImageLoaded);
                fileServer.FileExtension = "." + collection.Format;

                foreach (var i in collection.Items)
                {
                    var imgPath = Path.Combine(imageFolder, i.Source);
                    using (XmlReader imageReader = XmlReader.Create(imgPath))
                    {
                        Image image = (Image)imageSerializer.Deserialize(imageReader);
                        i.Image = image;
                    }
                }
            }

            var source = collection.Items[0].Source;

            var cacheParentDir = Path.Combine(Path.GetDirectoryName(imagePath), Path.GetDirectoryName(source));
            var dirName        = Path.GetFileNameWithoutExtension(source) + "_files";
            var imagesPath     = Path.Combine(cacheParentDir, dirName);

            LoadDeepZoomImages(imagesPath, collection.Format);
        }
コード例 #2
0
        private void OnImagePathChanged()
        {
            Collection collection = null;
            using (XmlReader reader = XmlReader.Create(imagePath))
            {
                XmlSerializer collectionSerializer = new XmlSerializer(typeof(Collection), DeepZoomNamespace);
                collection = (Collection)collectionSerializer.Deserialize(reader);

                XmlSerializer imageSerializer = new XmlSerializer(typeof(Image), DeepZoomNamespace);
                var imageFolder = Path.GetDirectoryName(imagePath);
                var cacheFolder = Path.Combine(imageFolder, @"dzc_output_images\dsc01770_files");

                fileServer = new DeepZoomFileServer { CacheLocation = CacheLocation.CustomPath, CachePath = cacheFolder };
                fileServer.Changed += new EventHandler(fileServer_Changed);
                fileServer.ImageLoaded += new EventHandler<TileLoadResultEventArgs>(fileServer_ImageLoaded);
                fileServer.FileExtension = "." + collection.Format;

                foreach (var i in collection.Items)
                {
                    var imgPath = Path.Combine(imageFolder, i.Source);
                    using (XmlReader imageReader = XmlReader.Create(imgPath))
                    {
                        Image image = (Image)imageSerializer.Deserialize(imageReader);
                        i.Image = image;
                    }
                }
            }

            var source = collection.Items[0].Source;

            var cacheParentDir = Path.Combine(Path.GetDirectoryName(imagePath), Path.GetDirectoryName(source));
            var dirName = Path.GetFileNameWithoutExtension(source) + "_files";
            var imagesPath = Path.Combine(cacheParentDir, dirName);

            LoadDeepZoomImages(imagesPath, collection.Format);
        }