C# CAD环境下DWG转PDF 使用命令

时间:2024-02-20 22:10:56

CAD环境下DWG转PDF

 

  Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click

        Dim f As FileInfo = New FileInfo("E:\j9-FwfeplGMIpixSqiD9d.dxf")
        Dim f1 As FileInfo = New FileInfo("E:\[3500×0×2][数量10](1).dxf")
        \'Dim f2 As FileInfo = New FileInfo("E:\j9-FwfeplGMIpixSqiD9d.dxf")
        \'Dim f3 As FileInfo = New FileInfo("E:\j9-FwfeplGMIpixSqiD9d.dxf")

        Dim list = New List(Of FileInfo)()
        list.Add(f)
        list.Add(f1)
        Dwg2Pdf(list)


    End Sub
Public Shared Sub Dwg2Pdf(ByVal files As List(Of FileInfo))

        Dim doc As AcadDocument = Nothing
        Dim destPath As String = String.Empty
        \'InitializationApp()

        Dim activeDoc As Document = Application.DocumentManager.MdiActiveDocument
        \'Dim ThisDrawing As AcadDocument = CType(activeDoc.AcadDocument, AcadDocument)



        Try

            For Each f In files
                \'doc = _app.Documents.Open(f.FullName, True)
                doc = Application.DocumentManager.Open(f.FullName, True).AcadDocument
                \'doc = ThisDrawing.Open(f.FullName, True)
                \'ThisDrawing.LoadShapeFile(f.FullName)

                \'doc = ThisDrawing

                doc.SetVariable("sdi", 0)
                doc.SetVariable("Filedia", 0)
                doc.SetVariable("RASTERPREVIEW", 1)
                doc.SetVariable("BACKGROUNDPLOT", 0)
                doc.ActiveLayout.ConfigName = "DWG To PDF.pc3"
                doc.ActiveLayout.UseStandardScale = True
                doc.ActiveLayout.StandardScale = AcPlotScale.acScaleToFit
                doc.ActiveLayout.PlotType = AcPlotType.acExtents
                doc.ActiveLayout.CenterPlot = True
                doc.ActiveLayout.PlotRotation = AcPlotRotation.ac0degrees
                doc.ActiveLayout.PlotType = Autodesk.AutoCAD.Interop.Common.AcPlotType.acExtents
                doc.Plot.QuietErrorMode = True
                destPath = Path.Combine(f.Directory.FullName, Path.GetFileNameWithoutExtension(f.Name) & ".pdf")
                doc.Plot.PlotToFile(destPath)
                If doc IsNot Nothing Then doc.Close(False)
            Next

        Catch e As System.Exception
            Throw e
        Finally

            Try
                doc.Close(False)
                _app.Quit()
            Catch
            End Try
        End Try
    End Sub

  

源码地址 :https://download.csdn.net/download/bosslizhiyong/12414134