精华内容
下载资源
问答
  • h5获取pdf文件实现预览

    万次阅读 2016-03-30 12:47:16
    native嵌套 h5实现 pdf 预览目前实现...我需要native嵌套h5,实现*.pdf预览,而我的pdf,并不是本地的pdf文件,而是通过某服务器下发的http协议的pdf文件大致分为两种情况,你肯定会说 native为什么还要分为两种情况呢

    native嵌套 h5实现 pdf 预览

    目前实现嵌套预览pdf的有很多种方法各种插件:http://www.open-open.com/news/view/1fc3e18/

    这里我就介绍我要实现的功能:

       我需要native嵌套h5,实现*.pdf预览,而我的pdf,并不是本地的pdf文件,而是通过某服务器下发的http协议的pdf文件

       大致分为两种情况,你肯定会说 native为什么还要分为两种情况呢?
     
       就目前(2016-03-30)来说,IOS系统兼容性还可以,但是Android就不同了,Android手机是各色各样,我的实现如下:

    1、IOS版

    window.open(“服务器下发的文件”); //即可实现

    2、Android版

       Android就不同了,可通过服务器下发的*.pdf文件先下载到本地,只有这样方才可打开。
       H5如何下载文件到本地:http://blog.csdn.net/qq_16559905/article/details/51012763
       然后通过native自带的浏览器打开
    展开全文
  • H5 上传文件

    2018-08-31 15:49:50
    jsp:代码 <input type="file" name="applyFile"...application/pdf,image/*" multiple="multiple" >  <img alt="" src="" id

    jsp:代码

    <input type="file" name="applyFile" id="applyFile" capture="camera" accept="application/pdf,image/*" multiple="multiple" >

      <img alt="" src="" id = "testImg" width="140" height="180">

    var filedata = new Array();

        $("#applyFile").change(function(){

        debugger

          var file = document.getElementById("applyFile").files[0];              

           if(file) {

               var reader = new FileReader();

               reader.readAsDataURL(file);

               reader.onload = function(){

                   var imgstr = this.result; //这就是base64字符串

                    var image = document.getElementById("testImg");

                   image.src = imgstr;

                   filedata[0] = imgstr;

                   alert(imgstr);

                  var imageName = '111.pdf';

                 //这里可换成ajax请求因为本框架不是springmvc没有使用ajax

                   PlatformContext.getJSONBean('registerJsBean',appId).uploadImage(imageName,imgstr)

                  .done(function(returnProduct){

                     alert("成功");

                      }).fail(function(err){

                        alert(err);

                      });

               };  

           }

        });

    java代码:

    public TransResult<Boolean> uploadImage(String imageName,String imageBase64){

        Map<String, String> imgMap = new HashMap<>();

         imageBase64=imageBase64.substring(imageBase64.indexOf(",")+1);

        imgMap.put(imageName, imageBase64);

        VisitService visitService = (VisitService) ApplicationContextUtil.getBean("visitServiceImpl");

        TransResult<String> resList = visitService.uploadFile(imgMap);

         return null;

    }

    @Override

       public TransResult<String> uploadFile(Map<String, String> imgMap) {

         // TODO Auto-generated method stub

         TransResult<String> result = new TransResult<>();

         OutputStream out = null;

         String imgTempPath = PropertiesUtil.getProperties("ftp.properties").getProperty(VisitConstant.VISIT_IMAGE_TEMP_PATH);

         try {

            for(String imgName : imgMap.keySet()){

              BASE64Decoder decoder = new BASE64Decoder();

              String imageBase64=imgMap.get(imgName);

              imageBase64=imageBase64.substring(imageBase64.indexOf(",")+1);

              byte[] bytes = decoder.decodeBuffer(imageBase64);

              for (int i = 0; i < bytes.length; ++i) {

                 if (bytes[i] < 0) {// 调整异常数据

                   bytes[i] += 256;

                 }

              }

              String path = imgTempPath+ imgName;

              // 生成jpeg图片

              out = new FileOutputStream(path);

              out.write(bytes);

              out.flush();

            }

            result.success();

            result.setObject(imgTempPath);

         } catch (Exception e) {

            result.failure("保存图片过程中异常");

            Logger.info("[回访服务][保存图片][异常]");

            Logger.printStackTrace(e);

         }finally {

            try {

              out.close();

            } catch (IOException e) {

              // TODO Auto-generated catch block

              e.printStackTrace();

            }

         }

         return result;

       }

    展开全文
  • uniapp 在线预览pdf文件流(h5)

    千次阅读 2021-04-27 11:35:40
    uniapp h5 实现在线预览pdf文件

    在使用uniapp开发项目时,有个需求是用户上传完pdf文件,可以预览上传的pdf。
    和后端对接接口时候,发现在上传完文件后,调用下载接口,里面返回了pdf文件流,如下图所示:

    pdf文件流
    首先想到的是在uni-app的插件市场,看看能否找到满足需求的插件,一番查找,并没有找到合适的。
    通过查找资料,最后决定使用pdf.js
    使用步骤:

    1. 官网下载 pdf.jspdf.js下载
    2. 项目根目录下新建hybrid文件夹,将下载的pdf.js压缩包解压后,复制到hybrid下的html文件夹中

    目录结构

    1. 在pages文件夹中新建一个filePreview页面,页面代码如下:

      <template>
        <view>
          <web-view :src="allUrl"></web-view>
        </view>
      </template>
      
      <script>
        export default {
          data() {
      	  return {
      	    viewerUrl: '/hybrid/html/web/viewer.html', 
      		allUrl: ''
      	  }
      	},
      	onLoad(options) {
      	  this.allUrl = this.viewerUrl + '?file=' + options.url
      	}
        }
      </script>
      
    2. 从接口中拿到pdf文件流,并进行encodeURIComponent编码

      uni.request({
        url: `/sys/affix/download`,
        data: data,
        method: 'POST',
        responseType: 'arraybuffer',
        header: {
          Authorization: sessionStorage.getItem('token')
        },
        success: res => {
          let pdfData = res.data
          let blob = new Blob([pdfData], {
            type: 'application/pdf;charset=UTF-8'
          })
          pdfData = window.URL.createObjectURL(blob)
          this.url = encodeURIComponent(pdfData) // 稍后将该地址传入上面我们新建的filePreview页面中
        },
        fail: err => {
          console.log(err)
        }
      })
      
    3. 点击文件,跳转到filePreview页面,就可以进行预览了

      uni.navigateTo({
        url: '../filePreview/index?url=' + this.url
      })
      

      pdf预览

    注意:

    • 接口responseType设置为arraybuffer;
    • 若页面空白,无报错信息,可以换个pdf.js版本(这个问题当时折腾了两天,没有报错信息,查找资料,有的说地址后面加个&.pdf,也不行,换个版本就好啦)
      pdf.js下载
    展开全文
  • preface 最近 需要实现一个上传 压缩包的需求: 支持 zip,rar 文件上传。 问题背景: xxxx业务设置 上传类型为压缩包的时候,预期前台 ios...当前问题: 遇到了 ios11.0.2 和 ios11.0.3下 不能识别 rar文件,在h5中不能

    preface

    最近 需要实现一个上传 压缩包的需求: 支持 zip,rar 文件上传。

    问题背景:
    xxxx业务设置 上传类型为压缩包的时候,预期前台 ios 端只能选中zip,rar类型。但是accept设置仅支持这两种类型后 ios14.6 下,ios11.0.3 下均不可选中 rar文件(钉钉 和 微信)。
    后来修改为 若作业类型 包含压缩包,直接放开选中类型,然后对不符合 类型的文件进行筛除。

    当前问题: 遇到了 ios11.0.2 和 ios11.0.3下 不能识别 rar文件,在h5中不能上传rar文件

    现象

    以下为 ios11.0.3 与 ios14.6 版本对比

    两款手机在 钉盘中文件对比:

    ios14.6
    在这里插入图片描述
    ios11.0.3
    在这里插入图片描述
    显然ios11.0.3 不识别 rar 文件

    在钉钉中测试 h5 上传

    因不支持视频上传,描述下效果: 同上述图片几乎一致

    测试代码如下

    // input file 对应的 accept
    <input type="file" accept="*,.zip,.rar,application/x-rar-compressed,application/zip,application/x-zip-compressed,application/octet-stream">
    

    结论

    如有错误,欢迎指正

    ios部分版本不识别rar文件,所以不支持h5 上传rar文件。

    建议1: 直接从业务上采用仅支持 zip文件压缩包,兼容性好。
    建议2: 采用当前的模式,不支持rar的手机,自己去使用 zip 文件

    展开全文
  • 小程序跳转到h5进行文件上传包,用于企业小程序端无法选择文件上传的问题
  • h5页面上传文件及图片 1、vant的uploader组件: 代码如下(示例): <van-uploader accept="application/pdf,application/xlsx,application/doc,application/docx,image/*" v-model="fileList" :max-size="2000...
  • H5实现上传文件并即时预览

    千次阅读 2018-11-14 14:22:02
    此处上传一张图片为例子。 当我们用&...现在H5提供了一种文件读取,如下: &lt;input type="file" name="myFile" id="myFile" onchange="getFileContent
  • h5 input 实现 上传文件

    2021-01-27 10:28:56
    单个文件上传 html <input type="file" id="file1" oninput="fileChange()" > <img src="" alt="上传" id="upLoadImg"> js const file1 = document.getElementById('file1') const upLoadImg = ...
  • H5标签input标签上传文件(一)

    万次阅读 2018-01-31 21:00:21
    H5的input标签提供了type=file的文件上传功能,那么如何用这个标签实现前后端之间的文件上传呢。 百度了一下,一个能用的都没有,都有BUG,讲的也很复杂,好气喔,自己写吧! 先看一部分代码: html> ...
  • uniapp在H5下选取文件上传到服务器 文件可以是图片、ppt、pdf等类型,主要借助于uni.chooseFile进行选择文件,然后借助uni.uploadFile进行上传到服务器。 1、html展示,提供一个上传按钮,在提供一个上传成功后...
  • h5 pdf 预览

    2018-11-04 16:45:16
    h5预览pdf所需要的js和css样式,不知道可以去看我的博客
  • webView加载H5页面,H5调用android本地文件管理器搜索指定类型文件选择并上传 效果图: 贴代码: mWebView.webChromeClient = object : WebChromeClient() { val mIsLoadFinish : AtomicBoolean = ...
  • 需要上传的图片的本地ID,由chooseImage接口获得 36 isShowProgressTips: 1, // 默认为1,显示进度提示 37 success: function (res) { 38 var serverId = res.serverId; // 返回图片的服务器端...
  • 插件描述:这是一款流畅的H5文件上传插件,覆盖几乎所有的使用场景,支持上传前预览,多(单)文件上传自定义,支持实时进度条等,你可以按照你想要的方式自定义更新时间:2021-05-3016:15:41更新说明:1. 新增loading...
  • 3.需要展示的是pdf的文件并需要获取签名位于pdf文件的相对位置。 功能一:实现拖拽 思路:H5拖拽及构造函数实现拖拽及缩放 要点:1.需要设置拖拽元素属性  draggable="true"   2.可拖拽的元素设置...
  • H5 + ajax 实现文件上传

    2020-08-03 17:34:52
    利用H5的特效,file来实现文件上传 <input id="toSelectImage" type="file" accept="image/*"> 设置toSelectImage元素隐藏,点击上传按钮时,js触发该元素点击 $('#toSelectImage').click() 监听该元素...
  • var formData = new FormData(); formData.append('file', files,"a.pdf"); 调用append方法时传入固定文件名就可以了; 如果需要可变文件名,可以传入变量
  • 项目中遇到通过网页上传文件的需求,IOS直接是支持的,安卓端却没反应,有些机型甚至闪退。其实是Android的webview默认是不支持<input type="file"/>文件上传的。现在的前端页面需要处理的是: 1.打开本地...
  • 3.accept="application/pdf" 4.accept="application/poscript" 5.accept="application/rtf" 6.accept="application/x-zip-compressed" 7.accept="audio/basic" 8.accept="audio/x-aiff" 9.accept="audio/x-...
  • uni-app上传文件h5

    千次阅读 热门讨论 2020-09-29 09:59:06
    需求为:h5页面中,能够上传文件,不仅仅是图片。整体框架用的是uni-app,导致限制很多,尝试了很多方法,最后终于实现了。动态创建input标签,使用xhr上传,代码如下: 1,需要上传的todo.vue页面中, <view ...
  • H5页面中我们常需要进行文件上传,那么怎么来实现这个功能呢??? 我主要谈如下两种方法。 (一)、传统的form表单方法 <form action="/Home/SaveFile1" method="post" enctype="multipart/form-data"> ...
  • h5ai 是一款功能强大 php 文件目录列表程序,不需要数据库,支持在线预览文本、图片、音频、视频等。它的功能包括:文件排序,不同视图模式,本地化,面包屑,树视图,自定义页眉和页脚,文件过滤器和搜索,文件夹...
  • 前端部分主要用ajax 上传Base64字符串码 $("#fileInput").live("change", function() { var path = $(this).val(); var showfilename = $(this).parent().parent().prev(); //展示...
  • 原文地址:... ... href="Test.pdf">下载 的时候,Chrome 会自动调用内置的 pdf 阅读器打开. 若是希望自己上传到服务器上的pdf直接被下载,对应代码应该这样: href="Test.pdf" download
  • uni-app h5input(file)方式上传文件处理 uni-app input不支持file上传需要使用js创建 <view @tap="uploadBtn"> <view v-show="false" ref="input" class="input"></view> <image src="../....
  • 可以直接设置input标签的accept属性来限制上传文件的类型<input type="file" accept="application/msword" ><br> accept属性列表 1.accept=”application/msexcel” 2.accept=”application/msword” 3....
  • 给移动端提供了一个h5链接,这个链接地址完成的是表单上传附件,很简单的一个功能,直接沿用的pc端的写法,代码如下: <div class="inputCon"> <input type="hidden" id="jlzm" name="jlzm" value="jlzm"/> ...
  • H5 FileReader读取shp文件

    2019-06-19 18:36:34
    基于H5的FileReader实现web端读取shp文件,CSV文件,文本文件坐标,并加载到地图上

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,242
精华内容 496
热门标签
关键字:

h5上传pdf文件