我只想跳过CombinePdf::ParsingError(可选内容PDF文件不受支持,其页面无法安全地提取。)当我上传一个PDF文件内我的开始/救援,但它不工作,我该怎么办?
begin FileManager::PdfValidation.new(uploaded_files) rescue ParsingError => e end
vjrehmav1#
如果你看一下combine_pdf的代码,你会发现解析带有可选内容的文件 * 是 * 可能的。此外,自述文件还指出:有时CombinePDF会引发异常,即使PDF可以被解析(即,当PDF可选内容存在时)...我发现最好谨慎行事,尽管对于可选内容PDF,使用CombinePDF. load(pdf_file,allow_optional_content:真)。你可以试试。或者,根据您的用例,您可以尝试pdf-reader(如果您只是想从PDF中阅读一些内容)或HexaPDF(这是一个功能齐全的PDF库;注:我是HexaPDF的作者)。
zqry0prt2#
试试这个:
CombinePDF.load("your_file.pdf", unsafe: true, allow_optional_content: true)
图片来源:https://github.com/boazsegev/combine_pdf/issues/28#issuecomment-1376413479
2条答案
按热度按时间vjrehmav1#
如果你看一下combine_pdf的代码,你会发现解析带有可选内容的文件 * 是 * 可能的。
此外,自述文件还指出:
有时CombinePDF会引发异常,即使PDF可以被解析(即,当PDF可选内容存在时)...我发现最好谨慎行事,尽管对于可选内容PDF,使用CombinePDF. load(pdf_file,allow_optional_content:真)。
你可以试试。
或者,根据您的用例,您可以尝试pdf-reader(如果您只是想从PDF中阅读一些内容)或HexaPDF(这是一个功能齐全的PDF库;注:我是HexaPDF的作者)。
zqry0prt2#
试试这个:
图片来源:https://github.com/boazsegev/combine_pdf/issues/28#issuecomment-1376413479