Silverlight深度缩放合成问题

发布于 2024-07-30 11:14:58 字数 207 浏览 4 评论 0 原文

Deep Zoom Composer 本身就是非常好的工具。 我想知道是否有任何自动撰写的方法? 例如,我有100张图像,我想自动合成为10 * 10深度变焦效果。 我正在实现后台工作流程并自动撰写深度缩放和发布。 我更喜欢的输出类型是“图像”和“导出为集合(多个图像)”。

有参考样本或文件吗? 我使用的是 VSTS2008 + C# + .Net 3.5。

Deep zoom composer itself is very nice tool. I am wondering if there are any automatic ways to compose? For example, I have 100 images, and I want to compose automatically as 10 * 10 deep zoom effect. I am implementing a background workflow and automatically composing deep zoom and publish. The Output Type I prefer is "Images" and "Export as a collection (multiple images)".

Any reference samples or documents? I am using VSTS2008 + C# + .Net 3.5.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

夜雨飘雪 2024-08-06 11:14:58

Take a look at this post about DeepZoomTools.dll included in the app.

漫雪独思 2024-08-06 11:14:58

有一个很棒的示例项目 这里,如果您真的想疯狂地以编程方式生成图像/图块,您可以尝试 这篇 MSDN 文章

我自己还没有找到很多有关 DeepZoomTools.dll 的真实文档,但我创建了一个小型测试 Web 服务,将单个上传的图像转换为 Deep Zoom 源。 相关代码是:

public string CreateDeepZoomImage(byte[] abyte, string fileName)
        {
            ImageCreator ic = new ImageCreator();
            string FilePath = Path.Combine(_uploadPath, fileName);
            System.IO.FileStream fs = new System.IO.FileStream(FilePath, System.IO.FileMode.Create);
            fs.Write(abyte, 0, abyte.Length);
            fs.Close();
            FileInfo imageFileInfo = new FileInfo(FilePath);
            string destination = imageFileInfo.DirectoryName + "\\" + imageFileInfo.Name.TrimEnd(imageFileInfo.Extension.ToCharArray()) + "\\output.xml";
            ic.Create(FilePath, destination);
            string returnpath = "/Uploads/" + imageFileInfo.Name.TrimEnd(imageFileInfo.Extension.ToCharArray()) + "/output.xml";
            return returnpath;
        }

返回路径的使用方式如下:(

ZoomImage.Source = new DeepZoomImageTileSource(new Uri(e.Result, UriKind.Relative));

请原谅草率的代码。但它确实有效。)

There's a great sample project here and if you really want to go crazy and generate images/tiles programatically, you can try the sort of thing referenced in this MSDN article.

I haven't found a lot of real documentation regarding DeepZoomTools.dll myself, but I created a small test webservice to turn a single uploaded image into a Deep Zoom source. The relevant code is:

public string CreateDeepZoomImage(byte[] abyte, string fileName)
        {
            ImageCreator ic = new ImageCreator();
            string FilePath = Path.Combine(_uploadPath, fileName);
            System.IO.FileStream fs = new System.IO.FileStream(FilePath, System.IO.FileMode.Create);
            fs.Write(abyte, 0, abyte.Length);
            fs.Close();
            FileInfo imageFileInfo = new FileInfo(FilePath);
            string destination = imageFileInfo.DirectoryName + "\\" + imageFileInfo.Name.TrimEnd(imageFileInfo.Extension.ToCharArray()) + "\\output.xml";
            ic.Create(FilePath, destination);
            string returnpath = "/Uploads/" + imageFileInfo.Name.TrimEnd(imageFileInfo.Extension.ToCharArray()) + "/output.xml";
            return returnpath;
        }

Where the return path is used like so:

ZoomImage.Source = new DeepZoomImageTileSource(new Uri(e.Result, UriKind.Relative));

(Forgive the sloppy code. It does work though.)

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文