小编Yoh*_* L.的帖子

调用类变量时打印消息

我使用 2 python 类作为配置文件。其中一个包含旧参数(不推荐使用),如果使用了不推荐使用的参数,我想显示一条消息。

这是我如何使用不同的类:

config_backup.py

class _ConfigBackup:
    PARAM1 = 'a'
    PARAM2 = 'b'
Run Code Online (Sandbox Code Playgroud)

config_new.py

class Config(_ConfigBackup):
    PARAM3 = 'c'
    PARAM4 = 'd'

cfg = Config
Run Code Online (Sandbox Code Playgroud)

然后我可以调用 cfg 并得到如下结果:

>>> cfg.PARAM3
'c'
>>> cfg.PARAM1
Parameter PARAM1 is deprecated.
'a'
Run Code Online (Sandbox Code Playgroud)

我认为函数或方法看起来像这样:

def warning(param):
    print(f"Parameter {param.__name__} is deprecated.")
    return param
Run Code Online (Sandbox Code Playgroud)

我不确定这是否可行,也许通过使用装饰器或 with 语句,知道吗?

python

9
推荐指数
2
解决办法
375
查看次数

在 pdf.js 中使用多个画布

我想在 html page 4 canvas 中显示,每个画布对应一个 pdf 文件的页面。我成功地在 1 个画布中显示了 1 个页面,但是当我想显示 4 个时它不起作用:没有显示任何页面。

我做错了什么?

编辑: 我试图解决承诺的问题(我编辑了我的代码),但现在我遇到了另一个错误:Error: Invalid page request pdf.js:2687:31这是相应的代码(2697 是返回的行):

getPage: function WorkerTransport_getPage(pageNumber, capability) {
  if (pageNumber <= 0 || pageNumber > this.numPages ||
      (pageNumber|0) !== pageNumber) {
    return Promise.reject(new Error('Invalid page request'));
  }
Run Code Online (Sandbox Code Playgroud)

这是我的代码:

html文件:

<html>
<head>
    <meta charset="utf-8"/>
    <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0">
    <meta name="description" content="PDF Viewer"/>
    <title>My page</title>
</head>

<body>

<body>
    <canvas id="canvas1" width="300" height="300"></canvas>

    <canvas id="canvas2" width="300" height="300"></canvas>

    <canvas id="canvas3" width="300" height="300"></canvas> …
Run Code Online (Sandbox Code Playgroud)

html javascript pdf.js

4
推荐指数
2
解决办法
4669
查看次数

使用 pdf.js 显示具有透明背景的 pdf

我有一个 4 页的 pdf,每一页都有一个透明的背景。我使用 pdf.js 来显示它们,但我想在我的 html 页面上以透明背景显示它们,但我不知道如何做到这一点,总是有一个白色背景:

例子

我认为根据此问题是可能的,但是当我将行更改page.render(renderContext);page.render({renderContext, viewport, backgroundColor: 'rgba(0,0,0,0)' });(如问题中所述)时,出现以下错误:

在此处输入图片说明

关于我如何管理的任何想法?

我使用 pdf.js 版本 v1.9.426 和 Firefox 55.0.2(64 位)。

编辑: 使用以下代码,我在控制台中没有错误,但我的 pdf 文件的背景仍然是白色的。(但是,如果使用例如 photoshop 打开 pdf 则没有背景)

链接到我使用的 PDF 文件:tempPDF.pdf

这是我的 javascript 文件来显示四个页面:

var pdfFile;
PDFJS.getDocument('/assets/pdf/tempPDF.pdf').then(function (pdf) {
    pdfFile = pdf;

    for(var i = 1; i <= 5; i++) {
        var canvas = document.getElementById('canvas'+i);
        var context = canvas.getContext('2d');
        PDFJS.disableStream = true;
        openPage(pdf, i, context, 50);
    }
});

function openPage(pdfFile, pageNumber, …
Run Code Online (Sandbox Code Playgroud)

html javascript pdf background pdf.js

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

字幕中的多种尺寸字体

我想在图表中有多个标题。图片胜于任何词: 在此处输入图片说明

title对每个图形(D2 / E,D3 / E和D4 / E)都使用a,suptitle对标题1和2使用a ,但是它们具有相同的字体大小。是否有解决方案以使标题1和标题2具有不同的大小?

我已经使用LaTeX 看到了此解决方案,但是问题是当我使用plt.rc('text', usetex=True)每种字体和文本时都会更改。而且,我在每个标题中都使用了变量,看起来我用LaTeX无法做到这一点。

python matplotlib

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

标签 统计

html ×2

javascript ×2

pdf.js ×2

python ×2

background ×1

matplotlib ×1

pdf ×1