PDF附件-acdwfmarkupcore.crx错误

时间:2019-07-10 13:13:56

标签: autodesk-forge

设计自动化API-V3

我想使用Forge进行以下操作:   上传一个pdf文件   将其附加到dwg文件   使用PdfImport autocad命令转换pdf   保存并下载dwg

但是   伪造过程在附加过程中给我一个错误:

T:\ Aces \ AcesRoot \ 23.1 \ coreEngine \ Exe \ acdwfmarkupcore.crx找不到所需的dll或其他文件。

可以正确上传pdf文件并正确找到

问题似乎在附加过程中 该附件是我们的纯api产品之一,可手动创建PdfDefinition和pdfReference

下一个问题:是否可以链接PdfImport Autocad命令??

预先感谢

吕克

    public static void SampleAttach(string fileName, Database database, Transaction transaction)
    {
        DBDictionary nod = (DBDictionary)transaction.GetObject(database.NamedObjectsDictionaryId, OpenMode.ForWrite);
        string defDictKey = UnderlayDefinition.GetDictionaryKey(typeof(PdfDefinition));

        if (!nod.Contains(defDictKey))
        {
            using (DBDictionary dict = new DBDictionary())
            {
                nod.SetAt(defDictKey, dict);
                transaction.AddNewlyCreatedDBObject(dict, true);
            }
        }
        DBDictionary pdfDict = (DBDictionary)transaction.GetObject(nod.GetAt(defDictKey), OpenMode.ForWrite);
        BlockTable bt = (BlockTable)transaction.GetObject(database.BlockTableId, OpenMode.ForRead);
        BlockTableRecord btr = (BlockTableRecord)transaction.GetObject(bt[BlockTableRecord.ModelSpace], OpenMode.ForWrite);

        ObjectId idPdfDef;
        using (PdfDefinition pdfDef = new PdfDefinition())
        {
            pdfDef.SourceFileName = fileName;
            pdfDef.ItemName = "1";
            if (pdfDef.Loaded)
            {
                idPdfDef = pdfDict.SetAt(string.Format(@"{0} - {1}", Path.GetFileNameWithoutExtension(fileName).ToRestrictiveName(), pdfDef.ItemName), pdfDef);
                transaction.AddNewlyCreatedDBObject(pdfDef, true);
                using (PdfReference pdf = new PdfReference())
                {
                    pdf.DefinitionId = idPdfDef;
                    pdf.Rotation = 0;
                    pdf.Position = new Point3d(0, 0, 0.0);
                    btr.AppendEntity(pdf);
                    transaction.AddNewlyCreatedDBObject(pdf, true);
                }
            }
        }
    }

1 个答案:

答案 0 :(得分:0)

很抱歉,Forge Design Automation不支持PDFIMPORT命令。 由于各种许可限制。