Práce s odkazy a referencemi

Práce s odkazy a referencemi

Práce s odkazy a referencemi

Kódy polí odkazů a křížových odkazů ve Wordu – HYPERLINK, REF, PAGEREF, NOTEREF, STYLEREF, SET, ASK, FILLIN, CITATION, BIBLIOGRAPHY, a další – jsou každé implementovány jako vyhrazené Field podtřída v Aspose.Words FOSS pro .NET. Všechny tyto třídy se nacházejí v Aspose.Words.Fields jmenném prostoru spolu s každým dalším typem pole; tato stránka seskupuje ty, které jsou konkrétně zaměřeny na odkazy, křížové odkazy, vyzvané hodnoty a citace, a popisuje, co každá z nich vystavuje.


Hyperlinks

FieldHyperlink představuje pole HYPERLINK: Address a SubAddress obsahují cílovou URL nebo umístění v dokumentu, ScreenTip nastavuje tooltip při přejetí, OpenInNewWindow a IsImageMap jsou příznaky zobrazení a Target pojmenovává rám prohlížeče. Pro jednoduché případy DocumentBuilder.InsertHyperlink() vloží pole hypertextového odkazu přímo bez ručního vytváření objektu Field.


Křížové odkazy na záložky

FieldRef (pole REF), FieldPageRef (PAGEREF) a FieldNoteRef (NOTEREF) každé vyřeší obsah na pojmenované záložce pomocí jejich vlastnosti BookmarkName, přičemž InsertHyperlink a InsertRelativePosition řídí, zda je odkaz klikací a zda uvádí relativní pozici („above“ / „below“). FieldRef přidává možnosti číslování odstavců (InsertParagraphNumber, InsertParagraphNumberInFullContext, InsertParagraphNumberInRelativeContext, NumberSeparator) a IncludeNoteOrComment. FieldStyleRef (STYLEREF) místo toho vyhledá nejbližší odstavec formátovaný daným StyleName, s SearchFromBottom pro vyhledávání zpět od pozice pole. Záložky, na které tato pole odkazují, jsou vytvořeny pomocí DocumentBuilder.StartBookmark() a EndBookmark() a lze se k nim dostat pomocí MoveToBookmark(). FieldSet (SET) definuje hodnotu textu v záložce – BookmarkName a BookmarkText – kterou může jiné pole REF vyřešit.


Pole s vyzývanou hodnotou

FieldAsk (ASK) a FieldFillIn (FILLIN) požádá o hodnotu toho, kdo pole aktualizuje: PromptText se uživateli zobrazí, DefaultResponse poskytuje náhradní řešení, PromptOnceOnMailMerge omezuje opakované dotazování během mail merge. FieldAsk navíc ukládá svou odpověď na BookmarkName pro ostatní pole k odkazu. Viz průvodce polí for IFieldUserPromptRespondent, zpětné volání, které poskytuje odpovědi na tato pole programově místo interaktivního dotazování.


Externí a propojený obsah

FieldDde (DDE) a FieldDdeAuto (DDEAUTO) odkazují na obsah v jiné aplikaci pomocí ProgId, SourceFullName a SourceItem, s InsertAsText, InsertAsHtml, InsertAsPicture, InsertAsRtf, InsertAsUnicode a InsertAsBitmap vybírající vloženou reprezentaci a AutoUpdate / IsLinked řídí chování obnovy. FieldLink (LINK) je ekvivalent OLE-link, přidává FormatUpdateType. FieldImport (IMPORT) a FieldIncludePicture (INCLUDEPICTURE) načítají externí grafiku pomocí SourceFullName a GraphicFilter. FieldInclude (INCLUDE) a FieldIncludeText (INCLUDETEXT) načítají externí obsah dokumentu, s BookmarkName pro vymezení zahrnutého rozsahu a LockFields pro zabránění jeho obnovení; FieldIncludeText navíc podporuje zdroje XML prostřednictvím Encoding, MimeType, NamespaceMappings, XPath a XslTransformation.


AutoText a odkazy na glosář

FieldAutoText (AUTOTEXT), FieldAutoTextList (AUTOTEXTLIST) a FieldGlossary (GLOSSARY) všechny odkazují na pojmenovanou položku stavebního bloku prostřednictvím EntryName; FieldAutoTextList přidává ListStyle a ScreenTip pro její prezentaci ve stylu seznamu.


Pole citací a bibliografie

FieldCitation (CITATION) a FieldBibliography (BIBLIOGRAPHY) vykreslí obsah získaný z bibliografických dat dokumentu. FieldCitation.SourceTag (a alternativní AnotherSourceTag) identifikuje, který zdroj cituje, s Prefix, Suffix, PageNumber, VolumeNumber, a také Suppress* příznaky (SuppressAuthor, SuppressTitle, SuppressYear) řídící, jak je citace formátována. FieldBibliography.SourceTag, FilterLanguageId, a FormatLanguageId řídí, které zdroje se zobrazí ve vygenerované bibliografii a v jakém jazyce. Základní zdroj zaznamenává tato pole render – Source, Contributor, Person – jsou pokryty v průvodci bibliografií.


Pole citace a tvaru textu

FieldQuote (QUOTE) a FieldShape (SHAPE) oba vystavují vlastnost Text obsahující doslovný text pole – FieldQuote jej vkládá přímo na pozici pole, zatímco FieldShape jej spojuje s kódem pole nesoucím text v kreslicím tvaru.


Tipy a osvědčené postupy

  • Upřednostněte DocumentBuilder.InsertHyperlink() pro jednoduché vložení hypertextového odkazu; přejděte na přímé vytvoření FieldHyperlink pouze tehdy, když potřebujete vlastnosti jako ScreenTip nebo IsImageMap, které zkratka builderu neodhaluje.
  • FieldRef, FieldPageRef, FieldNoteRef a FieldSet všechny koordinují přes BookmarkName – ujistěte se, že cílová záložka existuje (prostřednictvím DocumentBuilder.StartBookmark() / EndBookmark()), než bude aktualizováno pole, které na ni odkazuje.
  • Nastavení FieldOptions.UserPromptRespondent (viz průvodce polí) před aktualizací dokumentu obsahujícího FieldAsk or FieldFillIn pole v automatizované pipeline.
  • FieldDde a FieldDdeAuto modelují starý Windows OLE mechanismus propojení – považujte AutoUpdate a IsLinked za informativní při zpracování dokumentů mimo Windows, protože externí aplikace, ze které by se normálně obnovovaly, není k dispozici.
  • Pole citací a bibliografie se vykreslí správně až poté, co podkladové Source záznamy existují – viz průvodce bibliografií pro jejich vytvoření.

Časté problémy

ProblémPříčinaOprava
REF / PAGEREF / NOTEREF pole zobrazuje chybový výsledekCíl BookmarkName neexistuje v dokumentuVytvořte záložku s DocumentBuilder.StartBookmark() / EndBookmark() před aktualizací pole
Pole ASK / FILLIN blokuje nehlídanou aktualizaciŽádný IFieldUserPromptRespondent není přiřazenPřiřaďte FieldOptions.UserPromptRespondent nebo nastavte DefaultResponse v poli
Pole CITATION nebo BIBLIOGRAPHY vykreslí prázdnéSourceTag neodpovídá žádnému Source v bibliografických datech dokumentuPřidejte odpovídající Source – viz průvodce bibliografií
DDE / DDEAUTO / LINK pole se neobnovujeTyto odkazují na externí OLE zdroj, který není v aktuálním prostředí k dispoziciOčekáváno mimo původní kontext Windows/OLE – považujte uložený Result za poslední známou hodnotu

FAQ

Jaký je rozdíl mezi FieldRef a FieldStyleRef?

FieldRef odkazuje na obsah u pojmenované záložky (BookmarkName); FieldStyleRef naproti tomu odkazuje na nejbližší odstavec formátovaný daným StyleName, nezávisle na záložkách.

Jak vložit jednoduchý hyperodkaz, aniž bych ručně vytvářel Field?

Zavolejte DocumentBuilder.InsertHyperlink().

Jsou tyto třídy odkazových a referenčních polí v samostatném jmenném prostoru od ostatních polí?

Ne – FieldHyperlink, FieldRef, FieldCitation, a zbytek tříd na této stránce je obyčejný Field podtřídy v Aspose.Words.Fields jmenném prostoru, stejný jmenný prostor pokrytý v the průvodce polí.

Jak souvisí pole citací s modelem dat bibliografie?

FieldCitation and FieldBibliography vykreslit obsah vyhledáním SourceTag proti Source záznamy popsané na průvodce bibliografií – třídy polí zpracovávají vykreslování a Source / Contributor třídy uchovávají podkladová data.


API Reference Shrnutí

TřídaPopis:
FieldHyperlinkHYPERLINK pole; Address, SubAddress, ScreenTip, OpenInNewWindow
FieldRef / FieldPageRef / FieldNoteRefREF / PAGEREF / NOTEREF pole; vyřešte obsah na BookmarkName
FieldStyleRefpole STYLEREF; vrací nejbližší odstavec v daném stylu
FieldSetpole SET; definuje záložkovou textovou hodnotu pro REF, kterou lze vyřešit
FieldAsk / FieldFillInASK / FILLIN pole; vyzve k zadání hodnoty během aktualizace
FieldDde / FieldDdeAuto / FieldLinkDDE / DDEAUTO / LINK pole; starý OLE propojený externí obsah
FieldImport / FieldIncludePictureIMPORT / INCLUDEPICTURE pole; externí grafický obsah
FieldInclude / FieldIncludeTextINCLUDE / INCLUDETEXT pole; externí dokument nebo XML obsah
FieldAutoText / FieldAutoTextList / FieldGlossaryAUTOTEXT / AUTOTEXTLIST / GLOSSARY pole; odkaz na položky stavebních bloků
FieldCitation / FieldBibliographyCITATION / BIBLIOGRAPHY pole; vykreslit data zdrojů bibliografie
FieldQuote / FieldShapeQUOTE / SHAPE pole; doslovný text pole
DocumentBuilder.InsertHyperlinkZkratka pro vložení hypertextového odkazu na vyšší úrovni
DocumentBuilder.StartBookmark / EndBookmark / MoveToBookmarkVytváření záložek a navigace pro referenční cíle

Viz také:

 Čeština