Cómo modificar la posición superior izquierda de un rectángulo iTextSharp.text.Rectangle en VB?
Estoy utilizando la biblioteca itextsharp dll en VB para generar un PDF. En el PDF, necesito aumentar el espacio entre el rectángulo y el texto. Intenté establecer los márgenes y cambiar las coordenadas del rectángulo, pero el espacio entre el rectángulo superior y el texto no se crea. Por favor, vea el archivo adjunto.
A continuación se muestra el código que estoy utilizando para generar el PDF:
Dim reader As PdfReader = New PdfReader(tempFile)
Dim size As Rectangle = reader.GetPageSize(1)
Dim AcroAVDoc As Document = New Document(iTextSharp.text.PageSize.A4.Rotate())
AcroAVDoc.SetMargins(0, 0, 0, 0)
Dim FS As FileStream = New FileStream(newFile, FileMode.Create, FileAccess.Write)
Dim writer As PdfWriter = PdfWriter.GetInstance(AcroAVDoc, FS)
AcroAVDoc.Open()
If (SaveDoc) Then
Dim cb As PdfContentByte = writer.DirectContent
Dim bf As BaseFont = BaseFont.CreateFont(BaseFont.TIMES_ROMAN, BaseFont.CP1252, BaseFont.NOT_EMBEDDED)
cb.SetColorFill(BaseColor.BLACK)
cb.SetFontAndSize(bf, 11)
cb.BeginText()
Dim text As String = "HeaderText " + TableData(HeaderText)
''colocar aquí la alineación y las coordenadas
cb.SetTextMatrix(240, 583)
cb.ShowText(text)
cb.EndText()
''crear una nueva página y agregarla al pdf
Dim Page As PdfImportedPage = writer.GetImportedPage(reader, 1)
Dim psize As Rectangle = reader.GetPageSizeWithRotation(1)
cb.AddTemplate(Page, 0, -1.0F, 1.0F, 0, 0, psize.Height)
'AcroAVDoc.Save(1, newFile)
End If
AcroAVDoc.Close()
FS.Close()
writer.Close()
reader.Close()
davy.ai
Para aumentar el espacio entre el rectángulo y el texto en su PDF generado utilizando la biblioteca iTextSharp en VB, puede probar los siguientes enfoques:
Puede intentar ajustar las coordenadas del texto estableciéndolas en relación a la esquina superior izquierda del rectángulo. Por ejemplo, puede modificar el código de la siguiente manera:
En este código, estamos agregando un desplazamiento de 10 puntos desde el borde izquierdo del rectángulo y 20 puntos desde el borde superior del rectángulo para posicionar el texto. Puede ajustar estos valores para aumentar o disminuir el espacio entre el rectángulo y el texto.
Otro enfoque es agregar margen al propio rectángulo. Puede hacer esto creando un nuevo rectángulo con dimensiones ligeramente más pequeñas y reposicionándolo. Por ejemplo:
En este código, estamos agregando un margen de 10 puntos a cada borde del rectángulo original. Luego, se reposiciona el nuevo rectángulo para mantener la posición original relativa a la página. Puede ajustar el valor del margen según sus necesidades.
Estas son algunas soluciones posibles para aumentar el espacio entre el rectángulo y el texto. Puede probarlos y ver cuál funciona mejor para sus necesidades de generación de PDF.