gpt4 book ai didi

javascript - 单片眼镜阅读器无法读取 25mb 大小的 pdf

转载 作者:行者123 更新时间:2023-12-03 12:30:59 25 4
gpt4 key购买 nike

我刚刚开始使用 monocle 阅读器,并尝试使用我下载的 pdf,之前它大约有 800 页和 25mb 文件大小,现在的问题是 monocle 返回此错误

TypeError: Cannot read property 'onFirstPageOfBook' of null

Resource interpreted as Document but transferred with MIME type application/pdf

如果我使用 1 页 pdf,效果很好。

这是我的代码:

<script type="text/javascript">

var bookData = {
getComponents: function () {
return [
'coolresume.pdf',
'content1.html'
];
},
getContents: function () {
return [
{title: "Chapter 1", src: 'coolresume.pdf'},
{title: "Chapter 2", src: 'content1.html'}
]
},
getComponent: function (componentId) {
return {url:componentId};
},
getMetaData: function(key) {
return {
title: "Test document",
creator: "Aron Woost"
}[key];
}
}

Monocle.Events.listen(
window,
'load',
function () {
window.reader = Monocle.Reader('reader', bookData);
}
);
</script>

the monocle

这是我得到的示例 PDF,这也适用于将相同的 PDF 转换为 EPUB

PDF URL

最佳答案

Monocle js 可能不正式支持 PDF:https://groups.google.com/forum/#!searchin/monocle-js/pdf/monocle-js/0ue1t243JLg/hgOPIQaramQJ

然而,有些 PDF 可以工作,有些则不行。我跟踪了那些不包含 monocle js 源代码的代码,第 3555、3556、3557 行:

Monocle.Events.listen(frame, 'load', onDocumentReady);
Monocle.Events.listen(frame, 'load', onDocumentLoad);
frame.contentWindow.location.replace(url);

...使用 PDF 作为源,url 值将发送到 frame.contentWindow.location.replace 函数,但对于某些 PDF, load 事件未触发,因此之前附加的函数不会执行,并且脚本因空白页面而停止,但其他 PDF 加载正常。

此外,当我通过这些调试器运行 monocle HTML 页面时,失败的 PDF 也可以正常加载。

另一点,monocle js 正在嵌入标签中加载 PDF。独立于 monocle js 加载的相同嵌入标签代码加载得很好。那些可以加载 2 个页面的页面,都嵌入了具有相同 PDF url 的标签。那些不起作用的只实现了一个嵌入标签,但并非所有单片眼镜 ID 都在那里。

可能与文件大小有关。我无法加载 555K 的 PDF,但 412K 及更低的分辨率可以加载。

这是一个令人讨厌的黑客行为,但这会加载否则不会加载的 PDF:

//Monocle.Events.listen(frame, 'load', onDocumentReady);
//Monocle.Events.listen(frame, 'load', onDocumentLoad);
frame.contentWindow.location.replace(url);
onDocumentReady();
onDocumentLoad();

关于javascript - 单片眼镜阅读器无法读取 25mb 大小的 pdf,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23933433/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com