mirror of https://github.com/JakubMelka/PDF4QT.git
Signature plugin: bugfixing
This commit is contained in:
parent
c6cfb4cdc8
commit
f77e761182
|
@ -953,7 +953,15 @@ void PDFCreatePCElementTextTool::setAlignment(Qt::Alignment alignment)
|
|||
void PDFCreatePCElementTextTool::setPen(const QPen& pen)
|
||||
{
|
||||
BaseClass::setPen(pen);
|
||||
m_textEditWidget->setAppearance(m_element->getFont(), m_element->getAlignment(), m_element->getRectangle(), std::numeric_limits<int>::max(), pen.color());
|
||||
|
||||
QFont font = m_element->getFont();
|
||||
font.setHintingPreference(QFont::PreferNoHinting);
|
||||
if (font.pointSizeF() > 0.0)
|
||||
{
|
||||
font.setPixelSize(qRound(font.pointSizeF()));
|
||||
}
|
||||
|
||||
m_textEditWidget->setAppearance(font, m_element->getAlignment(), m_element->getRectangle(), std::numeric_limits<int>::max(), pen.color());
|
||||
emit getProxy()->repaintNeeded();
|
||||
}
|
||||
|
||||
|
|
|
@ -638,6 +638,24 @@ int PDFPageContentScene::getInputPriority() const
|
|||
return ToolPriority + 1;
|
||||
}
|
||||
|
||||
void PDFPageContentScene::drawElements(QPainter* painter,
|
||||
PDFInteger pageIndex,
|
||||
PDFTextLayoutGetter& layoutGetter,
|
||||
const QMatrix& pagePointToDevicePointMatrix,
|
||||
const PDFPrecompiledPage* compiledPage,
|
||||
QList<PDFRenderError>& errors) const
|
||||
{
|
||||
for (const auto& element : m_elements)
|
||||
{
|
||||
if (element->getPageIndex() != pageIndex)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
element->drawPage(painter, pageIndex, compiledPage, layoutGetter, pagePointToDevicePointMatrix, errors);
|
||||
}
|
||||
}
|
||||
|
||||
void PDFPageContentScene::drawPage(QPainter* painter,
|
||||
PDFInteger pageIndex,
|
||||
const PDFPrecompiledPage* compiledPage,
|
||||
|
@ -650,16 +668,7 @@ void PDFPageContentScene::drawPage(QPainter* painter,
|
|||
return;
|
||||
}
|
||||
|
||||
for (const auto& element : m_elements)
|
||||
{
|
||||
if (element->getPageIndex() != pageIndex)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
element->drawPage(painter, pageIndex, compiledPage, layoutGetter, pagePointToDevicePointMatrix, errors);
|
||||
}
|
||||
|
||||
drawElements(painter, pageIndex, layoutGetter, pagePointToDevicePointMatrix, compiledPage, errors);
|
||||
m_manipulator.drawPage(painter, pageIndex, compiledPage, layoutGetter, pagePointToDevicePointMatrix, errors);
|
||||
}
|
||||
|
||||
|
@ -2367,7 +2376,7 @@ void PDFPageContentElementTextBox::drawPage(QPainter* painter,
|
|||
font.setHintingPreference(QFont::PreferNoHinting);
|
||||
if (font.pointSizeF() > 0.0)
|
||||
{
|
||||
font.setPixelSize(qCeil(font.pointSizeF()));
|
||||
font.setPixelSize(qRound(font.pointSizeF()));
|
||||
}
|
||||
|
||||
PDFPainterStateGuard guard(painter);
|
||||
|
|
|
@ -534,17 +534,23 @@ public:
|
|||
virtual const std::optional<QCursor>& getCursor() const override;
|
||||
virtual int getInputPriority() const override;
|
||||
|
||||
// IDocumentDrawInterface interface
|
||||
public:
|
||||
virtual void drawPage(QPainter* painter,
|
||||
PDFInteger pageIndex,
|
||||
const PDFPrecompiledPage* compiledPage,
|
||||
PDFTextLayoutGetter& layoutGetter,
|
||||
const QMatrix& pagePointToDevicePointMatrix,
|
||||
QList<PDFRenderError>& errors) const override;
|
||||
|
||||
PDFWidget* widget() const;
|
||||
void setWidget(PDFWidget* newWidget);
|
||||
|
||||
void drawElements(QPainter* painter,
|
||||
PDFInteger pageIndex,
|
||||
PDFTextLayoutGetter& layoutGetter,
|
||||
const QMatrix& pagePointToDevicePointMatrix,
|
||||
const PDFPrecompiledPage* compiledPage,
|
||||
QList<PDFRenderError>& errors) const;
|
||||
|
||||
signals:
|
||||
/// This signal is emitted when scene has changed (including graphics)
|
||||
void sceneChanged(bool graphicsOnly);
|
||||
|
|
|
@ -290,7 +290,7 @@ void SignaturePlugin::onSignElectronically()
|
|||
QPainter* painter = pageContentStreamBuilder.begin(page->getPageReference());
|
||||
QList<pdf::PDFRenderError> errors;
|
||||
pdf::PDFTextLayoutGetter nullGetter(nullptr, pageIndex);
|
||||
m_scene.drawPage(painter, pageIndex, nullptr, nullGetter, QMatrix(), errors);
|
||||
m_scene.drawElements(painter, pageIndex, nullGetter, QMatrix(), nullptr, errors);
|
||||
pageContentStreamBuilder.end(painter);
|
||||
modifier.markPageContentsChanged();
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue