Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.
本文描述了如何使用 Aspose.PDF for .NET 与 Python 集成创建 PDF 的简短示例。
要在 Python 中使用 Aspose.PDF for .NET,请使用以下 requirments.txt
:
pip==21.3.1
pycparser==2.21
pythonnet==2.5.2
setuptools==60.1.0
此外,您还应该将 Aspose.PDF.dll
放入所需的文件夹中。
为了工作,我们需要将 PythonNet 集成到我们的应用程序中并进行一些设置。
import clr
aspose_pdf = clr.AddReference("D:\\aspose-python-net\\Aspose.PDF.dll")
from System import TimeSpan
from Aspose.Pdf import Document, Color, License, BorderInfo, BorderSide, Rectangle, HorizontalAlignment
from Aspose.Pdf import Table, MarginInfo
from Aspose.Pdf.Text import TextFragment, Position, TextBuilder,FontRepository
让我们制作一个包含经典文本 “Hello, world” 的简单 PDF。有关更详细的说明,请访问 此页面
class HelloWorld(object):
def __init__(self,licence_path):
self.dataDir = "C:\\Samples\\"
if licence_path:
self.licence_path = licence_path
self.aspose_license = License()
self.aspose_license.SetLicense(self.licence_path)
def run_simple(self):
# Create PDF document
document = Document()
# Add page
page = document.Pages.Add()
# Add text to new page
textFragment = TextFragment("Hello,world!")
textFragment.Position = Position(100, 600)
textFragment.TextState.FontSize = 12
textFragment.TextState.Font = FontRepository.FindFont("TimesNewRoman")
textFragment.TextState.BackgroundColor = Color.Blue
textFragment.TextState.ForegroundColor = Color.Yellow
# Create TextBuilder object
textBuilder = TextBuilder(page)
# Append the text fragment to the PDF page
textBuilder.AppendText(textFragment)
# Save PDF document
document.Save("HelloWorld_out.pdf")
下一个示例展示了如何创建包含图像和表格的复杂 PDF 文档。此示例基于 以下页面。
class HelloWorld(object):
def __init__(self,licence_path):
self.dataDir = "C:\\Samples\\"
if licence_path:
self.licence_path = licence_path
self.aspose_license = License()
self.aspose_license.SetLicense(self.licence_path)
def run_simple(self):
# ... skipped ...
# Make a Complex Document
def run_complex(self):
# Create PDF document
document = Document()
# Add page
page = document.Pages.Add()
# Add image
imageFileName = self.dataDir + "logo.png"
page.AddImage(imageFileName, Rectangle(20, 730, 120, 830))
# Add Header
header = TextFragment("New ferry routes in Fall 2020")
header.TextState.Font = FontRepository.FindFont("Arial")
header.TextState.FontSize = 24
header.HorizontalAlignment = HorizontalAlignment.Center
header.Position = Position(130, 720)
page.Paragraphs.Add(header)
# Add description
descriptionText = "Visitors must buy tickets online and tickets are limited to 5,000 per day. \
Ferry service is operating at half capacity and on a reduced schedule. Expect lineups."
description = TextFragment(descriptionText)
description.TextState.Font = FontRepository.FindFont("Times New Roman")
description.TextState.FontSize = 14
description.HorizontalAlignment = HorizontalAlignment.Left
page.Paragraphs.Add(description)
# Add table
table = Table()
table.ColumnWidths = "200"
table.Border = BorderInfo(BorderSide.Box, 1.0, Color.DarkSlateGray)
table.DefaultCellBorder = BorderInfo(BorderSide.Box, 0.5, Color.Black)
table.DefaultCellPadding = MarginInfo(4.5, 4.5, 4.5, 4.5)
table.Margin.Bottom = 10
table.DefaultCellTextState.Font = FontRepository.FindFont("Helvetica")
headerRow = table.Rows.Add()
headerRow.Cells.Add("Departs City")
headerRow.Cells.Add("Departs Island")
i=0
while(i<headerRow.Cells.Count):
headerRow.Cells[i].BackgroundColor = Color.Gray
headerRow.Cells[i].DefaultCellTextState.ForegroundColor = Color.WhiteSmoke
i+=1
time = TimeSpan(6, 0, 0)
incTime = TimeSpan(0, 30, 0)
i=0
while (i<10):
dataRow = table.Rows.Add()
dataRow.Cells.Add(time.ToString("hh\:mm"))
time=time.Add(incTime)
dataRow.Cells.Add(time.ToString("hh\:mm"))
i+=1
page.Paragraphs.Add(table)
# Save PDF document
document.Save(self.dataDir + "Complex.pdf")
此代码片段展示了如何在 Windows PC 上运行上述示例。我们假设 class HelloWorld
位于 example_get_started.py
文件中。
如果您运行 Aspose.PDF for .NET 的试用版,您应该将空字符串作为 license_path
传递。
import example_get_started
def main():
example = example_get_started.HelloWorld("<license_path>")
example.run_simple()
example.run_complex()
if __name__ == '__main__':
main()
Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.