K.R

Użytkownik forum
  • Postów

    8
  • Dołączył

  • Ostatnia wizyta

Treść opublikowana przez K.R

  1. VERNUM = "22.00_2021.07.07(251ad3fce2f)_x64" Rysowanie w trybie z włączonym skokiem na dużym zoomie powoduje "pływanie" kursora. Nie ma pewności co on w ogóle złapie. Może jest jakaś zmienna za to odpowiedzialna (nie aperture). W VERNUM = "2019.01.28(41803)_x64" działa normalnie.
  2. Witam! Czy istnieje możliwość uzyskania plików symboli (*.pdb) do debugowania programów w Visual Studio? Dla autocada wystarczy podać: https://symbols.autodesk.com/symbols/ w lokalizacjach plików symboli.
  3. Poniższy kod (działający w ACAD) powinien jako wyjście dać wielostronicowy plik PDF umieszczony w katalogu rysunku: using (Transaction tr = db.TransactionManager.StartTransaction()) { DsdEntryCollection collection = new DsdEntryCollection(); foreach (ObjectId layoutId in layoutList) { Layout layout = tr.GetObject(layoutId, OpenMode.ForRead) as Layout; if (!layout.LayoutName.Contains("Model") && layout.LayoutName.Contains(layoutName)) { DsdEntry entry = new DsdEntry { DwgName = doc.Name, Layout = layout.LayoutName, Title = layout.LayoutName, Nps = layout.PlotSettingsName, NpsSourceDwg = doc.Name }; collection.Add(entry); } } string pdfFile = (path == "" ? dwgPath : path) + name + ".pdf"; DsdData dsdData = new DsdData { SheetType = SheetType.MultiPdf, ProjectPath = path == "" ? dwgPath : path, DestinationName = (path == "" ? dwgPath : path) + name + ".DWG", IncludeLayerInfo = true, PromptForDwfName = false }; string dsdFile = dwgPath + name + ".dsd"; if (System.IO.File.Exists(dsdFile)) System.IO.File.Delete(dsdFile); dsdData.SetDsdEntryCollection(collection); string str, newStr; string tmpFile = Path.Combine(dwgPath, "temp.dsd"); dsdData.WriteDsd(tmpFile); using (StreamReader reader = new StreamReader(tmpFile)) using (StreamWriter writer = new StreamWriter(dsdFile)) { while (!reader.EndOfStream) { str = reader.ReadLine(); if (str.Contains("Has3DDWF")) { newStr = "Has3DDWF=0"; } else if (str.Contains("OriginalSheetPath")) { newStr = "OriginalSheetPath=" + dsdData.DestinationName; } else if (str.Contains("OUT")) { newStr = "OUT=" + dwgPath; } else if (str.Contains("IncludeLayer")) { newStr = "IncludeLayer=TRUE"; } else if (str.Contains("PromptForDwfName")) { newStr = "PromptForDwfName=FALSE"; } else if (str.Contains("LogFilePath")) { newStr = "LogFilePath=" + Path.Combine(dwgPath, "print.log"); } else { newStr = str; } writer.WriteLine(newStr); } } File.Delete(tmpFile); dsdData.ReadDsd(dsdFile); if (System.IO.File.Exists(pdfFile)) System.IO.File.Delete(pdfFile); using (PlotConfig pc = PlotConfigManager.SetCurrentConfig("DWG to PDF.pc5")) { publisher.PublishExecute(dsdData, pc); } tr.Commit(); } Przygotowany plik .dsd jest poprawny. Wykonanie metody publisher.PublishExecute(dsdData, pc); nie powoduje nic, ani błędu, ani poprawnego działania, czyli wyświetlenia okna z postępem drukowania.
  4. VERNUM = "2019.01.28(41803)_x64" Witam, czy ktoś korzystał z klasy publisher do wydruku do PDF? nie mogę w żaden sposób zmusić Zwcada do wydruku do PDF.
  5. Pewnie, że można. Ale jak mam skrypt, który mi generuje dwg z xls to muszę potem do każdego dwg wejść i przestawić atrybut w każdym bloku. W ZW Jak przestawię i zrobię ATTSYN to blok znika.... W AC LT jest ok.
  6. Miałem jakiś błąd w pliku. RECOVER poprawił błedy i ZWCAD już wstawia bloki, ale atrybuty wieloliniowe zamienia na jednoliniowe. Przykład w załączonym pliku: Bloki MCB, MCCB i RCD_MCB - atrybut DESCRIPTION3 Te, które są wstawione na rysunku zostały wstawione w Autocadzie LT 2010. ZWCad wersja "2018.03.16(29562)_x64" zamienia właściwości atrybutów. Autocad nie znajduje błędów w pliku, ZWCad znajduje. TEMPLATE2.dwg
  7. Chodzi o takie działanie skoku jak w starych Autocadach. W nowych Autocadach odpowiada za to zmienna SNAPGRIDLEGACY, której chyba nie ma w ZWCADzie.
  8. Witam, Mam problem ze wstawianiem bloków z wieloliniowym atrybutem w ZWCADzie 2018. Próba wstawienia takiego bloku kończy się dziwnym zachowaniem programu. Polecenie INSERT zostaje natychmiast przerwane i blok nie zostaje wstawiony. Identycznie sytuacja wygląda jak robię to z programu w VBA. Czy ktoś spotkał się z podobnym problemem i potrafi znaleźć rozwiązanie? Z góry dziękuję za pomoc.