小编use*_*490的帖子

使用javascript(使用pdf.js)将pdf转换为png数组

我正在尝试开发一个前端代码,要求用户提供 pdf,然后在内部(在用户浏览器中)生成一个 png 数组(通过数据到 url),其中数组中的每个条目对应于 pdf 中的一个页面:

dat[0] = 第 1 页的 png
dat[1] = 第 2 页的 png
...

当我测试下面的代码时,页面以某种方式呈现在彼此之上并旋转。

<script src="http://cdnjs.cloudflare.com/ajax/libs/processing.js/1.4.1/processing-api.min.js"></script><html>
<!--
  Created using jsbin.com
  Source can be edited via http://jsbin.com/pdfjs-helloworld-v2/8598/edit
-->
<body>
  <canvas id="the-canvas" style="border:1px solid black"></canvas>
  <input id='pdf' type='file'/>

  <!-- Use latest PDF.js build from Github -->

  <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.4/jquery.min.js"></script>
  <script src="pdf.js"></script>
  <script src="pdf.worker.js"></script>
  <script type="text/javascript">
    //
    // Asynchronous download PDF as an ArrayBuffer
    //
    dat = [];
    

    var pdf = document.getElementById('pdf');
    pdf.onchange = function(ev) {
      if …
Run Code Online (Sandbox Code Playgroud)

javascript pdf frontend png pdf.js

8
推荐指数
2
解决办法
2万
查看次数

Java:如何有效地从数据库中读取?

我试图从java中的sql数据库读出一列,我希望结果在数组中返回.这是功能:

public static double[] open(Connection conn,String symbol,int startdate,int enddate)                 throws SQLException {
    int id = database.get_stockid(conn, symbol);
    Statement stat = conn.createStatement();
    ResultSet rs = stat.executeQuery("select price_open from stock_data where stock_id="+id+" and date>="+startdate+" and date<="+enddate+";");
    ArrayList<Double> data = new ArrayList<Double>();
    while(rs.next()) {
        data.add(rs.getDouble("open"));
    }
    double[] data1 = new double[data.size()];
    for(int a = 0; a < data1.length; ++a) {
        data1[a]=data.get(a);
    }
    return data1;
}
Run Code Online (Sandbox Code Playgroud)

这很慢.它使用我的sqlite数据库需要1.5秒.这是读取列的标准方法还是我做错了什么?这是我的应用程序的瓶颈,所以我需要它尽可能快.


编辑:谢谢.我刚刚发现ArrayList没有引起问题.瓶颈必须在于sql部分:如果我加载数据仅10天就需要加载数据10年.所以我必须改进我的SQL,但如何?

这里改进了代码:

public static double[] open(Connection conn,String symbol,int startdate,int enddate) throws SQLException {
    int id = database.get_stockid(conn, …
Run Code Online (Sandbox Code Playgroud)

java sql performance

4
推荐指数
1
解决办法
3527
查看次数

返回QVector的最佳方式

我试图从一个应该计算移动平均值的函数返回一个QVector.我的问题是如何使功能更有效.数学很好,我更想知道如果我在返回QVector时做错了什么.这是我到目前为止的代码:

QVector<double> moving_exponential_average(const QVector<double>& a, double lambda) {
        if(lambda <0 ) {
            lambda = 0;
        }
        if(lambda >1) {
            lambda = 1;
        }
        QVector<double> b;
        b.reserve(a.size());

        b.append(a[0]);
        double l_inv = 1-lambda;
        for(unsigned int i = 1; i < a.size(); ++i) {
            b.append(a[i]*lambda+l_inv*b[i-1]);
        }
        return b;
    }
Run Code Online (Sandbox Code Playgroud)

我使用默认构造函数来保持QVector不设置默认值.我尝试调整大小的速度要慢得多.您有什么建议如何优化?

问候

c++ optimization qt qvector

2
推荐指数
1
解决办法
4314
查看次数

标签 统计

c++ ×1

frontend ×1

java ×1

javascript ×1

optimization ×1

pdf ×1

pdf.js ×1

performance ×1

png ×1

qt ×1

qvector ×1

sql ×1