Advanced Office Tool
Advanced office document processing toolkit — Word (DOCX), Excel (XLSX), and other formats.
Installation
pip install advanced-office-tool
Usage
Use ServerAgent for all document operations. Import once, call methods on any file path.
from advanced_office_tool import ServerAgent
agent = ServerAgent()
DOCX Translation
result = agent.translate_file(
"manual.docx",
target_language="en", # "en", "zh", "auto", etc.
target_format="{translated}" # or "{original}" or "{original}{translated}"
)
print(result["output_file_path"])
# → /home/ovos/.hermes/skills/office-tool/uploads/manual_en.docx
DOCX Merge (with auto CRC-32 repair)
from advanced_office_tool import DocxAgent, SafeDocument
# Merge with auto repair for corrupted files
agent = DocxAgent()
agent.load_document("chapter1.docx")
agent.merge_docx(["chapter2.docx", "chapter3.docx"], "merged.docx")
SafeDocument transparently repairs bad CRC-32 ZIP checksums:
from advanced_office_tool import SafeDocument
from docx import Document
# Broken DOCX auto-repairs on first access
doc = SafeDocument("corrupted.docx")
for p in doc.paragraphs:
print(p.text)
PDF Conversion
# PDF → DOCX
result = agent.pdf_to_docx("scan.pdf")
print(result["content"])
# DOCX → PDF
result = agent.docx_to_pdf("report.docx")
print(result["content"])
# XLSX → PDF
result = agent.xlsx_to_pdf("data.xlsx")
print(result["content"])
# Images → PDF
result = agent.pngs_to_pdf(["img1.png", "img2.png"])
print(result["output_pdf_path"])
# PDF → PNG images
images = agent.pdf_to_png("document.pdf", dpi=300)
print(images) # ["/path/to/page0.png", ...]
PDF Stamp
result = agent.add_stamp_to_pdf(
"contract.pdf",
position="80,80", # top-right corner
scale="1.5", # stamp size multiplier
stamp_image="./stamp.png" # stamp image path
)
print(result["output_pdf_after_stamp"])
Excel Price Adjustment
result = agent.adjust_price_in_excel(
"quote.xlsx",
price_multiplier="1.3/6.9", # unit_price * multiplier / divisor
decimal_places="0" # round to 0 decimals
)
print(result["output_file_path"])
Template Rendering
result = agent.render_docx_template(
"template.docx",
obj={"name": "Company A", "amount": 50000},
output_path="output.docx"
)
PDF Merge to DOCX (N images per page)
result = agent.merge_pdfs_folder_to_docx_vertical(
pdf_folder="./invoices", # folder with PDF files
number_in_page=2 # 2 PDF pages per DOCX page
)
print(result["output_file_path"])
Unzip
result = agent.uncompress_zip("archive.zip", "mt123456")
print(result["message"])
Available Classes
| Class | Description |
|---|---|
ServerAgent |
Main orchestrator — PDF, Excel, DOCX, translation, templates |
DocxAgent |
DOCX paragraph/table translation and manipulation |
ExcelOperator |
XLSX merge, formula, style, image manipulation |
TranslateAgent |
pygtrans batch translate with terminology protection |
SafeDocument |
Auto-repair DOCX files with bad CRC-32 checksums |
OdooAgent |
Odoo ERP integration |
License
Apache-2.0
Metadata
Release files for advanced-office-tool 1.2.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| advanced_office_tool-1.2.2.tar.gz | 65.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| advanced_office_tool-1.2.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 134.2 kB
Release files / advanced_office_tool-1.2.2.tar.gz
| Download URL | advanced_office_tool-1.2.2.tar.gz |
|---|---|
| Size | 65.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
34be1881c46c779bcbade06740c1280052b27210b86d10ce131b214346ba0210
|
|
BLAKE2b-256 checksum How to use checksums |
941b8c90d9077efa0e1cc9cd516c81e62bacc7896f41c852644a5e815c834317
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.11.2
|
Release files / advanced_office_tool-1.2.2-py3-none-any.whl
| Download URL | advanced_office_tool-1.2.2-py3-none-any.whl |
|---|---|
| Size | 68.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
280c6e64942da791039bd2358752b58215005b625e1beccb13e547571aaa6f6c
|
|
BLAKE2b-256 checksum How to use checksums |
2a9c713b76f3867f4807786dd02c83b1e8f879a332ff382bbc5ddb66b0c23ee7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.11.2
|