Mục tiêu chính của tôi là có tất cả lưu lượng hình ảnh trên một trang để hoạt động như thể chúng là các liên kết có thể nhấp. Để thực hiện điều này, tôi sẽ tạo canvas.linkRect() và đặt nó trên Hình ảnh được hiển thị. Dưới đây là một ví dụ về cách tôi sử dụng canvas.linkRect():Có thể lấy vị trí tọa độ của Flowable khi nó được kết xuất bằng ReportLab.platypus không?
canvas.linkURL(
url='url_goes_here',
rect=(x1, y1, x2, y2), #(x1, y1) is the bottom left coordinate of the rectangle, (x2, y2) is the top right
thickness=0, relative=1
)
Sau khi xem trong lớp BaseDocTemplate, tôi tìm thấy một phương pháp gọi là afterFlowable (tự, chaûy). Tôi overrode rằng phương pháp và kêu gọi dir() trên chaûy qua tại, kết quả là đây:
['__call__', '__doc__', '__init__', '__module__', '_doctemplateAttr',
'_drawOn', '_fixedHeight', '_fixedWidth', '_frameName', '_hAlignAdjust',
'_showBoundary', '_traceInfo', 'action', 'apply', 'draw', 'drawOn', 'encoding',
'getKeepWithNext', 'getSpaceAfter', 'getSpaceBefore', 'hAlign', 'height',
'identity', 'isIndexing', 'locChanger', 'minWidth', 'split', 'splitOn', 'vAlign',
'width', 'wrap', 'wrapOn', 'wrapped']
Nó có chiều rộng và thuộc tính chiều cao tôi có thể sử dụng để xác định lớn như thế nào linkRect() nên được (những gì x2 và y2 nên), nhưng không có thông tin về nơi bắt đầu có thể chảy (cần x1 và y1 là gì?).
Nếu mọi thứ khác không thành công, tôi nghĩ bằng cách nào đó ghép nối một Frame và Image Flowable với nhau vì Frame có thông tin tôi muốn tạo một liên kết(). Tuy nhiên, có vẻ như nó sẽ là một rắc rối để biết khi nào và làm thế nào để đặt hàng một danh sách các khung với danh sách tương ứng của Flowables, trên đầu trang của việc phải biết chính xác nơi để đưa những khung hình ảnh. Có cách nào khác để đạt được điều này hay không?
Cảm ơn!