从处理库导出多个pdf文件

时间:2013-11-05 11:22:07

标签: java processing word-cloud

我需要使用处理库,更具体地说是WordCram来输出多个PDF文件。我不想使用任何小程序和处理库的PApplets。

我正在查看此引用page仅用于输出PDF,

import processing.pdf.*;

PGraphics pdf = createGraphics(300, 300, PDF, "output.pdf");
pdf.beginDraw();
pdf.line(50, 50, 250, 250);
pdf.dispose();
pdf.endDraw();

这是WordCram的代码,

new WordCram(this)
    .fromWords(getWords(fromFile))
    .withFont("Sawasdee")
    .drawAll();

据我所知,从这段代码中,WordCram构造函数接受输入this,是PApplet继承的类。

如果没有任何PApplet,我将如何使用WordCram?

1 个答案:

答案 0 :(得分:0)

您可以直接从WordCram执行此操作。

  1. 制作PDF图形上下文,就像上面一样。
  2. 为草图创建一个WordCram,但使用toCanvas方法渲染到PDF图形上下文。
  3. 前进到下一页。
  4. 制作另一个WordCram。
  5. 请注意,这似乎以相反的顺序呈现页面:最后一页。

    我能够使用此示例草图成功渲染PDF:

    import processing.pdf.*;
    import wordcram.*;
    
    // Make a PDF graphics context
    PGraphics pdf = createGraphics(300, 300, PDF, "output.pdf");
    pdf.beginDraw();
    pdf.background(30);
    
    // Make a WordCram for the sketch, but use the `toCanvas` method 
    // to render to the PDF graphics context
    new WordCram(this).
      fromWebPage("http://nytimes.com").
      toCanvas(pdf).
      withColor(color(225)).
      drawAll();
    
    // Advance to the next page
    ((PGraphicsPDF)pdf).nextPage();
    
    // Make another WordCram
    pdf.background(225);
    new WordCram(this).
      fromWebPage("http://nytimes.com").
      toCanvas(pdf).
      withColor(color(30)).
      drawAll();
    
    pdf.dispose();
    pdf.endDraw();
    
    exit();