Redaction

Redaction

Bu sayfa, bir PDF sayfasından içeriğin kalıcı olarak kaldırılmasını kapsar. Aspose.PDF TypeScript için FOSS, iki kırpma iş akışı sunar: taahhüt etmeden önce gözden geçirdiğiniz iki aşamalı işaretle-uygula akışı ve tek çağrılı anında akış. Her ikisi de tek bir sayfa için Page ve tüm belge için Document üzerinde mevcuttur.


Kırpmaları İşaretleme ve Uygulama

Page.AddRedact(), dikdörtgen bir bölgeyi /Redact açıklamasıyla işaretler — altındaki içerik dokunulmamış kalır ve hâlâ kopyalanabilir. Gerçekten bir şey ancak Page.ApplyRedactions() çalıştırıldığında kaldırılır: sayfadaki her /Redact işareti için içerik akışını yıkıcı bir şekilde yeniden yazar, her işaretin üst katmanını (its /IC doldurması ve /OverlayText) boyar, işaretleri kaldırır ve uygulanan kırpma sayısını döndürür. ApplyRedactions() çağrıldıktan sonra eklenen işaretler uygulanmaz.

page.AddRedact({
  rect: [220, 550, 460, 566],
  fill: [0, 0, 0],
  overlayText: '[REDACTED]',
  align: 'center',
  fontSize: 9,
  textColor: [1, 1, 1],
});

const applied = page.ApplyRedactions();
console.log('Redactions applied:', applied);

Anında Kırpma

Page.Redact() ve Page.RedactText(), işaretleme ve uygulamayı tek bir çağrıda birleştirir: kaplanan metin ve görselleri gerçekten kaldırır, kaldırma sonucu yalnız kalan kaynakları budar ve her bölge üzerine opak bir işaret kutusu çizer — ayrı bir ApplyRedactions() adımı olmadan ve önceden gözden geçirilecek bir şey kalmadan. Page.Redact(), açık bir Rect bölge listesi alır; Page.RedactText(), bir arama dizesi ya da RegExp her oluşumunu bulur ve kırpar, Page.SearchAnnotationText() aramalarıyla aynı şekilde. İkisi de işaretleyiciyi kontrol eden bir RedactOptions nesnesini kabul eder: color, scrubMetadata olup olmayacağını ve kırpılmış bir bölgeyle çakışan keepAnnotations.

İçeriği hemen, gözden geçirme adımı olmadan kaldırdıkları için, bir işaretin taahhüt edilmeden önce incelenebilir olmasını istediğinizde AddRedact() + ApplyRedactions() tercih edin ve bölgeler ya da arama terimleri zaten kaldırılmasının güvenli olduğu biliniyorsa Redact() / RedactText() kullanın.


Bir Belgede Tam Kırpma

Aynı iki iş akışı Document üzerinde mevcuttur ve tüm sayfalara aynı anda uygulanır: Document.MarkRedactText(), arama teriminin tüm sayfalardaki her oluşumunu işaretler, Document.ApplyRedactions(), belgedeki tüm işaretleri uygular ve Document.Redact() / Document.RedactText(), tek bir sayfanın bölgelerini veya belge genelindeki bir arama terimini anında kırpar, Page eşdeğerlerini yansıtarak.


İpuçları ve En İyi Uygulamalar

  • AddRedact() + ApplyRedactions() kombinasyonunu, kırpmanın etkili olmadan önce incelenebilir olması gerektiğinde kullanın; Redact() / RedactText() kombinasyonunu ise bölgelerin zaten güvenli olduğu ve hemen kaldırılabileceği durumlarda kullanın.
  • ApplyRedactions() çağrısına önce bir sayfa için tüm AddRedact() işaretlerini ekleyin — daha sonra eklenen işaretler o çağrı içinde yer almaz ve uygulanmaz kalır.
  • Kırpılan içerik belge meta verilerinde (/Info veya XMP) de bulunabilirken RedactOptions / ApplyRedactionsOptions içinde scrubMetadata: true parametresini geçin.
  • RedactText() ve MarkRedactText(), SearchAnnotationText() / Search ile aynı eşleşme kurallarını kullanarak arama yapar, bu nedenle orada eşleşmeyen bir arama dizesi kırpma işlemini de başarısız kılar.

Yaygın Sorunlar

SorunNedenDüzeltme
Redaksiyon işareti etkisizPage.ApplyRedactions() hiç çağrılmadıPage.AddRedact()‘ı her işaret için önce çağırın, ardından Page.ApplyRedactions()‘ı bir kez çağırın
İşaretten sonra içerik hâlâ kurtarılabilirİşaret, ardından gelen ApplyRedactions() çağrısı olmadan AddRedact() (sadece işaret) kullandıÇağır ApplyRedactions(), ya da tek çağrı kaldırma için Redact() / RedactText() kullanın
Kırpılmış metin, çıkarılan belge meta verilerinde tekrar görünürscrubMetadata ayarlanmamıştıSeçenekler nesnesine { scrubMetadata: true } geçirin
ApplyRedactions(), 0 döndürürÇağrıldığında sayfada /Redact işareti bulunmuyorduAddRedact() (veya MarkRedactText()) önce çalıştığını ve aynı sayfayı hedeflediğini doğrulayın

FAQ

AddRedact ile Redact arasındaki fark nedir?

AddRedact() yalnızca bir bölgeyi işaretler — içerik hâlâ mevcut ve ApplyRedactions() çalışana kadar kopyalanabilir ve seçilebilir. Redact() aynı çağrıda içeriği kaldırır, ayrı bir uygulama adımı olmadan.

Koordinatları belirtmek yerine metin arayarak kırpma yapabilir miyim?

Evet. RedactText() bir arama dizesi veya RegExp öğesinin her oluşumunu bulur ve hemen kırpar; MarkRedactText() aynı şeyi yapar ancak sadece eşleşmeleri işaretler, daha sonraki bir ApplyRedactions() çağrısına bırakır.

Kırpma tüm belge boyunca mı çalışıyor, yoksa bir seferde yalnızca bir sayfa mı?

İkisi de. Page.Redact() / Page.ApplyRedactions() ve bunların eşdeğerleri bir sayfada çalışır; Document.Redact() / Document.ApplyRedactions() ve bunların eşdeğerleri her sayfada çalışır.

Kırpılmış bir bölgenin yakınındaki açıklamalar da kaldırılıyor mu?

Sadece onlara izin verirseniz. keepAnnotations: true öğesini seçenekler nesnesine geçirerek, kırpılmış bir bölgeyle çakışan ek açıklamaları, onlarla birlikte kaldırmak yerine koruyun.


API Reference Özet

Sınıf/YöntemAçıklama
Page.AddRedact()Bir /Redact açıklamasıyla dikdörtgen bir bölgeyi işaretleyin, henüz içeriği kaldırmadan.
Page.ApplyRedactions()Sayfada işaretlenmiş tüm bölgeleri kalıcı olarak kaldırın ve uygulanan sayıyı döndürün.
Page.Redact()Verilen bölgelerdeki içeriği hemen kaldırın, ayrı bir uygulama adımı olmadan.
Page.RedactText()Bir arama dizesi ya da RegExp öğesinin tüm oluşumlarını bulun ve hemen gizleyin.
Page.MarkRedactText()Arama dizesinin veya RegExp her bir oluşumunu bul ve işaretle (uygulamadan).
Document.ApplyRedactions()Tüm belge boyunca her /Redact işaretini uygula.
Document.Redact() / Document.RedactText()Bir sayfada bölgeleri ya da her sayfada bir arama terimini hemen gizle.
Document.MarkRedactText()Her sayfada bir arama teriminin tüm oluşumlarını işaretle.

Ayrıca Bakınız

 Türkçe