精华内容
下载资源
问答
  • 可见,有文章,有附件——word格式等,有pdf格式。 小程序支持阅览多种office格式文件 官方列出有:https://developers.weixin.qq.com/miniprogram/dev/api/file/wx.openDocument.html doc doc 格式 ...

    我们用小程序与网站交互,那么无非是上传文件,发布文章,阅览文件(主要是office和pdf)和文章。

    服务端用engineercms,各种文件分类在网站上展示是这样的:

     可见,有文章,有附件——word格式等,有pdf格式。

    小程序支持阅览多种office格式文件

    官方列出有:https://developers.weixin.qq.com/miniprogram/dev/api/file/wx.openDocument.html

    doc doc 格式  
    docx docx 格式  
    xls xls 格式  
    xlsx xlsx 格式  
    ppt ppt 格式  
    pptx pptx 格式  
    pdf pdf 格式

     所以就可以将服务端混排的各种附件和文章进行混排展示出来,如下图:

    当点击文件时,就跳转到文件阅览页,当点击文章时候,就跳转到文件详情页。 

    小程序列表 模板切换用官方下面的代码

    https://developers.weixin.qq.com/miniprogram/dev/reference/wxml/template.html

    <template name="odd">
      <view> odd </view>
    </template>
    <template name="even">
      <view> even </view>
    </template>
    
    <block wx:for="{{[1, 2, 3, 4, 5]}}">
      <template is="{{item % 2 == 0 ? 'even' : 'odd'}}"/>
    </block>

     各种文件扩展名用下面这个工具制作了图标:

    https://github.com/joaner/namedavatar

    小程序代码:

    js

    //直接查看各种文件
      downloadFile: function (e) {
        wx.showLoading({
          title: '加载中...',
        })
    
        var that = this;
        if (that.data.standardFocus) {
          that.setData({
            downloadurl: config.url + '/wx/wxstandardpdf/' + e.currentTarget.dataset.id,
          });
        } else {
          that.setData({
            downloadurl: config.url + '/wx/getwxpdf/' + e.currentTarget.dataset.id,
          });
        };
        var sessionId = wx.getStorageSync('sessionId')
        //发起网络请求
        wx.downloadFile({
          url: that.data.downloadurl + '?hotqinsessionid=' + sessionId,
          header: {
            "Content-Type": "application/x-www-form-urlencoded"
          },
          success: function (res) {
            console.log(res.tempFilePath)
            const filePath = res.tempFilePath //返回的文件临时地址,用于后面打开本地预览所用
            wx.openDocument({
              filePath: filePath,
              fileType: e.currentTarget.dataset.type,
              success: function (res) {
                console.log('打开成功');
                wx.hideLoading()
              },
              fail: function (res) {
                // console.log(res);
                wx.showToast({
                  title: res.data.info,
                  icon: 'loading',
                  duration: 1500
                })
              }
            })
          },
          fail: function (res) {
            console.log(res);
            wx.showToast({
              title: res.data.info,
              icon: 'loading',
              duration: 1500
            })
          },
        })
      },

     wxml

    <template name="msgTemp">
    		<view class="weui-panel__bd">
    			<!-- <navigator class="weui-media-box weui-media-box_appmsg" hover-class="weui-cell_active"> -->
    			<view class="weui-media-box weui-media-box_appmsg" hover-class="weui-cell_active">
    				<view class="weui-media-box__hd weui-media-box__hd_in-appmsg">
    					<image class="weui-media-box__thumb" src="{{Link}}" style="width: 60px; height: 60px;" style="border-radius: 100%" />
    					<!-- <wxc-avatar class="avatar">图</wxc-avatar> -->
    				</view>
    				<view class="weui-media-box__bd weui-media-box__bd_in-appmsg" data-id="{{Id}}" data-type="{{Type}}" catchtap='downloadFile'>
    					<view class="weui-media-box__title">{{Title}}</view>
    					<view class="weui-media-box__desc">{{tutil.formatTime(Created)}}</view>
    					<view class="weui-media-box__desc">{{LiNumber}}</view>
    				</view>
    				<navigator class="weui-media-box__desc" url="../pdfview/pdfview?id={{Id}}&title={{Title}}&actIndex={{ActIndex}}&link={{Link}}&type={{Type}}">分享</navigator>
    				<!-- </navigator> -->
    			</view>
    		</view>
    	</template>
    
    	<!--用name 定义模版-->
    	<template name="article">
    		<view class='leassonList' data-id="{{Id}}" bindtap="seeDetail">
    			<view class='listIn'>
    				<view class='leassonImg'>
    					<image src="{{Link}}" class='leassonImgs' mode='aspectFill' />
    					<!-- <image class="weui-media-box__thumb" src="{{Link}}" style="width: 60px; height: 60px;" style="border-radius: 100%" /> -->
    				</view>
    				<view class='leassonTitle'>
    					<view class='title'>
    						{{Title}}
    					</view>
    					<view class='author'>
    						作者:{{Author}}
    					</view>
    				</view>
    			</view>
    		</view>
    	</template>
    
    			<view wx:for-items="{{msgList}}" wx:key="{{item.id}}">
    				<view class="kind-list__item">
    					<!--用is 使用模版-->
    					<template is="{{item.Type=='isArticle'?'article':'msgTemp'}}" data="{{...item}}" />
    				</view>
    			</view>

    服务端engineercms返回数据为下所示:其中Link,当为文件时,用图标的base64,为文章时,用文章里的第一个图片。

    {
      "info": "SUCCESS",
      "searchers": [
        {
          "Id": 15,
          "Title": "珠三角工程模拟飞检设计整改报告和有关说明珠三角工程模拟飞检设计整改报告和有关说明.docx",
          "Type": "docx",
          "Link": "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDAiIGhlaWdodD0iMTAwIj48cmVjdCBmaWxsPSIjRkY1NzIyIiB4PSIwIiB5PSIwIiB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIj48L3JlY3Q+PHRleHQgZmlsbD0iI0ZGRiIgeD0iNTAlIiB5PSI1MCUiIHRleHQtYW5jaG9yPSJtaWRkbGUiIGZvbnQtc2l6ZT0iNTAiIGZvbnQtZmFtaWx5PSJzYW5zLXNlcmlmIiBhbGlnbm1lbnQtYmFzZWxpbmU9Im1pZGRsZSI+VzwvdGV4dD48L3N2Zz4=",
          "Subtext": "",
          "Author": "",
          "Created": "2020-06-25T11:54:41.4978218Z",
          "Updated": "2020-06-25T11:54:41.4978218Z"
        },
        {
          "Id": 19,
          "Title": "鲁班测试993",
          "Type": "isArticle",
          "Link": "http://127.0.0.1/attachment/LBGCB鲁班工程宝/质量监督/2020June/1593093898342607000.jpg",
          "Subtext": "asdfasdfsadf",
          "Author": "admin",
          "Created": "2020-03-18T14:37:33.5387154Z",
          "Updated": "2020-06-25T14:05:01.7747665Z"
        }
      ]
    }

    小程序上传各种文件:

     小程序上传文件js:

      //上传文件
      uploadPDF(e) {
        var that = this
        that.setData({
          uploadurl: config.url + '/admin/addwxattachment?pid=' + that.data.id,
        });
        wx.chooseMessageFile({
          count: 10,
          type: 'file',
          success(res) {
            const tempFilePaths = res.tempFiles
            if (tempFilePaths.length > 0) {
              wx.showLoading({
                title: '上传中...',
              })
              //循环比较
              for (var i = 0; i < tempFilePaths.length; i++) {
                var imgUrl = tempFilePaths[i].path;
                var filename = tempFilePaths[i].name;
                var sessionId = wx.getStorageSync('sessionId')
                //发起网络请求
                wx.uploadFile({
                  //上传图片的网路请求地址
                  url: that.data.uploadurl + '&hotqinsessionid=' + sessionId,
                  //选择
                  filePath: imgUrl,
                  name: 'file',
                  formData: {
                    'filename': filename
                  },
                  success: function (res) {
                    wx.hideLoading();
                    if (res.data.info != "err") {
                      wx.showToast({
                        title: "上传成功",
                        icon: "none",
                        duration: 1500
                      })
                      // 加跳转
                      wx.navigateBack({
                        delta: 1,
                        success: function (e) {
                          var page = getCurrentPages().pop();
                          if (page == undefined || page == null) return;
                          page.onLoad();
                        }
                      })
                    } else {
                      wx.showToast({
                        title: "上传失败",
                        icon: "none",
                        duration: 1500
                      })
                    }
                  },
                  fail: function (res) {
                    wx.hideLoading();
                    wx.showToast({
                      title: "文件上传失败",
                      icon: "none"
                    })
                  }
                });
              }
            }
          }
        })
      },

    当然,上传按钮必须要做2个,一个是上传文件,一个是发布文章哦。

    展开全文
  • 言归正传,今天和大家分享的是Word分栏打印,这样既不会浪费纸张,更方便我们阅读。 当我们用Excel遇到行多列少的表格时,想要让数据排满整页,在excel中会比较麻烦,我们这里有个方法,可以把表格复制到word,然后...

    今天写的是办公小技巧的第四篇文章,后面我还会陆续更新更多小技巧和大家分享,如果你喜欢的话就关注我哦。言归正传,今天和大家分享的是Word分栏打印,这样既不会浪费纸张,更方便我们阅读。
    当我们用Excel遇到行多列少的表格时,想要让数据排满整页,在excel中会比较麻烦,我们这里有个方法,可以把表格复制到word,然后点击布局,在栏这里,选择三栏,空白部分就被表格排满了,那为了方便查看每一列的数据,我们还可以,在表格工具的布局中,点击重复标题行。在这里插入图片描述在这里插入图片描述在这里插入图片描述
    经过这样的设置后再打印不仅节约纸张,还非常方便阅读,喜欢的话记得关注哦。

    展开全文
  • //这一方式没有阅览功能  [ docC   presentPreviewAnimated : YES ]; } #pragma mark - 设置 docController - ( UIDocumentInteractionController *)setupControllerWithURL: ( NSURL *) fileURL  ...

    通过创建UIDocumentInteractionController来实现这一功能,如下栗子:

    #pragma mark - 展示文件

    - (void)showDownloadFile:(NSString *)fileName{

      // 从沙盒中获取(以下路径是我从网络下载文件存放的路径)

      NSString *docPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) firstObject];

      NSString *fileDir = [NSStringstringWithFormat:@"%@/Download/File", docPath];

      NSString *filePath = [fileDir stringByAppendingPathComponent:fileName]; //fileName如:text.jpg、text.pptx、text.mp4等

      UIDocumentInteractionController * docC = [self setupControllerWithURL:[NSURLfileURLWithPath:filePath]

                                                              usingDelegate:self];

    //        [docC presentOpenInMenuFromRect:self.view.bounds inView:self.view animated:YES]; //这一方式没有阅览功能

        [docC presentPreviewAnimated:YES];

    }

    #pragma mark - 设置docController

    - (UIDocumentInteractionController *)setupControllerWithURL: (NSURL *) fileURL

                                                   usingDelegate: (id <UIDocumentInteractionControllerDelegate>) interactionDelegate {

         UIDocumentInteractionController *interactionController = [UIDocumentInteractionControllerinteractionControllerWithURL: fileURL];

        interactionController.delegate = interactionDelegate; // 不要忘记遵守UIDocumentInteractionControllerDelegate协议

        return interactionController;

    }

    #pragma mark - 预览窗口的父窗口,不填写则无展示效果

    - (UIViewController *)documentInteractionControllerViewControllerForPreview:(UIDocumentInteractionController *)controller{

        return self;  

    }

    #pragma mark - 代理方法

    - (UIView *)documentInteractionControllerViewForPreview:(UIDocumentInteractionController *)controller{

        return self.view;

    } 

    - (CGRect)documentInteractionControllerRectForPreview:(UIDocumentInteractionController *)controller{

        return self.view.frame

    }

     提供几个下载地址:

    http://pic6.nipic.com/20100330/4592428_113348097000_2.jpg

    http://lcell.bnu.edu.cn/upImages/resource/20110507140606.pptx

    http://120.25.226.186:32812/resources/videos/minion_01.mp4

    随笔随记,以免忘记

    转载于:https://www.cnblogs.com/zlyunduan/p/5386078.html

    展开全文
  • Scientific Word

    2012-09-21 08:42:05
    Sciword(Scientific Word) 是一个全面支持LaTeX的软件, LaTeX是一种描述复杂文档的语言基于TeX系统。使用Scientific word,可以使用自然的数学表达式组成数学、...读者可以使用免费的ScientificViwer阅览及打印文件。
  • 下载原力创付费文档—全屏阅览式 一、项目需求: 从目标网址下载付费文档,并保存为word形式 网址点这里 二、思路 1.利用selenium实现异步加载,获取图片url 2.爬取图片 3.将图片写进word文档 三、技术点 1....
  • 怎样将word转pdf

    千次阅读 2015-04-30 10:43:06
    怎样将Word转PDF?通常情况下大家常常会利用Windows系统里的OfficeWord或Excel...PDF作为一种可自由传播的文件格式,它可以很好的保留各种源文件的字型、影像、图形与排版,利用PDF阅读器可以随时阅览。  那么究竟选择
  • 【踩坑笔记】java使用poi...表格内容填充的段落没有自动换行,不方便阅览,测试了很多方法终于实现! 贴上原始代码 infoTableRow.getCell(1).setText(changeLine(entry.getValue())); /** * word表格内换行 ...
  • 这其间也报过一些图像文字,尽管图像文字供于阅览时没有任何疑问的,可是图像文字不能被仿制和编辑对大家来说是无穷的一个下风,由于这样的文字运用起来十分的不方便,怎么才能将图像文字转换成word?图片文字转换成...
  • PDF主要是方便阅览,但是编辑起来比较困难,而word就是便于编辑。之前见过的一些PDF转换成Word软件,那反过来怎么把Word转换成PDF。Word转换成PDF的转换器又有哪些呢?个人使用经验感觉迅捷PDF转换器是个不错的选择,...
  • word文档转换成swf格式文件在网页中用flash显示在OA系统中我们常常需要将上传的word文档在网页中阅览,一般上传后的文档用html的形式查看是会导致排版混乱的,这次我介绍在ASP.NET中如何将上传的word文档转换为swf...
  • 1. 对应文档的新建(Ctrl + N)、保存(Ctrl + S)和...例如:一个文件中有多个 Word 文件,这些文档的内容是什么我也不知道,但又不想一个个打开去阅览。怎么办呢? 3. 不同视图的查看,以及撤销(Ctrl + Z)等操作...
  • Word2vec加TextRank算法生成文章摘要

    万次阅读 多人点赞 2017-07-14 11:03:15
    传统的人工书写文本摘要是文章发布和文章阅读极为重要的一环,读者可以快速阅览摘要判断文章的续读必要性。 然而,人工智能的出现以及现在深度学习的普及,让文章摘要变得十分便利。早在50年前,人们便开始着手于...
  •   大家应该都碰到过这种情况,就是需要阅览Word文档有很多页,甚至有时候一个文档会有上百页,特别是用Word文档看小说的时候,不能像纸质书本一样夹个书签就搞定了,下次看的时候直接打开就好了,而满满都是字的...
  • 关于moodle中的题库的导入问题,一直困扰着我,...所以在下就在此把这个工作给做了,以便后者阅览。 (1)在Moodle官方老网站上找到了“Quiz authoring template for Microsoft Word” 这一插件,该插件提供了一种利
  • 写这篇文章是因为,在做项目的时候,需求里面,提到了这么一个功能,android下面时间附件查看、下载、在线阅览的功能。对于下载没什么好说的。在线阅览是指将各种类型的附件转换成图片,然后手机在线打开图片来实现...
  • 是的,高版本的word的确可以打开不少PDF文件进行阅览编辑,但遇到一些相对特殊的PDF文件时,便会出现两种情况,一种是直接就打不开了,还有一种是打开了但却是乱码或是格式混乱。所以,我今天给大家带来P...
  • 新型的PDF文档格式发动整个互联网文档格式的一个革新,人们不再利用繁重的纸质进行编写文章,借用PDF阅读器就能轻松阅览自己的文章。但是PDF也有一个极大的缺点—难以编辑。如果想将之转换成Word文档,借助Word强大...
  • 新型的PDF文档格式发动整个互联网文档格式的一个革新,人们不再利用繁重的纸质进行编写文章,借用PDF阅读器就能轻松阅览自己的文章。但是PDF也有一个极大的缺点—难以编辑。如果想将之转换成Word文档,借助Word强大...
  • 新型的PDF文档格式发动整个互联网文档格式的一个革新,人们不再利用繁重的纸质进行编写文章,借用PDF阅读器就能轻松阅览自己的文章。但是PDF也有一个极大的缺点—难以编辑。如果想将之转换成Word文档,借助Word强大...
  • 新品PDF黄钻换器在线

    2019-09-13 17:01:48
    新型的PDF文档格式发动整个互联网文档格式的一个革新,人们不再利用繁重的纸质进行编写文章,借用PDF阅读器就能轻松阅览自己的文章。然,PDF也有一个极大的缺点—难以编辑。如果想将之转换成Word文档,借助Word强大...
  • word、excel、ppt怎么转换成pdf格式文件?有时我们将整理好的ppt格式发给客户后,但是客户想利用pdf进行阅览,如何才能将ppt转换为pdf呢?  可以下载迅捷ppt转换成pdf转换器将ppt格式转换成pdf...
  • 作为微软Office中常用的Word、Excel、PPT文件格式,已经作为广大用户用于学习,交流,商务,教学的很普遍的文件格式,几乎这些格式成为现今不可缺少的文档格式,然,随着业务往来,有时需要将这类办公文档转换成方便...
  • 百度文库功能的实现

    2013-11-25 10:01:00
    1.类似百度文库在线预览文档flash版(支持word、excel、ppt、pdf)+在线预览文档html版 ... 1)office、pdf转化为flash; 2)使用flexpaper输出成最终文档阅览效果。 a.使用flashpap...
  • 那大家知道如果想要体验好的阅览效果,可以有什么办法呢?这里最好的办法就是将图片转换成PDF格式,需要了解的伙伴可以继续往下看,下面小编分享给大家集中图片转换PDF的方法。 第一种方法:可以先利用word工具另存...
  • 以往,一般都是用 word 文档来编写。然后,再通过各种媒体途径来完成传送、阅览。这一过程,无论是编辑,还是交流、同步、更新,都是一件极其麻烦的事情。于是,就开始接触一些在线的文档编辑工具,例...
  • 以往,一般都是用 word 文档来编写。然后,再通过各种媒体途径来完成传送、阅览。这一过程,无论是编辑,还是交流、同步、更新,都是一件极其麻烦的事情。于是,就开始接触一些在线的文档编辑工具,例...
  • word、excel、ppt怎么转换成pdf格式文件?有时我们将整理好的ppt格式发给客户后,但是客户想利用pdf进行阅览,如何才能将ppt转换为pdf呢?  可以下载迅捷ppt转换成pdf转换器将ppt格式转换成pdf格式。大家可以在百度...

空空如也

空空如也

1 2 3
收藏数 43
精华内容 17
热门标签
关键字:

word阅览