标签: pypandoc

从 pandoc LaTex 输出中删除 \hypertarget

我正在使用 pypandoc 将 Markdown 文件转换为 LaTex。我的降价文件有一个标题,例如:

# Header Text # 
Run Code Online (Sandbox Code Playgroud)

当 pypandoc 将文件呈现为 .tex 文件时,它显示为:

\hypertarget{header-text}{%
\section{Header Text}\label{header-text}}
Run Code Online (Sandbox Code Playgroud)

虽然这是一个很好的功能,可以轻松链接回节标题,但我不一定想要这样,并且在这种情况下更希望 pypandoc 只生成:

\section{Header Text}
Run Code Online (Sandbox Code Playgroud)

是否有可用于关闭 \hypertarget{} 功能的 pandoc 设置或 pypandoc 设置?我已经查看了 pandoc 的文档,但在任何地方都没有看到。

pandoc pypandoc

8
推荐指数
2
解决办法
2469
查看次数

使用pypandoc将html表转换为docx文件

Pandoc 不能将 HTML 表格很好地呈现为 docx 文档。我获取请求的内容,然后使用模板文件呈现它。然后我像这样使用 pypandoc:

 response = render(                                     
   request,                                      
   'template.html',                      
   {                                             
     "field1": f1,                               
     "field1": f2,     
   }                                             
 )                                               

 import pypandoc                                                                                            
 pypandoc.convert(source=response.content, format='html', to='docx', outputfile='output.docx')  
Run Code Online (Sandbox Code Playgroud)

template.html 包含一个表格。在 docx 文件中,我得到一个表格,其内容在下面分开。是否有额外的参数需要考虑来解决这个问题?或者 pandoc 转换还不支持井表?是否有任何功能示例?也许有更简单的方法来做到这一点?


编辑 1

我提供了更简洁的例子。这是一个测试 python 片段:

$ cat test-table.py 
#!/usr/bin/env python
test_table = """
 <p>Table with colgroup and col</p>
 <table border="1">
   <colgroup>
     <col style="background-color: #0f0">
     <col span="2">
   </colgroup>
   <tr>
     <th>Lime</th>
     <th>Lemon</th>
     <th>Orange</th>
   </tr>
   <tr>
     <td>Green</td>
     <td>Yellow</td>
     <td>Orange</td>
   </tr>
   <tr>
     <td>Fruit</td>
     <td>Fruit</td>
     <td>Fruit</td>
   </tr>
 </table>

   """
print("[test_table]")
print(test_table)
import pypandoc
pypandoc.convert(source=test_table, …
Run Code Online (Sandbox Code Playgroud)

python pypandoc

5
推荐指数
0
解决办法
1914
查看次数

使用 pypandoc 和 BytesIO 文件路径将 docx 转换为 pdf

我想从 azure blob 存储获取 docx 文件,将其转换为 pdf,然后再次将其保存到 azure blob 存储中。我想使用 pypandoc 将 docx 转换为 pdf。

pypandoc.convert_file('abc.docx', format='docx', to='pdf',outputfile='abc.pdf')
Run Code Online (Sandbox Code Playgroud)

但是,我想在 azure 函数中运行此代码,但我将没有足够的空间来保存文件,因此我使用 BytesIO 作为流从 azure blob 存储下载文件,如下所示。

blob_service_client = BlobServiceClient.from_connection_string(cs)
container_client=blob_service_client.get_container_client(container_name)
blob_client = container_client.get_blob_client(filename)
streamdownloader=blob_client.download_blob()

stream = BytesIO()
streamdownloader.download_to_stream(stream)
Run Code Online (Sandbox Code Playgroud)

现在我想将我的 docx 文件转换stram为 pdf 文件。转换后的 pdf 还可以另存为 BytesIO 流,因此可以将其上传到 blob 存储中,而无需占用系统内存。但是 pypandoc 显示错误,好像RuntimeError: source_file is not a valid path 您可以建议其他方法将 docx 转换为 pdf 来处理 BytesIO 文件格式,那么我想提一下,我将在 doc2pdf 等库不支持的 Linux 环境中工作。

python pdf docx pandoc pypandoc

5
推荐指数
0
解决办法
611
查看次数

AttributeError:模块“pypandoc”没有属性“convert”

我正在尝试将 python 项目切换到诗歌和 pyproject.toml。以前,我们使用requirements.txt。

然而,当我尝试使用pyspark 2.4.8诗歌安装时,遇到了以下错误:

File "<string>", line 156, in <module>
AttributeError: module 'pypandoc' has no attribute 'convert'
[end of output]

note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed
Run Code Online (Sandbox Code Playgroud)

有人遇到过这个吗?你知道为什么这是诗歌的问题而不是文学的问题吗requirements.txt

pyspark pypandoc python-poetry

5
推荐指数
2
解决办法
5198
查看次数

标签 统计

pypandoc ×4

pandoc ×2

python ×2

docx ×1

pdf ×1

pyspark ×1

python-poetry ×1