PageWidth und PageHeight funktioniert bei mir nicht

Hallo,

ich wandele eine DWG Datei in ein PDF um. Dazu nutze ich folgenden Code:

 Using image As Image = Image.Load(InputFile)
  

     Dim VRO = New CadRasterizationOptions
     With VRO

         .BackgroundColor = Aspose.CAD.Color.White
         .DrawType = CadDrawTypeMode.UseObjectColor
         .AutomaticLayoutsScaling = True
         .NoScaling = False
         .UnitType = UnitType.Millimeter

         .PageWidth = 800
         .PageHeight = 600

     End With

     Dim pdfOptions As New Aspose.CAD.ImageOptions.PdfOptions
     pdfOptions.VectorRasterizationOptions = VRO

     pdfOptions.CorePdfOptions = New PdfDocumentOptions() With {
         .Compliance = PdfCompliance.Pdf15
     }

     ' Konvertierung von DXF nach PDF

     Try
         image.Save(OutputFile, pdfOptions)
     Catch ex As Exception
         retBool = False
     End Try

 End Using

ich bekomme bei meiner Besipieldatei immer eine größe von 5076,5 x 3807,3 mm raus.

Wenn ich z.B. das Format änder mit

            .PageWidth = 600
            .PageHeight = 800

habe ich ein PDF mit 3807,3 x 5764,5 mm

Ändere ich auf

            .PageWidth = 1600
            .PageHeight = 1200

habe ich auch eine PDF Größe von 5076,5 x 3807,3 mm .

Was mache ich falsch?

Danke
Gidi

@Gidi

Es scheint, dass das Problem, das Sie bei der Umwandlung Ihrer DWG-Datei in ein PDF haben, möglicherweise mit der Art und Weise zusammenhängt, wie die Rasterisierungsoptionen konfiguriert sind. Die von Ihnen festgelegten Werte für PageWidth und PageHeight in den Rasterisierungsoptionen sind für das PDF, das Sie generieren möchten, gedacht. Diese Werte beeinflussen nicht die Größe der DWG-Datei selbst, sondern wie die gesamte DWG in der angegebenen Breite und Höhe des PDFs gerendert wird.

Um sicherzustellen, dass die von Ihnen festgelegten Seitenmaße korrekt angewendet werden, sollten Sie den folgenden Code hinzufügen, direkt nachdem Sie die DWG-Datei geladen haben:

CType(image, CadImage).UpdateSize()

Dieser Befehl aktualisiert die Größe des CAD-Bildes und könnte helfen, die von Ihnen festgelegten Seitenmaße korrekt zu berücksichtigen.

Wenn das Problem weiterhin besteht, überprüfen Sie bitte auch, ob die DWG-Datei selbst möglicherweise eine andere Einheit oder Maßstab verwendet, die die Ausgabegröße beeinflussen könnte.

Hier ist ein Beispiel, wie Sie den Code anpassen könnten:

Using image As Image = Image.Load(InputFile)
    CType(image, CadImage).UpdateSize() ' Aktualisieren der Größe nach dem Laden

    Dim VRO = New CadRasterizationOptions
    With VRO
        .BackgroundColor = Aspose.CAD.Color.White
        .DrawType = CadDrawTypeMode.UseObjectColor
        .AutomaticLayoutsScaling = True
        .NoScaling = False
        .UnitType = UnitType.Millimeter
        .PageWidth = 800
        .PageHeight = 600
    End With

    Dim pdfOptions As New Aspose.CAD.ImageOptions.PdfOptions
    pdfOptions.VectorRasterizationOptions = VRO
    pdfOptions.CorePdfOptions = New PdfDocumentOptions() With {
        .Compliance = PdfCompliance.Pdf15
    }

    Try
        image.Save(OutputFile, pdfOptions)
    Catch ex As Exception
        retBool = False
    End Try
End Using

Ich hoffe, das hilft Ihnen weiter! Wenn Sie weitere Fragen haben, lassen Sie es mich wissen.

Danke, aber auch das funktioniert nicht. Meine PDF Datei hat immer noch die Abmaße von 5076,5 x 3807,3 mm.

@Gidi,
Hallo,
was ist also das gewünschte Ergebnis? Möchten Sie PDFs mit den Größen 800 x 600 und 1600 x 1200 mm erhalten?

Ich möchte die Größe habe die ich angebe, bzw soll die Größe automatisch ermittelt werden, aber so dass die Abmessungen unter z.B. 2000mm sind.

Ich habe es getestet mit

.PageWidth = image.width
.PageHeight = image.height

Da wurde die Abmessungen des PDF zu groß.

Wenn ich image.width und image.height auslese sind das 1188 x 840.

gebe ich
.PageWidth = 1188
.PageHeight = 840

an, bekomme ich eine PDF Datei mit der Abmessung von 5076,5x3589,4 mm. Das ist zu groß.

Danke

@Gidi,
Sie müssen die Konvertierung in Bezug auf die Abmessungen der Zeichnung selbst vornehmen. Bitte sehen Sie sich dieses Beispiel an: Exporting DWG/DXF drawing and layouts into specified size|Documentation

Vielen Dank! Das Beispiel hat mir geholfen!

@Gidi,
Wir haben gerne geholfen :slight_smile: