2016-09-28 14 views
0

私はitextsharpを使用してpdfを作成するテキストを書いています。最初に私はpdfdocumentを作成してからページを追加し、次にテキストフォントを書きます。光沢があり、同じテキストがpdfのx、yの場所にもう一度書き込むと、より軽くなります。それはとても奇妙です。しかし、それは起こっている。あなたはPDFを提供しないと、あなたも私は希望、あなたに正確な答えを与えることはほとんど不可能になり、コードの正確なコピーを共有しますが、経験に基づいていなかったenter image description herePDF Writing Textが軽くなるItextSharp

`Dim PdfDoc As New Document(New iTextSharp.text.Rectangle(640.08F, 881.28F))  
Dim pdfWrtr As PdfWriter = PdfWriter.GetInstance(PdfDoc, New FileStream(_FolderPath & "\" & "TST" & ".pdf", FileMode.Create) 
PdfDoc.Open()                
PdfDoc.NewPage() 
Dim cb As PdfContentByte = pdfWrtr.DirectContent 
Dim bf As BaseFont = Nothing 
bf = BaseFont.CreateFont(Application.StartupPath & "\OcrB.ttf", BaseFont.CP1252, BaseFont.EMBEDDED)  
cb.SetFontAndSize(bf, 16)    
cb.BeginText()   
cb.ShowTextAligned(0, ("MMMMMMMMMMMMMMMMMMMXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"), 85, 850,0) 
cb.EndText() 


bf = BaseFont.CreateFont(Application.StartupPath & "\OcrB.ttf", BaseFont.CP1252, BaseFont.EMBEDDED)  
cb.SetFontAndSize(bf, 16)  
cb.BeginText()  
cb.ShowTextAligned(0, ("MMMMMMMMMMMMMMMMMMMXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"), 85, 800,0)      
cb.EndText()   
PdfDoc.Close()  
+0

「cb」の宣言が2つ異なる理由は分かりません。一方はpdfDoc.DirectContent、もう1つはpsDoc.DirectContentです。コード内でpsDocを見つけることができません。 –

+0

編集完了。投稿番号: –

+1

サンプルコードはまだ動作しません。 'DirectContent'は' Document'のメソッドではなく、 'PdfWriter'のメソッドです。 'SetFontAndSize'、' BeginText'、 'ShowTextAligned'はPdfContentByteのためのメソッドです。スタンドアロンメソッドではありません。問題を再現するサンプルコードを投稿してみてください。しかし、サンプルコードが既に壊れている場合は、私ができることはあまりありません。 –

答えて

0

をサポートしてくださいカラーブレンドに関連する問題があると言います。

を増やしてみてください

pdfWrtr.RgbTransparencyBlending = true; 

PDFのデフォルトのブレンドの色空間がCMYKで、画面内で、印刷中に色あせた色になります。カラーブレンドをRGBカラーに変更すると、この効果が回避されます。

関連する問題