mirror of
https://github.com/JakubMelka/PDF4QT.git
synced 2025-02-28 01:17:53 +01:00
Default values for structure tree attributes
This commit is contained in:
parent
240a854d8f
commit
eb253f8417
@ -112,6 +112,7 @@ static constexpr std::array<const PDFStructureTreeAttributeDefinition, PDFStruct
|
||||
PDFStructureTreeAttributeDefinition(PDFStructureTreeAttribute::Attribute::TPadding, "TPadding", true),
|
||||
PDFStructureTreeAttributeDefinition(PDFStructureTreeAttribute::Attribute::LineHeight, "LineHeight", true),
|
||||
PDFStructureTreeAttributeDefinition(PDFStructureTreeAttribute::Attribute::BaselineShift, "BaselineShift", false),
|
||||
PDFStructureTreeAttributeDefinition(PDFStructureTreeAttribute::Attribute::TextPosition, "TextPosition", false),
|
||||
PDFStructureTreeAttributeDefinition(PDFStructureTreeAttribute::Attribute::TextDecorationType, "TextDecorationType", true),
|
||||
PDFStructureTreeAttributeDefinition(PDFStructureTreeAttribute::Attribute::TextDecorationColor, "TextDecorationColor", true),
|
||||
PDFStructureTreeAttributeDefinition(PDFStructureTreeAttribute::Attribute::TextDecorationThickness, "TextDecorationThickness", true),
|
||||
@ -283,6 +284,65 @@ bool PDFStructureTreeAttribute::isInheritable() const
|
||||
return m_definition->inheritable;
|
||||
}
|
||||
|
||||
PDFObject PDFStructureTreeAttribute::getDefaultValue() const
|
||||
{
|
||||
switch (m_definition->type)
|
||||
{
|
||||
case PDFStructureTreeAttribute::WritingMode:
|
||||
return PDFObject::createName("LrTb");
|
||||
|
||||
case PDFStructureTreeAttribute::BorderStyle:
|
||||
case PDFStructureTreeAttribute::TBorderStyle:
|
||||
case PDFStructureTreeAttribute::TextDecorationType:
|
||||
case PDFStructureTreeAttribute::ListNumbering:
|
||||
return PDFObject::createName("None");
|
||||
|
||||
case PDFStructureTreeAttribute::BorderThickness:
|
||||
case PDFStructureTreeAttribute::Padding:
|
||||
case PDFStructureTreeAttribute::SpaceBefore:
|
||||
case PDFStructureTreeAttribute::SpaceAfter:
|
||||
case PDFStructureTreeAttribute::StartIndent:
|
||||
case PDFStructureTreeAttribute::EndIndent:
|
||||
case PDFStructureTreeAttribute::TextIndent:
|
||||
case PDFStructureTreeAttribute::TPadding:
|
||||
case PDFStructureTreeAttribute::BaselineShift:
|
||||
return PDFObject::createReal(0.0);
|
||||
|
||||
case PDFStructureTreeAttribute::TextAlign:
|
||||
case PDFStructureTreeAttribute::InlineAlign:
|
||||
return PDFObject::createName("Start");
|
||||
|
||||
case PDFStructureTreeAttribute::Width:
|
||||
case PDFStructureTreeAttribute::Height:
|
||||
case PDFStructureTreeAttribute::GlyphOrientationVertical:
|
||||
return PDFObject::createName("Auto");
|
||||
|
||||
case PDFStructureTreeAttribute::BlockAlign:
|
||||
case PDFStructureTreeAttribute::RubyPosition:
|
||||
return PDFObject::createName("Before");
|
||||
|
||||
case PDFStructureTreeAttribute::LineHeight:
|
||||
case PDFStructureTreeAttribute::TextPosition:
|
||||
return PDFObject::createName("Normal");
|
||||
|
||||
case PDFStructureTreeAttribute::RubyAlign:
|
||||
return PDFObject::createName("Distribute");
|
||||
|
||||
case PDFStructureTreeAttribute::ColumnCount:
|
||||
case PDFStructureTreeAttribute::RowSpan:
|
||||
case PDFStructureTreeAttribute::ColSpan:
|
||||
return PDFObject::createInteger(1);
|
||||
|
||||
case PDFStructureTreeAttribute::Checked:
|
||||
return PDFObject::createName("off");
|
||||
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
return PDFObject();
|
||||
}
|
||||
|
||||
QString PDFStructureTreeAttribute::getUserPropertyName(const PDFObjectStorage* storage) const
|
||||
{
|
||||
if (const PDFDictionary* value = storage->getDictionaryFromObject(m_value))
|
||||
|
@ -99,6 +99,7 @@ public:
|
||||
TPadding,
|
||||
LineHeight,
|
||||
BaselineShift,
|
||||
TextPosition,
|
||||
TextDecorationType,
|
||||
TextDecorationColor,
|
||||
TextDecorationThickness,
|
||||
@ -154,7 +155,8 @@ public:
|
||||
/// Returns attribute value
|
||||
const PDFObject& getValue() const { return m_value; }
|
||||
|
||||
/// Returns default attribute value
|
||||
/// Returns default attribute value. If default attribute value
|
||||
/// cannot be determined, empty object is returned.
|
||||
PDFObject getDefaultValue() const;
|
||||
|
||||
/// Returns user property name. This function should be called only for
|
||||
|
Loading…
x
Reference in New Issue
Block a user