2017-06-20 18 views
1

私はitextsharpを使用しています。私がしたいのは、Pdfにある領域の不透明なオーバーレイを作成することだけです。私がこれまでに持っていたコードは青い四角形を作成しますが、私は下のすべてを見ることができます。私はそれが下にあるものを隠すことを望む。コードは次のとおりです。itextsharpを使用してPdf上に領域の不透明なオーバーレイを作成するにはどうすればよいですか?

var cb = writer.DirectContent; 
cb.SetColorStroke(BaseColor.BLUE); 
cb.Rectangle(10, 10, 560, 350); 
cb.FillStroke(); 
+1

コンテンツを追加する順序によって異なる内容が含まれます。最初にコンテンツを追加してから矩形を追加すると、その矩形がコンテンツをカバーします。最初に矩形を追加してからコンテンツを追加すると、コンテンツはコンテンツをカバーします。 –

+1

コンテンツをカバーしても、コンテンツは常に存在することに注意してください。人々は常に矩形の下のテキストをコピー/ペーストすることができます。それを避けたい場合は、修正作業を適用する必要があります(修正作業が必要な場合は、iText 7に切り替えることができます)。 –

+0

ああ、何かを試してみましょう – CarneyCode

答えて

1

@BrunoLowagieのおかげで、自分の質問に答えました。単純に、塗りつぶしロジックを最後に置くと、他のオーバーレイなどがその領域を不透明にした後:

cb.SetColorFill(BaseColor.WHITE); 
cb.Rectangle(filledOverlay.X, filledOverlay.Y, filledOverlay.Width, filledOverlay.Height); 
cb.Fill(); 
関連する問題