Render errors in generated PDF reports (Canvas)


When generating a PDF reports from Canvas, I came across two unpleasant render errors:

  1. It appears that font choices are not being considered, which in the following case renders a customised chart unreadable. (Tried Open Sans and Helvetica Neue but the renderer insists on Lucida Grande...)

Canvas editor:

Generated PDF:

Here the expression, in case it provides clues:

    | essql 
    | pointseries x="count" y="message"
    | plot defaultStyle={seriesStyle bars="0.8" horizontalBars=true color="#d28f79"} legend=false xaxis=true yaxis={axisConfig position="right"} 
      font={font family="'Open Sans', Helvetica, Arial, sans-serif" size=12 align="left" color="#000000" weight="bold" underline=false italic=false}
    | render 
      .flot-x-axis {
        z-index: 1;
    .flot-y-axis {
        transform: translate(-800px,0px);
        max-width: fit-content;
        white-space: nowrap;
    }" containerStyle={containerStyle opacity="1" padding="20px"}
  1. The first element on every page of a rendered PDF seems to be selected (when being rendered in Chromium?), which is visible in the following screenshots by the fine turquoise line/frame.

Shape element:

Image element (from SVG):

In case there are any settings I could try to avoid these issues I'd be happy to hear about them (this Kibana instance is running on Elastic Cloud)!

Thanks, Christian

@Catherine_Liu / @tims - can you please help ?

Hey there Christian!

For the first issue, I believe that's due to what fonts are installed on the Cloud instance. The reporting job runs on the Cloud instance so it only has access to the fonts installed on that machine. I believe the Cloud team has identified this as an issue and I'm going to go ahead and follow-up with them about it. We're tracking this issue as a part of a Canvas PDF meta issue here:

For the second issue, that is definitely a weird bug. I can reproduce but only when my element is in the exact top corner of the workpad. I've opened a bug report for that issue here: