Skip to content
Merged
18 changes: 15 additions & 3 deletions docs/ENGINES.md
Original file line number Diff line number Diff line change
Expand Up @@ -299,7 +299,7 @@ route they have no SVG target (PDF → SVG, for example, needs LibreOffice). The

## SVG → DXF / DWG

`Vector/SvgDxfWriter.cs` writes the drawing's outlines with ACadSharp (DXF, AutoCAD 2018 like the CAD engine; DWG is
`Vector/SvgDxfWriter.cs` writes the drawing's outlines with ACadSharp (DXF in the preset's version like the CAD engine; DWG is
DXF → DWG by the CAD engine). The SVG is loaded with Svg.Skia as for PDF output, so groups, transforms, `<use>`,
nested `<svg>`, CSS and text are resolved the same way.

Expand Down Expand Up @@ -885,8 +885,20 @@ and writes the files; Filee's own renderer draws them with SkiaSharp (one drawin
2018, ASCII and binary. DWG R13 and older fail with "version not supported". Korean AutoCAD writes pre-2007 DXF with
the code page name `ANSI_949`, which ACadSharp 3.8 does not map; Filee rewrites that header in memory so the text
is decoded as CP949 (`CadFile.OpenDxf`, covered by a test that fails once ACadSharp handles it).
- **Writing** (DWG ↔ DXF): always **AutoCAD 2018 (AC1032)** — the current DWG format (AutoCAD 2018 and later, DWG
TrueView, BricsCAD, ODA tools); 2018 DXF stores text as UTF-8. ACadSharp's DWG writer is younger than its reader
- **Writing** (DWG ↔ DXF, and DWG → DWG / DXF → DXF in another version): **AutoCAD 2018 (AC1032)** by default — the
current DWG format (AutoCAD 2018 and later, DWG TrueView, BricsCAD, ODA tools); 2018 DXF stores text as UTF-8.
A preset can choose an older version (#489, `CadOptions.Version`): 2013, 2010, 2007, 2004, 2000, or the source's
own version (older than 2000 becomes 2000). ACadSharp 3.8 can't write a 2007 DWG: chosen, it is written as 2004,
which AutoCAD 2007 opens; kept from a 2007 source, as 2010. Before 2007, text is stored in the drawing's code page
(`$DWGCODEPAGE`), so `CadCodePages` picks the one that holds the most of the drawing's text (its own on a tie;
Korean for Hangul, Japanese for Kana, Big5 before GBK for Chinese, East Asian pages only for East Asian text) and
writes any character it can't hold as `\U+XXXX` (one `?` for a character outside the BMP). Names count and are
escaped too: layers, blocks, text and dimension styles, linetypes, layouts and attribute tags, so a Korean layer in a
drawing with only English text gets `ANSI_949`. Text inside table cells (2004 and later) isn't escaped. In a DWG, the
header's code page index is ACadSharp's (`KSC5601` / `GB2312`), the DXF says `ANSI_949`; both read back the same. Korean is written as `ANSI_949`, as AutoCAD names it (ACadSharp
needs `KCS5601` to encode it, so the DXF header is renamed after writing). Objects the chosen version doesn't
have are left out with a note: tables and arc dimensions before 2004, multileaders and PDF underlays before 2007,
meshes before 2010. ACadSharp's DWG writer is younger than its reader
and its DXF writer, so DXF is the safer format to hand on. Objects ACadSharp does not model (proxy and AEC objects,
some 3D and underlay data) are not written; degenerate dimensions it cannot measure are left out of DWG output
instead of failing the file.
Expand Down
5 changes: 5 additions & 0 deletions src/Filee.App/Assets/i18n/ar.json
Original file line number Diff line number Diff line change
Expand Up @@ -107,6 +107,7 @@
"error.geo_unsupported_shape": "هذا النوع من الأشكال غير مدعوم",
"error.geo_too_large": "سيتجاوز ملف Shapefile حد الصيغة البالغ 2 غيغابايت",
"notice.pdf_not_smaller": "تعذّر تقليل الحجم، لذا نُسخ الملف كما هو",
"notice.cad_newer_left_out": "حُذفت كائنات لا يدعمها إصدار AutoCAD المختار (أسهم توضيحية متعددة، شبكات …)",
"notice.original_kept": "تم الاحتفاظ بالأصل وحُفظت النتيجة كنسخة",
"notice.original_in_trash": "الأصل في سلة المحذوفات، واحتفظت النتيجة باسمها",
"notice.original_unchanged": "تعذّر تصغيره، لذا تُرك الأصل كما هو",
Expand Down Expand Up @@ -470,6 +471,9 @@
"presets.name": "الاسم",
"presets.target": "التحويل إلى",
"presets.same_as_source": "صيغة الملف الأصلي نفسها",
"presets.cad_version": "إصدار AutoCAD",
"presets.cad_version.same": "مثل المصدر",
"presets.cad_version_hint": "تُفتح الإصدارات الأقدم في برامج AutoCAD وCAD الأقدم. قبل 2007 يُحفظ النص بصفحة الترميز التي تناسبه (الكورية، الصينية، اليابانية …) وأي حرف آخر كرمز \\U+. تُحذف الكائنات التي لا يدعمها الإصدار، مثل الأسهم التوضيحية المتعددة والشبكات. يُحفظ DWG بإصدار 2007 كإصدار 2004 الذي يفتحه AutoCAD 2007.",
"presets.group.image": "الصورة",
"presets.quality": "الجودة",
"presets.resize": "تغيير الحجم",
Expand Down Expand Up @@ -614,6 +618,7 @@
"presets.combine": "جمع كل الملفات في أرشيف واحد",
"presets.extract_note": "يُستخرج كل أرشيف إلى مجلد مستقل. يُحدَّد موقعه ضمن الإخراج.",
"presets.group.trace": "التتبّع",
"presets.group.cad": "رسم CAD",
"presets.trace_note": "يُستخدم عند تتبّع صورة (PNG أو JPG أو غيرها) إلى أشكال متجهية.",
"presets.trace_mode": "الوضع",
"presets.trace_mode.Color": "ملوّن",
Expand Down
5 changes: 5 additions & 0 deletions src/Filee.App/Assets/i18n/en.json
Original file line number Diff line number Diff line change
Expand Up @@ -113,6 +113,7 @@
"error.geo_unsupported_shape": "This kind of shape isn't supported",
"error.geo_too_large": "The Shapefile would pass the format's 2 GB limit",
"notice.pdf_not_smaller": "Couldn't make it smaller, so it was copied as it is",
"notice.cad_newer_left_out": "Objects the chosen AutoCAD version doesn't have (multileaders, meshes …) were left out",
"notice.original_kept": "The original was kept, the result was saved as a copy",
"notice.original_in_trash": "The original is in the Recycle Bin / Trash, the result kept its own name",
"notice.original_unchanged": "Couldn't make it smaller, so the original was left as it is",
Expand Down Expand Up @@ -485,6 +486,9 @@
"presets.name": "Name",
"presets.target": "Convert to",
"presets.same_as_source": "Same format as the source",
"presets.cad_version": "AutoCAD version",
"presets.cad_version.same": "Same as the source",
"presets.cad_version_hint": "Older versions open in older AutoCAD and CAD programs. Before 2007, text is saved in the code page that fits it (Korean, Chinese, Japanese …) and any other character as a \\U+ code. Objects the version doesn't have, such as multileaders and meshes, are left out. A 2007 DWG is saved as 2004, which AutoCAD 2007 opens.",
"presets.group.image": "Image",
"presets.quality": "Quality",
"presets.resize": "Resize",
Expand Down Expand Up @@ -629,6 +633,7 @@
"presets.combine": "Put all files into one archive",
"presets.extract_note": "Each archive is extracted into a folder of its own. Where it goes is set under Output.",
"presets.group.trace": "Tracing",
"presets.group.cad": "CAD drawing",
"presets.trace_note": "Used when a picture (PNG, JPG, …) is traced into vector shapes.",
"presets.trace_mode": "Mode",
"presets.trace_mode.Color": "Colour",
Expand Down
5 changes: 5 additions & 0 deletions src/Filee.App/Assets/i18n/es.json
Original file line number Diff line number Diff line change
Expand Up @@ -107,6 +107,7 @@
"error.geo_unsupported_shape": "Este tipo de forma no es compatible",
"error.geo_too_large": "El Shapefile superaría el límite de 2 GB del formato",
"notice.pdf_not_smaller": "No se pudo reducir su tamaño, por lo que se copió tal cual",
"notice.cad_newer_left_out": "Se omitieron objetos que la versión de AutoCAD elegida no tiene (directrices múltiples, mallas…)",
"notice.original_kept": "Se conservó el original, el resultado se guardó como copia",
"notice.original_in_trash": "El original está en la Papelera, el resultado conservó su propio nombre",
"notice.original_unchanged": "No se pudo hacer más pequeño, así que el original se dejó como estaba",
Expand Down Expand Up @@ -470,6 +471,9 @@
"presets.name": "Nombre",
"presets.target": "Convertir a",
"presets.same_as_source": "El mismo formato que el original",
"presets.cad_version": "Versión de AutoCAD",
"presets.cad_version.same": "Igual que el original",
"presets.cad_version_hint": "Las versiones antiguas se abren en AutoCAD y programas CAD antiguos. Antes de 2007, el texto se guarda en la página de códigos que le corresponde (coreano, chino, japonés…) y cualquier otro carácter como código \\U+. Los objetos que esa versión no tiene, como directrices múltiples y mallas, se omiten. Un DWG 2007 se guarda como 2004, que AutoCAD 2007 abre.",
"presets.group.image": "Imagen",
"presets.quality": "Calidad",
"presets.resize": "Cambiar tamaño",
Expand Down Expand Up @@ -614,6 +618,7 @@
"presets.combine": "Empaquetar todos los archivos en uno solo",
"presets.extract_note": "Cada archivo comprimido se extrae en una carpeta propia. El destino se define en Salida.",
"presets.group.trace": "Trazado",
"presets.group.cad": "Dibujo CAD",
"presets.trace_note": "Se usa cuando una imagen (PNG, JPG, …) se traza a formas vectoriales.",
"presets.trace_mode": "Modo",
"presets.trace_mode.Color": "Color",
Expand Down
5 changes: 5 additions & 0 deletions src/Filee.App/Assets/i18n/fr.json
Original file line number Diff line number Diff line change
Expand Up @@ -113,6 +113,7 @@
"error.geo_unsupported_shape": "Ce type de forme n'est pas pris en charge",
"error.geo_too_large": "Le Shapefile dépasserait la limite de 2 Go du format",
"notice.pdf_not_smaller": "Impossible de réduire sa taille : le fichier a été copié tel quel",
"notice.cad_newer_left_out": "Des objets que la version d'AutoCAD choisie n'a pas (multilignes de repère, maillages…) ont été omis",
"notice.original_kept": "L'original a été conservé, le résultat a été enregistré en copie",
"notice.original_in_trash": "L'original est dans la Corbeille, le résultat a gardé son propre nom",
"notice.original_unchanged": "Impossible de le rendre plus petit : l'original a été laissé tel quel",
Expand Down Expand Up @@ -485,6 +486,9 @@
"presets.name": "Nom",
"presets.target": "Convertir en",
"presets.same_as_source": "Même format que l'original",
"presets.cad_version": "Version d'AutoCAD",
"presets.cad_version.same": "Comme l'original",
"presets.cad_version_hint": "Les versions anciennes s'ouvrent dans les anciens AutoCAD et logiciels de CAO. Avant 2007, le texte est enregistré dans la page de codes qui lui convient (coréen, chinois, japonais…) et tout autre caractère sous forme de code \\U+. Les objets que la version n'a pas, comme les multilignes de repère et les maillages, sont omis. Un DWG 2007 est enregistré en 2004, qu'AutoCAD 2007 ouvre.",
"presets.group.image": "Image",
"presets.quality": "Qualité",
"presets.resize": "Redimensionner",
Expand Down Expand Up @@ -629,6 +633,7 @@
"presets.combine": "Réunir tous les fichiers dans une seule archive",
"presets.extract_note": "Chaque archive est extraite dans son propre dossier. Son emplacement se règle dans Sortie.",
"presets.group.trace": "Vectorisation",
"presets.group.cad": "Dessin CAO",
"presets.trace_note": "Utilisé quand une image (PNG, JPG, …) est vectorisée en formes vectorielles.",
"presets.trace_mode": "Mode",
"presets.trace_mode.Color": "Couleur",
Expand Down
5 changes: 5 additions & 0 deletions src/Filee.App/Assets/i18n/hi.json
Original file line number Diff line number Diff line change
Expand Up @@ -107,6 +107,7 @@
"error.geo_unsupported_shape": "इस तरह का आकार समर्थित नहीं है",
"error.geo_too_large": "Shapefile फ़ॉर्मैट की 2 GB सीमा से बड़ी हो जाएगी",
"notice.pdf_not_smaller": "इसे छोटा नहीं किया जा सका, इसलिए जैसा है वैसा ही कॉपी कर दिया गया",
"notice.cad_newer_left_out": "चुने गए AutoCAD संस्करण में न होने वाले ऑब्जेक्ट (मल्टीलीडर, मेश …) छोड़ दिए गए",
"notice.original_kept": "मूल फ़ाइल रखी गई, परिणाम कॉपी के रूप में सहेजा गया",
"notice.original_in_trash": "मूल फ़ाइल रीसायकल बिन / ट्रैश में है, परिणाम ने अपना नाम रखा",
"notice.original_unchanged": "इसे छोटा नहीं किया जा सका, इसलिए मूल फ़ाइल जैसी थी वैसी छोड़ दी गई",
Expand Down Expand Up @@ -470,6 +471,9 @@
"presets.name": "नाम",
"presets.target": "इसमें कन्वर्ट करें",
"presets.same_as_source": "स्रोत जैसा ही फ़ॉर्मैट",
"presets.cad_version": "AutoCAD संस्करण",
"presets.cad_version.same": "स्रोत जैसा",
"presets.cad_version_hint": "पुराने संस्करण पुराने AutoCAD और CAD प्रोग्राम में खुलते हैं। 2007 से पहले, टेक्स्ट उसके अनुकूल कोड पेज (कोरियाई, चीनी, जापानी …) में सेव होता है और बाकी हर अक्षर \\U+ कोड के रूप में। जो ऑब्जेक्ट उस संस्करण में नहीं होते, जैसे मल्टीलीडर और मेश, छोड़ दिए जाते हैं। 2007 DWG को 2004 के रूप में सेव किया जाता है, जिसे AutoCAD 2007 खोलता है।",
"presets.group.image": "इमेज",
"presets.quality": "क्वालिटी",
"presets.resize": "आकार बदलें",
Expand Down Expand Up @@ -614,6 +618,7 @@
"presets.combine": "सभी फ़ाइलों को एक आर्काइव में रखें",
"presets.extract_note": "हर आर्काइव अपने अलग फ़ोल्डर में निकाला जाता है। वह कहाँ जाएगा यह आउटपुट में तय होता है।",
"presets.group.trace": "ट्रेसिंग",
"presets.group.cad": "CAD ड्रॉइंग",
"presets.trace_note": "तब इस्तेमाल होता है जब किसी तस्वीर (PNG, JPG, …) को वेक्टर आकृतियों में ट्रेस किया जाता है।",
"presets.trace_mode": "मोड",
"presets.trace_mode.Color": "रंगीन",
Expand Down
5 changes: 5 additions & 0 deletions src/Filee.App/Assets/i18n/ja.json
Original file line number Diff line number Diff line change
Expand Up @@ -107,6 +107,7 @@
"error.geo_unsupported_shape": "この種類の図形には対応していません",
"error.geo_too_large": "Shapefile形式の上限(2 GB)を超えてしまいます",
"notice.pdf_not_smaller": "サイズを小さくできなかったため、元のままコピーしました",
"notice.cad_newer_left_out": "選んだ AutoCAD のバージョンにないオブジェクト(マルチ引出線、メッシュ …)を省きました",
"notice.original_kept": "元のファイルを残し、結果をコピーとして保存しました",
"notice.original_in_trash": "元のファイルはごみ箱にあります。結果は別の名前のままです",
"notice.original_unchanged": "小さくできなかったため、元のファイルはそのままにしました",
Expand Down Expand Up @@ -470,6 +471,9 @@
"presets.name": "名前",
"presets.target": "変換先",
"presets.same_as_source": "元ファイルと同じ形式",
"presets.cad_version": "AutoCAD のバージョン",
"presets.cad_version.same": "元のファイルと同じ",
"presets.cad_version_hint": "古いバージョンは古い AutoCAD や CAD ソフトで開けます。2007 より前は、テキストを内容に合ったコードページ(韓国語、中国語、日本語 …)で保存し、それ以外の文字は \\U+ コードで保存します。そのバージョンにないオブジェクト(マルチ引出線、メッシュなど)は省きます。2007 の DWG は AutoCAD 2007 で開ける 2004 として保存します。",
"presets.group.image": "画像",
"presets.quality": "品質",
"presets.resize": "サイズ変更",
Expand Down Expand Up @@ -614,6 +618,7 @@
"presets.combine": "すべてのファイルを1つのアーカイブにまとめる",
"presets.extract_note": "各アーカイブは個別のフォルダーに展開されます。展開先は「出力」で設定できます。",
"presets.group.trace": "トレース",
"presets.group.cad": "CAD 図面",
"presets.trace_note": "画像(PNG、JPGなど)をベクター図形にトレースするときに使います。",
"presets.trace_mode": "モード",
"presets.trace_mode.Color": "カラー",
Expand Down
5 changes: 5 additions & 0 deletions src/Filee.App/Assets/i18n/ko.json
Original file line number Diff line number Diff line change
Expand Up @@ -113,6 +113,7 @@
"error.geo_unsupported_shape": "지원하지 않는 도형 종류예요",
"error.geo_too_large": "Shapefile의 한계인 2GB를 넘어요",
"notice.pdf_not_smaller": "더 작게 만들 수 없어서 그대로 복사했어요",
"notice.cad_newer_left_out": "선택한 AutoCAD 버전에 없는 개체(다중 지시선, 메시 …)는 빼고 저장했어요",
"notice.original_kept": "원본은 그대로 두고 결과를 사본으로 저장했어요",
"notice.original_in_trash": "원본은 휴지통으로 옮겼고, 결과는 저장된 이름 그대로예요",
"notice.original_unchanged": "더 작게 만들지 못해서 원본을 그대로 두었어요",
Expand Down Expand Up @@ -485,6 +486,9 @@
"presets.name": "이름",
"presets.target": "변환 형식",
"presets.same_as_source": "원본과 같은 형식",
"presets.cad_version": "AutoCAD 버전",
"presets.cad_version.same": "원본과 같게",
"presets.cad_version_hint": "이전 버전은 이전 AutoCAD와 CAD 프로그램에서 열려요. 2007 이전 버전은 텍스트를 내용에 맞는 코드 페이지(한국어, 중국어, 일본어 …)로 저장하고, 그 밖의 문자는 \\U+ 코드로 저장해요. 그 버전에 없는 개체(다중 지시선, 메시 등)는 빠져요. 2007 DWG는 AutoCAD 2007에서 열리는 2004로 저장해요.",
"presets.group.image": "이미지",
"presets.quality": "품질",
"presets.resize": "크기 조정",
Expand Down Expand Up @@ -629,6 +633,7 @@
"presets.combine": "모든 파일을 압축 파일 하나로 묶기",
"presets.extract_note": "압축 파일마다 따로 폴더를 만들어 풀어요. 저장 위치는 아래 출력에서 정해요.",
"presets.group.trace": "벡터화",
"presets.group.cad": "CAD 도면",
"presets.trace_note": "그림(PNG, JPG 등)을 벡터 도형으로 바꿀 때 쓰여요.",
"presets.trace_mode": "방식",
"presets.trace_mode.Color": "컬러",
Expand Down
Loading
Loading