小编R-J*_*R-J的帖子

Webshot在DigitalOcean Ubuntu 14.04中的Meteor失败

我正在使用此代码生成pdf:

let fileUri = process.env.PWD + '/storage/orders-pdf/' + fileName;

// Commence Webshot
webshot(html_string, fileUri, options, function(error) {
  fs.readFile(fileUri, function (err, data) {
    if (err) {
        return console.log(err);
    }

    fs.unlinkSync(fileUri);
    fut.return(data);
  });
});

let pdfData = fut.wait();
Run Code Online (Sandbox Code Playgroud)

但它会引发以下错误:

{ [Error: ENOENT, open '/opt/holi/storage/orders-pdf/Attributes.pdf']
   errno: 34,
   code: 'ENOENT',
   path: '/opt/holi/storage/orders-pdf/Attributes.pdf' }
Run Code Online (Sandbox Code Playgroud)

尝试使用npm包https://github.com/brenden/node-webshot 然后代码在localhost上完美运行,但在服务器上失败并抛出此错误:

编辑:

即使在没有运行webshot的情况下:

fs.readFile(fileUri, function (err, data) {
  if (err) {
    return console.log(err);
  }

  fs.unlinkSync(fileUri);
  fut.return(data);
});
Run Code Online (Sandbox Code Playgroud)

该文件未创建..

EDIT 2:

Webshot抛出一个错误: [Error: PhantomJS exited with return value 2]

编辑3:实际问题: …

node.js meteor digital-ocean ubuntu-14.04

6
推荐指数
1
解决办法
370
查看次数

DIV在其内容之前创建换行符

这是一个示例代码:http://jsfiddle.net/gppjvjjs/1/

正如您所看到的,有可编辑的DIV内容,即句子.一句话<=>一个SPAN

问题是DIV块开始时的换行符.如何删除它,保留剩余内容的格式?

DIV内容是使用文本文件中的文本以编程方式生成的,但不包含在jsfiddle中,但这里是函数:

/* Reads sentences from loaded text. */
readSentences = function(text) {
  var lines = [],
    i = 0;

  $.each(text.split("\n"), function(key, value) {
    i++;
    var wrapper  = $('<div/>'),
      span  = $('<span/>').attr('num', i),
      sentencesMatch = value.match(/([\sa-zA-Z\d]){1}.+?[\.!\?]{1}([\s]+|$)/g);
// console.log(sentencesMatch);
    if (sentencesMatch !== null && sentencesMatch.length) {
      var sentences = '';

      $.each(sentencesMatch, function(k, v) {
        var trimmedValue = $.trim(v);

        if (trimmedValue != "") {
          if (k > 0) {
            i++;
            span.attr('num', i);
          }

          span.text(trimmedValue);

          sentences += wrapper.append(span).html() …
Run Code Online (Sandbox Code Playgroud)

html javascript css jquery

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

具有透明内容背景的剪辑路径语音气泡

我创建了一个带边框的语音气泡剪辑路径(非常重要)。现在我正在尝试使内容背景透明。

这是我目前的解决方案:

.background {
  background: url(https://thumbs.dreamstime.com/b/birch-forest-sunny-day-green-woods-summer-spring-landscape-43067305.jpg) no-repeat;
  background-size: cover;
  text-align: center;
}

.clip-svg {
  width: 0;
  height: 0;
}

.clip-wrap {
  display: inline-block;
  vertical-align: top;
  padding: 3px;
  background-color: #639;
  background-color: rebeccaPurple;
  clip-path: url("#speechebubble-clip");
}

.clip {
  width: 180px;
  height: 180px;
  position: relative;
  background: #fff;
}

.clip {
  clip-path: url("#speechebubble-clip");
}
Run Code Online (Sandbox Code Playgroud)
<div class="background">
  <div class="clip-wrap">
    <div class="clip">
      test
    </div>
  </div>
</div>

<svg class="clip-svg">
 <defs>
  <clipPath id="speechebubble-clip" clipPathUnits="objectBoundingBox">
  <path width="100%" height="100%" transform="scale(0.0045, 0.00385)" id="clip-mask" d="M34.1983772,243.81581 C35.2123618,243.81581 36.0373744,244.643759 36.0373744,245.661353 L36.0373744,260 L63.450348,244.064408 C63.7301493,243.901754 64.0488773,243.81581 …
Run Code Online (Sandbox Code Playgroud)

html css svg clip-path

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