Пожалуйста, дайте мне знать скрипт для применения ctb при конвертации файла DWG в PDF - PullRequest
0 голосов
/ 16 апреля 2019

Я хочу применить ctb при создании действий и преобразовании файлов DWG в PDF с использованием API автоматизации проектирования.

В операции PlotToPDF сценарий был следующим:

"Instruction": {
    "CommandLineParameters": "-suppressGraphics",
    "Script": "_layoutcreateviewport 1 _tilemode 0 -export _pdf _all result.pdf\n"
}

Если вы хотите применить файл CTB и преобразовать его в PDF, сценарий «Как мне писать?»

Autodesk Design Automation API определяет параметры печати, например, оттенки серого / ширина линии

Я попробовал сценарий, написанный здесь, но получил ошибку.

[04/19/2019 00:40:15] Command: -PLOT Detailed plot configuration? [Yes/No] <No>: Y 
[04/19/2019 00:40:15] Enter a layout name or [?] <レイアウト1>: Enter an output device name or [?] <なし>: AutoCAD PDF (General Documentation).pc3 Y myCTB.ctb 
[04/19/2019 00:40:15] <AutoCAD PDF (General Documentation).pc3 Y myCTB.ctb > not found. 
[04/19/2019 00:41:15] Error: AutoCAD Core Console is shut down due to timeout. 
[04/19/2019 00:41:15] End script phase. [04/19/2019 00:41:15] Error: An unexpected error happened during phase CoreEngineExecution of job.

Я настроил команду следующим образом.
-PLOT Y AutoCAD PDF (General Documentation).pc3\n\n\n Y\n\n\n\nY myCTB.ctb\n

В результате возникла ошибка.

[04/19/2019 01:09:45] Command: -PLOT Detailed plot configuration? [Yes/No] <No>: Y 
[04/19/2019 01:09:45] Enter a layout name or [?] <レイアウト1>: Enter an output device name or [?] <なし>: AutoCAD PDF (General Documentation).pc3 
[04/19/2019 01:09:45] Enter paper size or [?] <ANSI A (11.00 x 8.50 Inches)>: 
[04/19/2019 01:09:45] Enter paper units [Inches/Millimeters] <Millimeters>: 
[04/19/2019 01:09:45] Enter drawing orientation [Portrait/Landscape] <Portrait>: Plot upside down? [Yes/No] <No>: Y 
[04/19/2019 01:09:45] Enter plot area [Display/Extents/Layout/View/Window] <Layout>:
[04/19/2019 01:09:45] Enter plot scale (Plotted Millimeters=Drawing Units) or [Fit] <1:1>: 
[04/19/2019 01:09:45] Enter plot offset (x,y) <0.00,0.00>: 
[04/19/2019 01:09:45] Plot with plot styles? [Yes/No] <No>: Y Enter plot style table name or [?] (enter . for none) <>: myCTB.ctb 
[04/19/2019 01:10:46] Error: AutoCAD Core Console is shut down due to timeout. [04/19/2019 01:10:47] End script phase. 
[04/19/2019 01:10:47] Error: An unexpected error happened during phase CoreEngineExecution of job. 

Ответы [ 3 ]

0 голосов
/ 17 апреля 2019

Вы также можете поместить загрузку CTB в качестве ссылки на входной аргумент вашего чертежа хоста. Ваш рабочий элемент будет выглядеть так:

{
    "activityId": "AutoCAD.PlotToPDF+prod",
    "arguments": {
        "HostDwg": {
            "url": "<download url to host drawing>",
            "headers": null,
            "references": [
                {
                    "localName": "myCTB.ctb",
                    "references": null,
                    "verb": "get",
                    "url": "<download url to ctb>"
                }
            ],
            "verb": "get"
        },
        "Result": {
            "headers": null,
            "url": "<upload url for result.pdf>",
            "verb": "put"
        }
    }
}
0 голосов
/ 17 апреля 2019

Вот пример для v2:

{
  "ActivityId": "PlotToPDF",
  "Arguments": {
    "InputArguments": [
      {
        "Resource": "{\"UserId\":null,\"Version\":0,\"Resource\":\"http://mystore.mycom.com/download/mydwg.dwg\",\"LocalFileName\":\"myDwg.dwg\",\"RelatedFiles\":[{\"UserId\":null,\"Version\":0,\"Resource\":\"http://mystore.mycom.com/download/myCTB.ctb\",\"LocalFileName\":\"myCTB.ctb\",\"RelatedFiles\":[]}]}",
        "Name": "HostDwg",
        "ResourceKind": "RemoteFileResource"
      }
    ],
    "OutputArguments": [
      {
        "Name": "Result",
        "Resource": "http://mystore.mycom.com/path/item/abcd",
        "HttpVerb": "POST"
      }
    ]
  }
}
0 голосов
/ 16 апреля 2019

Предположим, что на вашем чертеже уже есть "Таблица стилей печати", назначенная конкретному клиентскому файлу CTB. Чтобы действие CTB вступило в силу, вам просто нужно перенести файл CTB вместе с файлом чертежа в службу Forge DA. Вы можете сделать это: 1. Создайте пакет eTransmit, который включает в себя файлы чертежей и файл CTB (или любые другие файлы поддержки, которые вы хотите, например, файлы шрифтов); 2. Укажите URL-адрес почтового файла eTransmit вместо файла чертежа хоста в качестве входного аргумента; 3. Вы все еще можете использовать действие «AutoCAD.PlotToPDF», и тогда ваш стиль печати CTB должен работать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...