Práce s vlastnostmi dokumentu

Vlastnosti dokumentu umožňují uložení některých užitečných informací o vašem dokumentu. Tyto vlastnosti lze rozdělit do dvou skupin:

  • Systém nebo zabudované, které obsahují hodnoty jako název dokumentu, jméno autora, statistiky dokumentů a další.
  • User-defined or custom, provided as name-value pair where the user can defined both the name and value.

Je užitečné znát informace o API a číslo verze je přímo zapsáno do výstupních dokumentů. Například po převodu dokumentu na PDF, Aspose.Words vyplní “Aplikace” pole s “Aspose.Words"a pole “PDF Producer” s “Aspose.Words místo .NET YY.M.N., kde YY.M.N je verze Aspose.Words používaný pro konverzi. Další podrobnosti viz Generátor nebo jméno výrobce Zahrnuto ve výstupních dokumentech.

Vlastnosti přístupového dokumentu

Přístup k vlastnostem dokumentů v Aspose.Words použití:

built_in_document_properties a custom_document_properties jsou sbírky DocumentProperty objekty. Tyto objekty lze získat prostřednictvím vlastnosti indexeru jménem nebo indexem.

built_in_document_properties navíc poskytuje přístup k vlastnostem dokumentů prostřednictvím sady zadaných vlastností, které vracejí hodnoty příslušného typu. custom_document_properties umožňuje přidat nebo odstranit vlastnosti dokumentu z dokumentu.

DocumentProperty třída umožňuje získat jméno, hodnotu a typ vlastnosti dokumentu. value vrací objekt, ale existuje soubor metod, které vám umožní získat hodnotu vlastnosti převedenou na určitý typ. Poté, co zjistíte, jaký typ nemovitosti je, můžete použít jeden z DokumentProperty.to_XXX metody, například DokumentProperty.__str__ a DocumentProperty.to_int, získat hodnotu příslušného typu.

Následující příklad kódu ukazuje, jak vyčíslit všechny vestavěné a vlastní vlastnosti v dokumentu:

# For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Python-via-.NET
doc = aw.Document(docs_base.my_dir + "Properties.docx")
print("1. Document name: 0", doc.original_file_name)
print("2. Built-in Properties")
for prop in doc.built_in_document_properties :
print("0 : 1", prop.name, prop.value)
print("3. Custom Properties")
for prop in doc.custom_document_properties :
print("0 : 1", prop.name, prop.value)

In Microsoft Word, vlastnosti dokumentu můžete získat pomocí menu “File → Properties.”

/words/python-net/work-with-document-properties/work-with-document-properties-1.png

Přidat nebo odstranit vlastnosti dokumentu

Nelze přidat nebo odstranit vestavěné vlastnosti dokumentu pomocí Aspose.Words. Můžete pouze měnit nebo aktualizovat jejich hodnoty.

Přidání vlastních vlastností dokumentu s Aspose.Words, použijte add způsob předání nového názvu nemovitosti a hodnoty příslušného typu. Metoda vrací nově vytvořené DocumentProperty objekt.

Pro odstranění vlastních vlastností použijte remove způsob předání názvu nemovitosti k odstranění nebo remove_at způsob odstranění nemovitosti indexem. Můžete také odstranit všechny vlastnosti pomocí clear metoda.

Následující příklad kódu ověřuje, zda vlastní vlastnost s daným jménem existuje v dokumentu a přidává několik dalších vlastních vlastností dokumentu:

# For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Python-via-.NET
doc = aw.Document(docs_base.my_dir + "Properties.docx")
customDocumentProperties = doc.custom_document_properties
if (customDocumentProperties.get_by_name("Authorized") != None) :
return
customDocumentProperties.add("Authorized", True)
customDocumentProperties.add("Authorized By", "John Smith")
customDocumentProperties.add("Authorized Date", datetime.today())
customDocumentProperties.add("Authorized Revision", doc.built_in_document_properties.revision_number)
customDocumentProperties.add("Authorized Amount", 123.45)

Následující příklad kódu ukazuje, jak odstranit vlastní vlastnost dokumentu:

# For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Python-via-.NET
doc = aw.Document(docs_base.my_dir + "Properties.docx")
doc.custom_document_properties.remove("Authorized Date")

Aktualizace Vestavěných vlastností dokumentu

Aspose.Words nemá automaticky aktualizovat vlastnosti dokumentu, jako Microsoft Word provádí s některými vlastnostmi, ale poskytuje metodu pro aktualizaci některých statistických vestavěných dokumentů vlastnosti. Zavolejte update_word_count metoda přepočítání a aktualizace těchto vlastností:

Vytvořit nový vlastní majetek spojený s obsahem

Aspose.Words poskytuje add_link_to_content způsob, jak vytvořit nový vlastní dokument vlastnosti spojené s obsahem. Tato vlastnost vrací nově vytvořený objekt nebonuluje, pokud odkaz_zdroj je neplatný.

Následující příklad kódu ukazuje, jak nastavit odkaz na vlastní vlastnost:

# For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Python-via-.NET
doc = aw.Document()
builder = aw.DocumentBuilder(doc)
builder.start_bookmark("MyBookmark")
builder.writeln("Text inside a bookmark.")
builder.end_bookmark("MyBookmark")
# Retrieve a list of all custom document properties from the file.
customProperties = doc.custom_document_properties
# Add linked to content property.
customProperty = customProperties.add_link_to_content("Bookmark", "MyBookmark")
customProperty = customProperties.get_by_name("Bookmark")
isLinkedToContent = customProperty.is_link_to_content
linkSource = customProperty.link_source
customPropertyValue = customProperty.value

Získat proměnné dokumentu

Můžete získat soubor proměnných dokumentů pomocí variables majetek. Variabilní názvy a hodnoty jsou řetězce.

Následující příklad kódu ukazuje, jak přidat a přistupovat k proměnné dokumentu:

# For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Python-via-.NET
doc = aw.Document(docs_base.my_dir + "Document.docx")
doc.variables.add("test", "test")
variables = ""
for entry in doc.variables :
name = entry.key
value = entry.value
if (variables == "") :
variables = "Name: " + name + "," + "Value: " + value
else :
variables = variables + "Name: " + name + "," + "Value: " + value

Odstranit osobní údaje z dokumentu

Chcete-li sdílet dokument Word s jinými lidmi, možná budete chtít odstranit osobní údaje, jako je jméno autora a společnost. K tomu použijte remove_personal_information vlastnost nastavit vlajku s uvedením, že Microsoft Word odstraní všechny uživatelské informace z komentářů, revizí a vlastností dokumentů při uložení dokumentu.

Následující příklad kódu ukazuje, jak odstranit osobní údaje:

# For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Python-via-.NET
doc = aw.Document(docs_base.my_dir + "Properties.docx")
doc.remove_personal_information = True
doc.save(docs_base.artifacts_dir + "DocumentPropertiesAndVariables.remove_personal_information.docx")