NodeImporter ile Düğümleri İçe Aktarma

NodeImporter ile Düğümleri İçe Aktarma

Düğümleri NodeImporter ile İçe Aktarma

Bu rehber, iki farklı arasında içeriği nasıl taşıyacağınızı gösterir Document örnekleri Aspose.Words FOSS içinde .NET için, özel NodeImporter sınıf ve ince ayarlı ImportFormatOptions, birden çok düğümü verimli bir şekilde içe aktarmanız ya da temel dışındaki içe aktarma davranışını kontrol etmeniz gereken senaryolar için ImportFormatMode seçim. Daha basit Document.ImportNode, Document.AppendDocument, ve DocumentBuilder.InsertDocument kolaylık yöntemleri, bakınız Belgelerle Çalışma kılavuz.


NodeImporter: Tekrarlanan Kurulum Olmadan Tekrarlanan İçe Aktarmalar

NodeImporter, bir belgeden diğerine düğümlerin tekrarlı içe aktarımı için tasarlanmıştır ve tek seferlik içe aktarmanın her çağrıda yapılan kurulum maliyetinden kaçınır. Bir tanesini new NodeImporter(srcDoc, dstDoc, importFormatMode) ile — ya da daha ince kontrol için new NodeImporter(srcDoc, dstDoc, importFormatMode, importFormatOptions) aşırı yüklemesiyle — bir kez oluşturun, ardından ihtiyacınız olan her düğüm için aynı örnek üzerinde ImportNode(srcNode, isImportChildren) çağırın. Bir NodeImporter örneğini birçok çağrıda yeniden kullanmak, her seferinde bir çağrı kolaylık içe aktarımının yarattığı kurulum maliyetini önler.


ImportFormatOptions ile Ayrıntılı İçe Aktarma Kontrolü

ImportFormatOptions, temel ImportFormatMode seçeneğini (UseDestinationStyles, KeepSourceFormatting, KeepDifferentStyles) daha ince anahtarlarla tamamlar: SmartStyleBehavior (bool) kaynak ve hedefte aynı ada sahip stillerin nasıl içe aktarılacağını kontrol eder. KeepSourceNumbering (bool) kaynak ve hedefte çakışma olduğunda numaralandırmanın nasıl içe aktarılacağını kontrol eder. IgnoreTextBoxes ve IgnoreHeaderFooter (bool), KeepSourceFormatting etkili olduğunda metin kutusu ve başlık/alt bilgi içeriği için kaynak biçimlendirmesini bastırır. MergePastedLists (bool) yapıştırılan listeleri ayrı tutmak yerine çevredeki listelerle birleştirir. ForceCopyStyles (bool), KeepSourceFormatting modunda hedefin sürümünü yeniden kullanmak yerine çakışan stilleri kopyalar. AdjustSentenceAndWordSpacing (bool) otomatik olarak boşlukları ayarlar. AppendDocumentWithNewPage (bool) ilk içe aktarılan bölümün tipini NewPage olarak zorlar.


İpuçları ve En İyi Uygulamalar

  • Birçok düğüm içe aktarırken tek bir NodeImporter örneği oluşturun ve ImportNode çağrılarının bir döngüsü boyunca yeniden kullanın — her düğüm için yeni bir içe aktarıcı oluşturmak kurulum işini gereksiz yere tekrarlamaktadır.
  • Düz ImportFormatMode seçeneği yeterince kesin olmadığında, ImportFormatOptions örneğini NodeImporter yapıcı aşırı yüklemesine geçirin — örneğin, KeepSourceNumbering ile kaynak liste numaralandırmasını korurken yine de genel olarak KeepSourceFormatting kullanmak için.
  • KeepSourceFormatting, yalnızca bu içerik türleri için istediğinizden daha fazla kaynak stilini çektiğinde IgnoreTextBoxes veya IgnoreHeaderFooter ayarlayın.
  • NodeImporter.ImportNode(srcNode, isImportChildren), belge seviyesindeki içe aktarma çağrısını imza ve davranış açısından yansıtır; fark, içe aktarma anlamı değil, yeniden kullanım verimliliğidir.

Yaygın Sorunlar

SorunNedenDüzeltme
Birçok düğümün tekrarlanan içe aktarımları yavaştırHer düğüm için bir kullanım kolaylığı içe aktarma çağrısı kullanılıyor, yeniden kullanılan tek NodeImporter yerineTek bir NodeImporter oluşturun ve her düğüm için üzerinde ImportNode çağırın
İçe aktarmadan sonra liste numaralandırması beklenmedik şekilde sıfırlanıyorImportFormatOptions.KeepSourceNumbering ayarlanmadıNodeImporter‘ı, gerektiğinde KeepSourceNumbering‘yi ayarlayan bir ImportFormatOptions örneğiyle oluşturun
Metin kutusu veya üstbilgi/altbilgi içeriği istenmeyen kaynak biçimlendirmesini alırKeepSourceFormatting modu, varsayılan olarak kaynak stilini geniş çapta uygularIgnoreTextBoxes veya IgnoreHeaderFooter‘i NodeImporter‘a geçirilen ImportFormatOptions üzerinde ayarlayın

FAQ

Tek bir içe aktarma çağrısı yerine NodeImporter ne zaman kullanmalıyım?

Bir döngüde birçok düğüm içe aktarırken — önceden bir NodeImporter oluşturun ve ImportNode‘i tekrarlı olarak çağırın, her çağrıda kurulum maliyetini ödemek yerine.

ImportFormatOptions, ImportFormatMode üzerine ne ekliyor?

Daha ince anahtarlar, örneğin SmartStyleBehavior, KeepSourceNumbering, IgnoreTextBoxes, IgnoreHeaderFooter, MergePastedLists, ForceCopyStyles, AdjustSentenceAndWordSpacing ve AppendDocumentWithNewPage, temel ImportFormatMode seçiminin üzerine katmanlanır.

NodeImporter.ImportNode, belge seviyesinde içe aktarmaktan farklı davranıyor mu?

Hayır — ikisi de bir kaynak düğüm ve bir isImportChildren bayrağı alır ve hedef belgeye içe aktarır; NodeImporter ise ayarın bir kez yapılmasını ve birçok çağrıda yeniden kullanılmasını sağlar.

İçe aktarma sırasında kaynak belgenin liste numaralandırmasını nasıl bozulmadan korurum?

KeepSourceNumbering true olduğunda bir ImportFormatOptions ile NodeImporter oluşturun.


API Reference Özeti

Sınıf/YöntemAçıklama
NodeImporterBir belgeden diğerine düğümlerin tekrarlanan içe aktarımını gerçekleştirir, kurulumları çağrılar arasında yeniden kullanır
NodeImporter(srcDoc, dstDoc, importFormatMode)Temel içe-aktarma-format-modu-yalnızca içe aktarmalar için yapıcı
NodeImporter(srcDoc, dstDoc, importFormatMode, importFormatOptions)İnce taneli ImportFormatOptions kabul eden yapıcı
NodeImporter.ImportNode(srcNode, isImportChildren)Bir düğümü kaynak belgeden hedef belgeye içe aktarır
ImportFormatOptionsİnce taneli içe aktarma ayarları ImportFormatMode üzerine katmanlanır
ImportFormatOptions.SmartStyleBehaviorAynı adlı stiller nasıl içe aktarılır
ImportFormatOptions.KeepSourceNumberingÇakışan numaralandırma nasıl içe aktarılır
ImportFormatOptions.IgnoreTextBoxes / IgnoreHeaderFooterKeepSourceFormatting altında metin kutuları / başlık-altbilgiler için kaynak biçimlendirmesini bastırır
ImportFormatOptions.MergePastedListsYapıştırılan listeleri çevreleyen listelerle birleştirir
ImportFormatOptions.ForceCopyStylesÇakışan stilleri, hedefin sürümünü yeniden kullanmak yerine kopyalar
ImportFormatOptions.AppendDocumentWithNewPageİlk içe aktarılan bölümün türünü NewPage olarak zorlar

Ayrıca Bakınız

 Türkçe