Go to file
2026-04-07 09:38:21 +07:00
controllers feat: reduce maximum image processing and upload dimensions to 1080. 2026-02-24 11:19:03 +07:00
data fix the iamge placeholder text 2026-01-08 12:14:08 +07:00
models fix: Reset base output stream position before PDF file reading to ensure correct parsing. 2026-02-12 15:56:38 +07:00
static/src fix: patch PDFIframe to strip trailing whitespace nodes during sign item rendering 2026-04-07 09:31:45 +07:00
tests fix error on odoo 19 2026-01-23 13:40:05 +07:00
__init__.py feat: implement server-side image compression for sign image fields. 2026-01-07 15:43:18 +07:00
__manifest__.py fix error on odoo 19 2026-01-23 13:40:05 +07:00
.gitignore refactor: Adjust image_process import path, update sign route type to jsonrpc, and add a .gitignore file. 2026-01-21 09:36:14 +07:00
README.md docs: add README documentation for sign_image_field module 2026-04-07 09:38:21 +07:00

Sign Image Field

Add an Image field type to Odoo Sign templates to allow users to securely attach/upload images into documents.

Features

  • New Field Type: Adds an "Image" field to the Sign template editor toolbar.
  • Image Upload Integration: Allows signers to click the field and upload local images (JPEG, PNG, GIF) directly onto the document.
  • Dynamic Positioning: Place the image field anywhere on your document just like any other sign field.
  • Data Extensibility: Integrates securely with Odoo's core sign.request.item.value models to retrieve images directly inside signed PDFs.

Usage

  1. Edit a Template: Go to Sign -> Templates and open a template for editing.
  2. Drag & Drop: Drag the "Image" field from the left toolbar onto your document.
  3. Configure: Click on the image field to label it appropriately.
  4. Save: Save the template and send the sign request.
  5. Sign: The recipient can click on the image box to browse their system for an image to upload.

Technical Details

  • Module Name: sign_image_field
  • Dependency: sign (Enterprise)
  • Odoo Version: 19.0
  • Authors: Suherdy Yacob

Technical Notes & Bug Fixes

  • Trailing Whitespace Patch (PDFIframe crash): Custom template components injected into the Sign module canvas can sometimes incur trailing QWeb whitespace Text nodes. This causes Odoos native JS to crash on target.lastChild reference when opening documents. This module implements a frontend Javascript patch (sign_image_upload.js) wrapping Odoo's native insertAdjacentHTML method to instantly trim whitespace nodes upon injection. This ensures robust application stability without diverging core Odoo source code.