2010-12-17 2 views
1

Ich begann PDFSharp am Tag vor gestern mit und ich den folgenden Code ein Bild zu einer Zelle hinzuzufügen:PDFsharp Bild in Zelle überlappende auf anderen Zeilen

Section section = this.document.AddSection(); 

    Table table1 = section.Headers.Primary.AddTable(); 

    Column column = table1.AddColumn("8.5cm"); 
    column.Format.Alignment = ParagraphAlignment.Right; 

    column = table1.AddColumn("8.5cm"); 
    column.Format.Alignment = ParagraphAlignment.Right; 

    Row row = table1.AddRow();  
    Image image = row.Cells[0].Elements.AddImage(@"C:\testdump\logo.jpg"); 
    image.LockAspectRatio = true; 
    image.RelativeVertical = RelativeVertical.Line; 
    image.RelativeHorizontal = RelativeHorizontal.Margin; 
    image.Top = ShapePosition.Top; 
    image.Left = ShapePosition.Left; 
    image.WrapFormat.Style = WrapStyle.None; 

ich eine andere Tabelle nach diesem hinzugefügt:

Table table2 = section.AddTable(); 

Das Bild in der Zelle überlappt mit table2. Wer weiß, warum das passiert?

Antwort

0

Scheint wie das Hinzufügen einer "leeren" Zeile zur zweiten Tabelle das Problem gelöst. Nicht sicher, wie das die Überlappung löst.

0

AFAIK der Linie

image.WrapFormat.Style = WrapStyle.None; 

erzeugt ein frei schwebendes Bild. Das Bild erhält seine Position von der Zelle, hat jedoch keinen Einfluss auf das Layout der Tabelle.

Verwenden Sie WrapStyle.None, wenn Sie das Bild mit Text oder anderen Elementen überlappen möchten.