当前位置: 首页> 教育> 就业 > 北京企业网站模板建站怎么用_动漫制作专业属于什么大类_宁德市疫情最新消息_关键词优化的主要工具

北京企业网站模板建站怎么用_动漫制作专业属于什么大类_宁德市疫情最新消息_关键词优化的主要工具

时间:2025/7/15 5:28:55来源:https://blog.csdn.net/Greyscarf/article/details/146248130 浏览次数:0次
北京企业网站模板建站怎么用_动漫制作专业属于什么大类_宁德市疫情最新消息_关键词优化的主要工具

两种PDF文件查看器,MoonPdfLib或者AdobeReader。

一、在网上扒到的很好的WPF中用MoonPdf类库来展示PDF文件。

在Sourceforge上下载到MoonPdf编译好的Dll。

https://github.com/reliak/moonpdf这是源码地址

使用非常简单,废话不多说,上码上步骤。

1、程中添加对MoonPdfLib.dll的引用。注意:将libmupdf.dll放置于WPF工程Bin文件下。

2、XMAL源码:

<Grid>
<Border Background="#f0f0f0">
<StackPanel HorizontalAlignment="Left" Orientation="Horizontal">
<Button Content="上传" Width="95" Click="FileButton_Click" Margin="5,5,5,375"/>
<Button Content="放大" Width="105" Click="ZoomInButton_Click" Margin="0,5,0,375"/>
<Button Content="缩小" Width="95" Click="ZoomOutButton_Click" Margin="5,5,5,375"/>
<Button Content="100%" Width="95" Click="NormalButton_Click" Margin="0,5,0,375"/>
<Button Content="整页" Width="100" Click="FitToHeightButton_Click" Margin="5,5,5,375"/>
<Button Content="单页" Width="90" Click="SinglePageButton_Click" Margin="0,5,0,375"/>
<Button Content="双页" Width="90" Click="FacingButton_Click" Margin="5,5,5,375"/>
</StackPanel>
</Border>
<Grid HorizontalAlignment="Left" Height="340" Margin="10,70,0,0" VerticalAlignment="Top" Width="155">
<TreeView x:Name="treeView" SelectedItemChanged="treeView_SelectedItemChanged">
<TreeView.ItemTemplate>
<HierarchicalDataTemplate ItemsSource="{Binding Childern}">
<TextBlock Name="text1">
<TextBlock.Text>
<MultiBinding StringFormat="{}{0}">
<Binding x:Name="name1" Path="Name" />
<Binding x:Name="name2" Path="FilePath" />
</MultiBinding>
</TextBlock.Text>
</TextBlock>
</HierarchicalDataTemplate>
</TreeView.ItemTemplate>
</TreeView>
</Grid>
<Border Background="#d3d3d3" Margin="170,70,0,0">
<mpp:MoonPdfPanel x:Name="moonPdfPanel" Background="LightGray" ViewType="SinglePage" PageRowDisplay="ContinuousPageRows" PageMargin="0,2,4,2" AllowDrop="True"/>
</Border>
</Grid>

3、C#代码:

private bool _isLoaded = false;public MainWindow(){InitializeComponent();//数据库要存放的路径string filePath = "\\File\\ExceptionHandlingVSTO.pdf";//获取文件名字string fileName = Path.GetFileName(filePath);TreeModel loc = new TreeModel(){Name = "施工前",Childern = new List<TreeModel>(){new TreeModel(){Name = fileName,FilePath = filePath},new TreeModel(){Name ="测试节点可以无视",FilePath = filePath}}};List<TreeModel> list = new List<TreeModel>() { loc };treeView.ItemsSource = list;}private void FileButton_Click(object sender, RoutedEventArgs e){form.OpenFileDialog dialog = new form.OpenFileDialog();dialog.Multiselect = true;if (dialog.ShowDialog() == form.DialogResult.OK){string[] filesPath = dialog.FileNames;if (filesPath != null && filesPath.Length > 0){foreach (var filePath in filesPath){Upload(filePath);}}}}/// <summary>/// 文件上传/// </summary>/// <param name="filePath">文件原来的路径</param>public void Upload(string filePath){try{FileInfo info = new FileInfo(filePath);string directory = Directory.GetCurrentDirectory();string uploadFile = $"{directory}\\File";//文件要上传的路径string uploadPath = $"{uploadFile}\\{info.Name}";WebClient wc = new WebClient();//wc.Credentials = new NetworkCredential("xuyue", "111111");FileStream fs = new FileStream(filePath, FileMode.Open, FileAccess.Read);BinaryReader br = new BinaryReader(fs);byte[] result = br.ReadBytes(Convert.ToInt32(fs.Length));Stream s = wc.OpenWrite(new Uri(uploadPath), "PUT");if (s.CanWrite){s.Write(result, 0, result.Length);}s.Flush();s.Close();fs.Close();}catch (Exception ex){throw ex;}}private void ZoomInButton_Click(object sender, RoutedEventArgs e){if (_isLoaded){moonPdfPanel.ZoomIn();}}private void ZoomOutButton_Click(object sender, RoutedEventArgs e){if (_isLoaded){moonPdfPanel.ZoomOut();}}private void NormalButton_Click(object sender, RoutedEventArgs e){if (_isLoaded){moonPdfPanel.Zoom(1.0);}}private void FitToHeightButton_Click(object sender, RoutedEventArgs e){moonPdfPanel.ZoomToHeight();}private void FacingButton_Click(object sender, RoutedEventArgs e){moonPdfPanel.ViewType = MoonPdfLib.ViewType.Facing;}private void SinglePageButton_Click(object sender, RoutedEventArgs e){moonPdfPanel.ViewType = MoonPdfLib.ViewType.SinglePage;}private void treeView_SelectedItemChanged(object sender, RoutedPropertyChangedEventArgs<object> e){//数据库要存放的路径string fileName = "\\File\\ExceptionHandlingVSTO.pdf";string filePath = $"{Directory.GetCurrentDirectory()}{fileName}";try{moonPdfPanel.OpenFile(filePath);_isLoaded = true;}catch (Exception ex){_isLoaded = false;}}}

关键字:北京企业网站模板建站怎么用_动漫制作专业属于什么大类_宁德市疫情最新消息_关键词优化的主要工具

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: